22720 lines
1.3 MiB
22720 lines
1.3 MiB
ARM GAS /tmp/ccH7dUYB.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 "ff.c"
|
||
15 .text
|
||
16 .Ltext0:
|
||
17 .cfi_sections .debug_frame
|
||
18 .file 1 "Middlewares/Third_Party/FatFs/src/ff.c"
|
||
19 .section .text.ld_word,"ax",%progbits
|
||
20 .align 1
|
||
21 .syntax unified
|
||
22 .thumb
|
||
23 .thumb_func
|
||
25 ld_word:
|
||
26 .LVL0:
|
||
27 .LFB1183:
|
||
1:Middlewares/Third_Party/FatFs/src/ff.c **** /*----------------------------------------------------------------------------/
|
||
2:Middlewares/Third_Party/FatFs/src/ff.c **** / FatFs - Generic FAT file system module R0.12c /
|
||
3:Middlewares/Third_Party/FatFs/src/ff.c **** /-----------------------------------------------------------------------------/
|
||
4:Middlewares/Third_Party/FatFs/src/ff.c **** /
|
||
5:Middlewares/Third_Party/FatFs/src/ff.c **** / Copyright (C) 2017, ChaN, all right reserved.
|
||
6:Middlewares/Third_Party/FatFs/src/ff.c **** /
|
||
7:Middlewares/Third_Party/FatFs/src/ff.c **** / FatFs module is an open source software. Redistribution and use of FatFs in
|
||
8:Middlewares/Third_Party/FatFs/src/ff.c **** / source and binary forms, with or without modification, are permitted provided
|
||
9:Middlewares/Third_Party/FatFs/src/ff.c **** / that the following condition is met:
|
||
10:Middlewares/Third_Party/FatFs/src/ff.c **** /
|
||
11:Middlewares/Third_Party/FatFs/src/ff.c **** / 1. Redistributions of source code must retain the above copyright notice,
|
||
12:Middlewares/Third_Party/FatFs/src/ff.c **** / this condition and the following disclaimer.
|
||
13:Middlewares/Third_Party/FatFs/src/ff.c **** /
|
||
14:Middlewares/Third_Party/FatFs/src/ff.c **** / This software is provided by the copyright holder and contributors "AS IS"
|
||
15:Middlewares/Third_Party/FatFs/src/ff.c **** / and any warranties related to this software are DISCLAIMED.
|
||
16:Middlewares/Third_Party/FatFs/src/ff.c **** / The copyright owner or contributors be NOT LIABLE for any damages caused
|
||
17:Middlewares/Third_Party/FatFs/src/ff.c **** / by use of this software.
|
||
18:Middlewares/Third_Party/FatFs/src/ff.c **** /----------------------------------------------------------------------------*/
|
||
19:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
20:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
21:Middlewares/Third_Party/FatFs/src/ff.c **** #include "ff.h" /* Declarations of FatFs API */
|
||
22:Middlewares/Third_Party/FatFs/src/ff.c **** #include "diskio.h" /* Declarations of device I/O functions */
|
||
23:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
24:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
25:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------------------------------------------
|
||
26:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
27:Middlewares/Third_Party/FatFs/src/ff.c **** Module Private Definitions
|
||
28:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
29:Middlewares/Third_Party/FatFs/src/ff.c **** ---------------------------------------------------------------------------*/
|
||
30:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
31:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FATFS != 68300 /* Revision ID */
|
||
ARM GAS /tmp/ccH7dUYB.s page 2
|
||
|
||
|
||
32:Middlewares/Third_Party/FatFs/src/ff.c **** #error Wrong include file (ff.h).
|
||
33:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
34:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
35:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
36:Middlewares/Third_Party/FatFs/src/ff.c **** /* DBCS code ranges and SBCS upper conversion tables */
|
||
37:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
38:Middlewares/Third_Party/FatFs/src/ff.c **** #if _CODE_PAGE == 932 /* Japanese Shift-JIS */
|
||
39:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0x81 /* DBC 1st byte range 1 start */
|
||
40:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1E 0x9F /* DBC 1st byte range 1 end */
|
||
41:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF2S 0xE0 /* DBC 1st byte range 2 start */
|
||
42:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF2E 0xFC /* DBC 1st byte range 2 end */
|
||
43:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1S 0x40 /* DBC 2nd byte range 1 start */
|
||
44:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1E 0x7E /* DBC 2nd byte range 1 end */
|
||
45:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2S 0x80 /* DBC 2nd byte range 2 start */
|
||
46:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2E 0xFC /* DBC 2nd byte range 2 end */
|
||
47:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
48:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 936 /* Simplified Chinese GBK */
|
||
49:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0x81
|
||
50:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1E 0xFE
|
||
51:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1S 0x40
|
||
52:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1E 0x7E
|
||
53:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2S 0x80
|
||
54:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2E 0xFE
|
||
55:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
56:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 949 /* Korean */
|
||
57:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0x81
|
||
58:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1E 0xFE
|
||
59:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1S 0x41
|
||
60:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1E 0x5A
|
||
61:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2S 0x61
|
||
62:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2E 0x7A
|
||
63:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS3S 0x81
|
||
64:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS3E 0xFE
|
||
65:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
66:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 950 /* Traditional Chinese Big5 */
|
||
67:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0x81
|
||
68:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1E 0xFE
|
||
69:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1S 0x40
|
||
70:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS1E 0x7E
|
||
71:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2S 0xA1
|
||
72:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DS2E 0xFE
|
||
73:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
74:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 437 /* U.S. */
|
||
75:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
76:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x45,0x41,0x8E,0x41,0x8F,0x80,0x45,0x45,0x45,0x49,0x49,0x49,0x8E,0x8F, \
|
||
77:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0x4F,0x99,0x4F,0x55,0x55,0x59,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
78:Middlewares/Third_Party/FatFs/src/ff.c **** 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
79:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
80:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
81:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
82:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
83:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
84:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
85:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 720 /* Arabic */
|
||
86:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
87:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
88:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
ARM GAS /tmp/ccH7dUYB.s page 3
|
||
|
||
|
||
89:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
90:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
91:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
92:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
93:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
94:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
95:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
96:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 737 /* Greek */
|
||
97:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
98:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
99:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0x93,0x94,0x95,0x96,0x97,0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87, \
|
||
100:Middlewares/Third_Party/FatFs/src/ff.c **** 0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0xAA,0x92,0x93,0x94,0x95,0x96, \
|
||
101:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
102:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
103:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
104:Middlewares/Third_Party/FatFs/src/ff.c **** 0x97,0xEA,0xEB,0xEC,0xE4,0xED,0xEE,0xEF,0xF5,0xF0,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
105:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
106:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
107:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 771 /* KBL */
|
||
108:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
109:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
110:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
111:Middlewares/Third_Party/FatFs/src/ff.c **** 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
112:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
113:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
114:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDC,0xDE,0xDE, \
|
||
115:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
116:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF0,0xF2,0xF2,0xF4,0xF4,0xF6,0xF6,0xF8,0xF8,0xFA,0xFA,0xFC,0xFC,0xFE,0xFF}
|
||
117:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
118:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 775 /* Baltic */
|
||
119:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
120:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x91,0xA0,0x8E,0x95,0x8F,0x80,0xAD,0xED,0x8A,0x8A,0xA1,0x8D,0x8E,0x8F, \
|
||
121:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0xE2,0x99,0x95,0x96,0x97,0x97,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9F, \
|
||
122:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA0,0xA1,0xE0,0xA3,0xA3,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
123:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
124:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
125:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB5,0xB6,0xB7,0xB8,0xBD,0xBE,0xC6,0xC7,0xA5,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
126:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE5,0xE5,0xE6,0xE3,0xE8,0xE8,0xEA,0xEA,0xEE,0xED,0xEE,0xEF, \
|
||
127:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
128:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
129:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 850 /* Latin 1 */
|
||
130:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
131:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x43,0x55,0x45,0x41,0x41,0x41,0x41,0x43,0x45,0x45,0x45,0x49,0x49,0x49,0x41,0x41, \
|
||
132:Middlewares/Third_Party/FatFs/src/ff.c **** 0x45,0x92,0x92,0x4F,0x4F,0x4F,0x55,0x55,0x59,0x4F,0x55,0x4F,0x9C,0x4F,0x9E,0x9F, \
|
||
133:Middlewares/Third_Party/FatFs/src/ff.c **** 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
134:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0x41,0x41,0x41,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
135:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0x41,0x41,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
136:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD1,0xD1,0x45,0x45,0x45,0x49,0x49,0x49,0x49,0xD9,0xDA,0xDB,0xDC,0xDD,0x49,0xDF, \
|
||
137:Middlewares/Third_Party/FatFs/src/ff.c **** 0x4F,0xE1,0x4F,0x4F,0x4F,0x4F,0xE6,0xE8,0xE8,0x55,0x55,0x55,0x59,0x59,0xEE,0xEF, \
|
||
138:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
139:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
140:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 852 /* Latin 2 */
|
||
141:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
142:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x90,0xB6,0x8E,0xDE,0x8F,0x80,0x9D,0xD3,0x8A,0x8A,0xD7,0x8D,0x8E,0x8F, \
|
||
143:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x91,0xE2,0x99,0x95,0x95,0x97,0x97,0x99,0x9A,0x9B,0x9B,0x9D,0x9E,0xAC, \
|
||
144:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB5,0xD6,0xE0,0xE9,0xA4,0xA4,0xA6,0xA6,0xA8,0xA8,0xAA,0x8D,0xAC,0xB8,0xAE,0xAF, \
|
||
145:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBD,0xBF, \
|
||
ARM GAS /tmp/ccH7dUYB.s page 4
|
||
|
||
|
||
146:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC6,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
147:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD1,0xD1,0xD2,0xD3,0xD2,0xD5,0xD6,0xD7,0xB7,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
148:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE3,0xD5,0xE6,0xE6,0xE8,0xE9,0xE8,0xEB,0xED,0xED,0xDD,0xEF, \
|
||
149:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xEB,0xFC,0xFC,0xFE,0xFF}
|
||
150:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
151:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 855 /* Cyrillic */
|
||
152:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
153:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x81,0x81,0x83,0x83,0x85,0x85,0x87,0x87,0x89,0x89,0x8B,0x8B,0x8D,0x8D,0x8F,0x8F, \
|
||
154:Middlewares/Third_Party/FatFs/src/ff.c **** 0x91,0x91,0x93,0x93,0x95,0x95,0x97,0x97,0x99,0x99,0x9B,0x9B,0x9D,0x9D,0x9F,0x9F, \
|
||
155:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA1,0xA1,0xA3,0xA3,0xA5,0xA5,0xA7,0xA7,0xA9,0xA9,0xAB,0xAB,0xAD,0xAD,0xAE,0xAF, \
|
||
156:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB6,0xB6,0xB8,0xB8,0xB9,0xBA,0xBB,0xBC,0xBE,0xBE,0xBF, \
|
||
157:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC7,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
158:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD1,0xD1,0xD3,0xD3,0xD5,0xD5,0xD7,0xD7,0xDD,0xD9,0xDA,0xDB,0xDC,0xDD,0xE0,0xDF, \
|
||
159:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE2,0xE2,0xE4,0xE4,0xE6,0xE6,0xE8,0xE8,0xEA,0xEA,0xEC,0xEC,0xEE,0xEE,0xEF, \
|
||
160:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF2,0xF2,0xF4,0xF4,0xF6,0xF6,0xF8,0xF8,0xFA,0xFA,0xFC,0xFC,0xFD,0xFE,0xFF}
|
||
161:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
162:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 857 /* Turkish */
|
||
163:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
164:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x90,0xB6,0x8E,0xB7,0x8F,0x80,0xD2,0xD3,0xD4,0xD8,0xD7,0x49,0x8E,0x8F, \
|
||
165:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0xE2,0x99,0xE3,0xEA,0xEB,0x98,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9E, \
|
||
166:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB5,0xD6,0xE0,0xE9,0xA5,0xA5,0xA6,0xA6,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
167:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
168:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC7,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
169:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0x49,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
170:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE5,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xDE,0xED,0xEE,0xEF, \
|
||
171:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
172:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
173:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 860 /* Portuguese */
|
||
174:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
175:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x90,0x8F,0x8E,0x91,0x86,0x80,0x89,0x89,0x92,0x8B,0x8C,0x98,0x8E,0x8F, \
|
||
176:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x8C,0x99,0xA9,0x96,0x9D,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
177:Middlewares/Third_Party/FatFs/src/ff.c **** 0x86,0x8B,0x9F,0x96,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
178:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
179:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
180:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
181:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
182:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
183:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
184:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 861 /* Icelandic */
|
||
185:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
186:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x90,0x41,0x8E,0x41,0x8F,0x80,0x45,0x45,0x45,0x8B,0x8B,0x8D,0x8E,0x8F, \
|
||
187:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0x4F,0x99,0x8D,0x55,0x97,0x97,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9F, \
|
||
188:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA4,0xA5,0xA6,0xA7,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
189:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
190:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
191:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
192:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
193:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
194:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
195:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 862 /* Hebrew */
|
||
196:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
197:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
198:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
199:Middlewares/Third_Party/FatFs/src/ff.c **** 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
200:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
201:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
202:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
ARM GAS /tmp/ccH7dUYB.s page 5
|
||
|
||
|
||
203:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
204:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
205:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
206:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 863 /* Canadian-French */
|
||
207:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
208:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x43,0x55,0x45,0x41,0x41,0x41,0x86,0x43,0x45,0x45,0x45,0x49,0x49,0x8D,0x41,0x8F, \
|
||
209:Middlewares/Third_Party/FatFs/src/ff.c **** 0x45,0x45,0x45,0x4F,0x45,0x49,0x55,0x55,0x98,0x4F,0x55,0x9B,0x9C,0x55,0x55,0x9F, \
|
||
210:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA0,0xA1,0x4F,0x55,0xA4,0xA5,0xA6,0xA7,0x49,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
211:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
212:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
213:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
214:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
215:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
216:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
217:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 864 /* Arabic */
|
||
218:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
219:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x45,0x41,0x8E,0x41,0x8F,0x80,0x45,0x45,0x45,0x49,0x49,0x49,0x8E,0x8F, \
|
||
220:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0x4F,0x99,0x4F,0x55,0x55,0x59,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
221:Middlewares/Third_Party/FatFs/src/ff.c **** 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
222:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
223:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
224:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
225:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
226:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
227:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
228:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 865 /* Nordic */
|
||
229:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
230:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x9A,0x90,0x41,0x8E,0x41,0x8F,0x80,0x45,0x45,0x45,0x49,0x49,0x49,0x8E,0x8F, \
|
||
231:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x92,0x92,0x4F,0x99,0x4F,0x55,0x55,0x59,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
232:Middlewares/Third_Party/FatFs/src/ff.c **** 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
233:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
234:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
235:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
236:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \
|
||
237:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
238:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
239:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 866 /* Russian */
|
||
240:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
241:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
242:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
243:Middlewares/Third_Party/FatFs/src/ff.c **** 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
244:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
245:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
246:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
|
||
247:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
|
||
248:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF0,0xF2,0xF2,0xF4,0xF4,0xF6,0xF6,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
|
||
249:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
250:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 869 /* Greek 2 */
|
||
251:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
252:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \
|
||
253:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x86,0x9C,0x8D,0x8F,0x90, \
|
||
254:Middlewares/Third_Party/FatFs/src/ff.c **** 0x91,0x90,0x92,0x95,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \
|
||
255:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
|
||
256:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \
|
||
257:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xA4,0xA5,0xA6,0xD9,0xDA,0xDB,0xDC,0xA7,0xA8,0xDF, \
|
||
258:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA9,0xAA,0xAC,0xAD,0xB5,0xB6,0xB7,0xB8,0xBD,0xBE,0xC6,0xC7,0xCF,0xCF,0xD0,0xEF, \
|
||
259:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xD1,0xD2,0xD3,0xF5,0xD4,0xF7,0xF8,0xF9,0xD5,0x96,0x95,0x98,0xFE,0xFF}
|
||
ARM GAS /tmp/ccH7dUYB.s page 6
|
||
|
||
|
||
260:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
261:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _CODE_PAGE == 1 /* ASCII (for only non-LFN cfg) */
|
||
262:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
263:Middlewares/Third_Party/FatFs/src/ff.c **** #error Cannot enable LFN without valid code page.
|
||
264:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
265:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0
|
||
266:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
267:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
268:Middlewares/Third_Party/FatFs/src/ff.c **** #error Unknown code page
|
||
269:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
270:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
271:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
272:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
273:Middlewares/Third_Party/FatFs/src/ff.c **** /* Character code support macros */
|
||
274:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsUpper(c) (((c)>='A')&&((c)<='Z'))
|
||
275:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsLower(c) (((c)>='a')&&((c)<='z'))
|
||
276:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDigit(c) (((c)>='0')&&((c)<='9'))
|
||
277:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
278:Middlewares/Third_Party/FatFs/src/ff.c **** #if _DF1S != 0 /* Code page is DBCS */
|
||
279:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
280:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _DF2S /* Two 1st byte areas */
|
||
281:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDBCS1(c) (((BYTE)(c) >= _DF1S && (BYTE)(c) <= _DF1E) || ((BYTE)(c) >= _DF2S && (BYTE)(c)
|
||
282:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* One 1st byte area */
|
||
283:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDBCS1(c) ((BYTE)(c) >= _DF1S && (BYTE)(c) <= _DF1E)
|
||
284:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
285:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
286:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _DS3S /* Three 2nd byte areas */
|
||
287:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDBCS2(c) (((BYTE)(c) >= _DS1S && (BYTE)(c) <= _DS1E) || ((BYTE)(c) >= _DS2S && (BYTE)(c)
|
||
288:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Two 2nd byte areas */
|
||
289:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDBCS2(c) (((BYTE)(c) >= _DS1S && (BYTE)(c) <= _DS1E) || ((BYTE)(c) >= _DS2S && (BYTE)(c)
|
||
290:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
291:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
292:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Code page is SBCS */
|
||
293:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
294:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDBCS1(c) 0
|
||
295:Middlewares/Third_Party/FatFs/src/ff.c **** #define IsDBCS2(c) 0
|
||
296:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
297:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _DF1S */
|
||
298:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
299:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
300:Middlewares/Third_Party/FatFs/src/ff.c **** /* Additional file attribute bits for internal use */
|
||
301:Middlewares/Third_Party/FatFs/src/ff.c **** #define AM_VOL 0x08 /* Volume label */
|
||
302:Middlewares/Third_Party/FatFs/src/ff.c **** #define AM_LFN 0x0F /* LFN entry */
|
||
303:Middlewares/Third_Party/FatFs/src/ff.c **** #define AM_MASK 0x3F /* Mask of defined bits */
|
||
304:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
305:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
306:Middlewares/Third_Party/FatFs/src/ff.c **** /* Additional file access control and file status flags for internal use */
|
||
307:Middlewares/Third_Party/FatFs/src/ff.c **** #define FA_SEEKEND 0x20 /* Seek to end of the file on file open */
|
||
308:Middlewares/Third_Party/FatFs/src/ff.c **** #define FA_MODIFIED 0x40 /* File has been modified */
|
||
309:Middlewares/Third_Party/FatFs/src/ff.c **** #define FA_DIRTY 0x80 /* FIL.buf[] needs to be written-back */
|
||
310:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
311:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
312:Middlewares/Third_Party/FatFs/src/ff.c **** /* Name status flags in fn[] */
|
||
313:Middlewares/Third_Party/FatFs/src/ff.c **** #define NSFLAG 11 /* Index of the name status byte */
|
||
314:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_LOSS 0x01 /* Out of 8.3 format */
|
||
315:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_LFN 0x02 /* Force to create LFN entry */
|
||
316:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_LAST 0x04 /* Last segment */
|
||
ARM GAS /tmp/ccH7dUYB.s page 7
|
||
|
||
|
||
317:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_BODY 0x08 /* Lower case flag (body) */
|
||
318:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_EXT 0x10 /* Lower case flag (ext) */
|
||
319:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_DOT 0x20 /* Dot entry */
|
||
320:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_NOLFN 0x40 /* Do not find LFN */
|
||
321:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_NONAME 0x80 /* Not followed */
|
||
322:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
323:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
324:Middlewares/Third_Party/FatFs/src/ff.c **** /* Limits and boundaries */
|
||
325:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAX_DIR 0x200000 /* Max size of FAT directory */
|
||
326:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAX_DIR_EX 0x10000000 /* Max size of exFAT directory */
|
||
327:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAX_FAT12 0xFF5 /* Max FAT12 clusters (differs from specs, but correct for real DOS/Windo
|
||
328:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAX_FAT16 0xFFF5 /* Max FAT16 clusters (differs from specs, but correct for real DOS/Wind
|
||
329:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAX_FAT32 0x0FFFFFF5 /* Max FAT32 clusters (not specified, practical limit) */
|
||
330:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAX_EXFAT 0x7FFFFFFD /* Max exFAT clusters (differs from specs, implementation limit) */
|
||
331:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
332:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
333:Middlewares/Third_Party/FatFs/src/ff.c **** /* FatFs refers the FAT structure as simple byte array instead of structure member
|
||
334:Middlewares/Third_Party/FatFs/src/ff.c **** / because the C structure is not binary compatible between different platforms */
|
||
335:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
336:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_JmpBoot 0 /* x86 jump instruction (3-byte) */
|
||
337:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_OEMName 3 /* OEM name (8-byte) */
|
||
338:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_BytsPerSec 11 /* Sector size [byte] (WORD) */
|
||
339:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_SecPerClus 13 /* Cluster size [sector] (BYTE) */
|
||
340:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_RsvdSecCnt 14 /* Size of reserved area [sector] (WORD) */
|
||
341:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_NumFATs 16 /* Number of FATs (BYTE) */
|
||
342:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_RootEntCnt 17 /* Size of root directory area for FAT12/16 [entry] (WORD) */
|
||
343:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_TotSec16 19 /* Volume size (16-bit) [sector] (WORD) */
|
||
344:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_Media 21 /* Media descriptor byte (BYTE) */
|
||
345:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FATSz16 22 /* FAT size (16-bit) [sector] (WORD) */
|
||
346:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_SecPerTrk 24 /* Track size for int13h [sector] (WORD) */
|
||
347:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_NumHeads 26 /* Number of heads for int13h (WORD) */
|
||
348:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_HiddSec 28 /* Volume offset from top of the drive (DWORD) */
|
||
349:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_TotSec32 32 /* Volume size (32-bit) [sector] (DWORD) */
|
||
350:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_DrvNum 36 /* Physical drive number for int13h (BYTE) */
|
||
351:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_NTres 37 /* Error flag (BYTE) */
|
||
352:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_BootSig 38 /* Extended boot signature (BYTE) */
|
||
353:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_VolID 39 /* Volume serial number (DWORD) */
|
||
354:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_VolLab 43 /* Volume label string (8-byte) */
|
||
355:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_FilSysType 54 /* File system type string (8-byte) */
|
||
356:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_BootCode 62 /* Boot code (448-byte) */
|
||
357:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_55AA 510 /* Signature word (WORD) */
|
||
358:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
359:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FATSz32 36 /* FAT32: FAT size [sector] (DWORD) */
|
||
360:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_ExtFlags32 40 /* FAT32: Extended flags (WORD) */
|
||
361:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FSVer32 42 /* FAT32: File system version (WORD) */
|
||
362:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_RootClus32 44 /* FAT32: Root directory cluster (DWORD) */
|
||
363:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FSInfo32 48 /* FAT32: Offset of FSINFO sector (WORD) */
|
||
364:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_BkBootSec32 50 /* FAT32: Offset of backup boot sector (WORD) */
|
||
365:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_DrvNum32 64 /* FAT32: Physical drive number for int13h (BYTE) */
|
||
366:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_NTres32 65 /* FAT32: Error flag (BYTE) */
|
||
367:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_BootSig32 66 /* FAT32: Extended boot signature (BYTE) */
|
||
368:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_VolID32 67 /* FAT32: Volume serial number (DWORD) */
|
||
369:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_VolLab32 71 /* FAT32: Volume label string (8-byte) */
|
||
370:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_FilSysType32 82 /* FAT32: File system type string (8-byte) */
|
||
371:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_BootCode32 90 /* FAT32: Boot code (420-byte) */
|
||
372:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
373:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_ZeroedEx 11 /* exFAT: MBZ field (53-byte) */
|
||
ARM GAS /tmp/ccH7dUYB.s page 8
|
||
|
||
|
||
374:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_VolOfsEx 64 /* exFAT: Volume offset from top of the drive [sector] (QWORD) */
|
||
375:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_TotSecEx 72 /* exFAT: Volume size [sector] (QWORD) */
|
||
376:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FatOfsEx 80 /* exFAT: FAT offset from top of the volume [sector] (DWORD) */
|
||
377:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FatSzEx 84 /* exFAT: FAT size [sector] (DWORD) */
|
||
378:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_DataOfsEx 88 /* exFAT: Data offset from top of the volume [sector] (DWORD) */
|
||
379:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_NumClusEx 92 /* exFAT: Number of clusters (DWORD) */
|
||
380:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_RootClusEx 96 /* exFAT: Root directory start cluster (DWORD) */
|
||
381:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_VolIDEx 100 /* exFAT: Volume serial number (DWORD) */
|
||
382:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_FSVerEx 104 /* exFAT: File system version (WORD) */
|
||
383:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_VolFlagEx 106 /* exFAT: Volume flags (BYTE) */
|
||
384:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_ActFatEx 107 /* exFAT: Active FAT flags (BYTE) */
|
||
385:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_BytsPerSecEx 108 /* exFAT: Log2 of sector size in unit of byte (BYTE) */
|
||
386:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_SecPerClusEx 109 /* exFAT: Log2 of cluster size in unit of sector (BYTE) */
|
||
387:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_NumFATsEx 110 /* exFAT: Number of FATs (BYTE) */
|
||
388:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_DrvNumEx 111 /* exFAT: Physical drive number for int13h (BYTE) */
|
||
389:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_PercInUseEx 112 /* exFAT: Percent in use (BYTE) */
|
||
390:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_RsvdEx 113 /* exFAT: Reserved (7-byte) */
|
||
391:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_BootCodeEx 120 /* exFAT: Boot code (390-byte) */
|
||
392:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
393:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_Name 0 /* Short file name (11-byte) */
|
||
394:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_Attr 11 /* Attribute (BYTE) */
|
||
395:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_NTres 12 /* Lower case flag (BYTE) */
|
||
396:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_CrtTime10 13 /* Created time sub-second (BYTE) */
|
||
397:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_CrtTime 14 /* Created time (DWORD) */
|
||
398:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_LstAccDate 18 /* Last accessed date (WORD) */
|
||
399:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_FstClusHI 20 /* Higher 16-bit of first cluster (WORD) */
|
||
400:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_ModTime 22 /* Modified time (DWORD) */
|
||
401:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_FstClusLO 26 /* Lower 16-bit of first cluster (WORD) */
|
||
402:Middlewares/Third_Party/FatFs/src/ff.c **** #define DIR_FileSize 28 /* File size (DWORD) */
|
||
403:Middlewares/Third_Party/FatFs/src/ff.c **** #define LDIR_Ord 0 /* LFN: LFN order and LLE flag (BYTE) */
|
||
404:Middlewares/Third_Party/FatFs/src/ff.c **** #define LDIR_Attr 11 /* LFN: LFN attribute (BYTE) */
|
||
405:Middlewares/Third_Party/FatFs/src/ff.c **** #define LDIR_Type 12 /* LFN: Entry type (BYTE) */
|
||
406:Middlewares/Third_Party/FatFs/src/ff.c **** #define LDIR_Chksum 13 /* LFN: Checksum of the SFN (BYTE) */
|
||
407:Middlewares/Third_Party/FatFs/src/ff.c **** #define LDIR_FstClusLO 26 /* LFN: MBZ field (WORD) */
|
||
408:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_Type 0 /* exFAT: Type of exFAT directory entry (BYTE) */
|
||
409:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_NumLabel 1 /* exFAT: Number of volume label characters (BYTE) */
|
||
410:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_Label 2 /* exFAT: Volume label (11-WORD) */
|
||
411:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_CaseSum 4 /* exFAT: Sum of case conversion table (DWORD) */
|
||
412:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_NumSec 1 /* exFAT: Number of secondary entries (BYTE) */
|
||
413:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_SetSum 2 /* exFAT: Sum of the set of directory entries (WORD) */
|
||
414:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_Attr 4 /* exFAT: File attribute (WORD) */
|
||
415:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_CrtTime 8 /* exFAT: Created time (DWORD) */
|
||
416:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_ModTime 12 /* exFAT: Modified time (DWORD) */
|
||
417:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_AccTime 16 /* exFAT: Last accessed time (DWORD) */
|
||
418:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_CrtTime10 20 /* exFAT: Created time subsecond (BYTE) */
|
||
419:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_ModTime10 21 /* exFAT: Modified time subsecond (BYTE) */
|
||
420:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_CrtTZ 22 /* exFAT: Created timezone (BYTE) */
|
||
421:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_ModTZ 23 /* exFAT: Modified timezone (BYTE) */
|
||
422:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_AccTZ 24 /* exFAT: Last accessed timezone (BYTE) */
|
||
423:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_GenFlags 33 /* exFAT: General secondary flags (WORD) */
|
||
424:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_NumName 35 /* exFAT: Number of file name characters (BYTE) */
|
||
425:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_NameHash 36 /* exFAT: Hash of file name (WORD) */
|
||
426:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_ValidFileSize 40 /* exFAT: Valid file size (QWORD) */
|
||
427:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_FstClus 52 /* exFAT: First cluster of the file data (DWORD) */
|
||
428:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_FileSize 56 /* exFAT: File/Directory size (QWORD) */
|
||
429:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
430:Middlewares/Third_Party/FatFs/src/ff.c **** #define SZDIRE 32 /* Size of a directory entry */
|
||
ARM GAS /tmp/ccH7dUYB.s page 9
|
||
|
||
|
||
431:Middlewares/Third_Party/FatFs/src/ff.c **** #define DDEM 0xE5 /* Deleted directory entry mark set to DIR_Name[0] */
|
||
432:Middlewares/Third_Party/FatFs/src/ff.c **** #define RDDEM 0x05 /* Replacement of the character collides with DDEM */
|
||
433:Middlewares/Third_Party/FatFs/src/ff.c **** #define LLEF 0x40 /* Last long entry flag in LDIR_Ord */
|
||
434:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
435:Middlewares/Third_Party/FatFs/src/ff.c **** #define FSI_LeadSig 0 /* FAT32 FSI: Leading signature (DWORD) */
|
||
436:Middlewares/Third_Party/FatFs/src/ff.c **** #define FSI_StrucSig 484 /* FAT32 FSI: Structure signature (DWORD) */
|
||
437:Middlewares/Third_Party/FatFs/src/ff.c **** #define FSI_Free_Count 488 /* FAT32 FSI: Number of free clusters (DWORD) */
|
||
438:Middlewares/Third_Party/FatFs/src/ff.c **** #define FSI_Nxt_Free 492 /* FAT32 FSI: Last allocated cluster (DWORD) */
|
||
439:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
440:Middlewares/Third_Party/FatFs/src/ff.c **** #define MBR_Table 446 /* MBR: Offset of partition table in the MBR */
|
||
441:Middlewares/Third_Party/FatFs/src/ff.c **** #define SZ_PTE 16 /* MBR: Size of a partition table entry */
|
||
442:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_Boot 0 /* MBR PTE: Boot indicator */
|
||
443:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_StHead 1 /* MBR PTE: Start head */
|
||
444:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_StSec 2 /* MBR PTE: Start sector */
|
||
445:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_StCyl 3 /* MBR PTE: Start cylinder */
|
||
446:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_System 4 /* MBR PTE: System ID */
|
||
447:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_EdHead 5 /* MBR PTE: End head */
|
||
448:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_EdSec 6 /* MBR PTE: End sector */
|
||
449:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_EdCyl 7 /* MBR PTE: End cylinder */
|
||
450:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_StLba 8 /* MBR PTE: Start in LBA */
|
||
451:Middlewares/Third_Party/FatFs/src/ff.c **** #define PTE_SizLba 12 /* MBR PTE: Size in LBA */
|
||
452:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
453:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
454:Middlewares/Third_Party/FatFs/src/ff.c **** /* Post process after fatal error on file operation */
|
||
455:Middlewares/Third_Party/FatFs/src/ff.c **** #define ABORT(fs, res) { fp->err = (BYTE)(res); LEAVE_FF(fs, res); }
|
||
456:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
457:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
458:Middlewares/Third_Party/FatFs/src/ff.c **** /* Reentrancy related */
|
||
459:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
460:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1
|
||
461:Middlewares/Third_Party/FatFs/src/ff.c **** #error Static LFN work area cannot be used at thread-safe configuration
|
||
462:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
463:Middlewares/Third_Party/FatFs/src/ff.c **** #define ENTER_FF(fs) { if (!lock_fs(fs)) return FR_TIMEOUT; }
|
||
464:Middlewares/Third_Party/FatFs/src/ff.c **** #define LEAVE_FF(fs, res) { unlock_fs(fs, res); return res; }
|
||
465:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
466:Middlewares/Third_Party/FatFs/src/ff.c **** #define ENTER_FF(fs)
|
||
467:Middlewares/Third_Party/FatFs/src/ff.c **** #define LEAVE_FF(fs, res) return res
|
||
468:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
469:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
470:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
471:Middlewares/Third_Party/FatFs/src/ff.c **** /* Definitions of volume - partition conversion */
|
||
472:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MULTI_PARTITION
|
||
473:Middlewares/Third_Party/FatFs/src/ff.c **** #define LD2PD(vol) VolToPart[vol].pd /* Get physical drive number */
|
||
474:Middlewares/Third_Party/FatFs/src/ff.c **** #define LD2PT(vol) VolToPart[vol].pt /* Get partition index */
|
||
475:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
476:Middlewares/Third_Party/FatFs/src/ff.c **** #define LD2PD(vol) (BYTE)(vol) /* Each logical drive is bound to the same physical drive number */
|
||
477:Middlewares/Third_Party/FatFs/src/ff.c **** #define LD2PT(vol) 0 /* Find first valid partition or in SFD */
|
||
478:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
479:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
480:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
481:Middlewares/Third_Party/FatFs/src/ff.c **** /* Definitions of sector size */
|
||
482:Middlewares/Third_Party/FatFs/src/ff.c **** #if (_MAX_SS < _MIN_SS) || (_MAX_SS != 512 && _MAX_SS != 1024 && _MAX_SS != 2048 && _MAX_SS != 4096
|
||
483:Middlewares/Third_Party/FatFs/src/ff.c **** #error Wrong sector size configuration
|
||
484:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
485:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS == _MIN_SS
|
||
486:Middlewares/Third_Party/FatFs/src/ff.c **** #define SS(fs) ((UINT)_MAX_SS) /* Fixed sector size */
|
||
487:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
ARM GAS /tmp/ccH7dUYB.s page 10
|
||
|
||
|
||
488:Middlewares/Third_Party/FatFs/src/ff.c **** #define SS(fs) ((fs)->ssize) /* Variable sector size */
|
||
489:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
490:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
491:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
492:Middlewares/Third_Party/FatFs/src/ff.c **** /* Timestamp */
|
||
493:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_NORTC == 1
|
||
494:Middlewares/Third_Party/FatFs/src/ff.c **** #if _NORTC_YEAR < 1980 || _NORTC_YEAR > 2107 || _NORTC_MON < 1 || _NORTC_MON > 12 || _NORTC_MDAY <
|
||
495:Middlewares/Third_Party/FatFs/src/ff.c **** #error Invalid _FS_NORTC settings
|
||
496:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
497:Middlewares/Third_Party/FatFs/src/ff.c **** #define GET_FATTIME() ((DWORD)(_NORTC_YEAR - 1980) << 25 | (DWORD)_NORTC_MON << 21 | (DWORD)_NORTC_
|
||
498:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
499:Middlewares/Third_Party/FatFs/src/ff.c **** #define GET_FATTIME() get_fattime()
|
||
500:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
501:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
502:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
503:Middlewares/Third_Party/FatFs/src/ff.c **** /* File lock controls */
|
||
504:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
505:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_READONLY
|
||
506:Middlewares/Third_Party/FatFs/src/ff.c **** #error _FS_LOCK must be 0 at read-only configuration
|
||
507:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
508:Middlewares/Third_Party/FatFs/src/ff.c **** typedef struct {
|
||
509:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs; /* Object ID 1, volume (NULL:blank entry) */
|
||
510:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clu; /* Object ID 2, containing directory (0:root) */
|
||
511:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ofs; /* Object ID 3, offset in the directory */
|
||
512:Middlewares/Third_Party/FatFs/src/ff.c **** WORD ctr; /* Object open counter, 0:none, 0x01..0xFF:read mode open count, 0x100:write mode */
|
||
513:Middlewares/Third_Party/FatFs/src/ff.c **** } FILESEM;
|
||
514:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
515:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
516:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
517:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
518:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
519:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
520:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------------------------------------------
|
||
521:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
522:Middlewares/Third_Party/FatFs/src/ff.c **** Module Private Work Area
|
||
523:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
524:Middlewares/Third_Party/FatFs/src/ff.c **** ---------------------------------------------------------------------------*/
|
||
525:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
526:Middlewares/Third_Party/FatFs/src/ff.c **** /* Remark: Variables defined here without initial value shall be guaranteed
|
||
527:Middlewares/Third_Party/FatFs/src/ff.c **** / zero/null at start-up. If not, the linker option or start-up routine is
|
||
528:Middlewares/Third_Party/FatFs/src/ff.c **** / not compliance with C standard. */
|
||
529:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
530:Middlewares/Third_Party/FatFs/src/ff.c **** #if _VOLUMES < 1 || _VOLUMES > 10
|
||
531:Middlewares/Third_Party/FatFs/src/ff.c **** #error Wrong _VOLUMES setting
|
||
532:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
533:Middlewares/Third_Party/FatFs/src/ff.c **** static FATFS *FatFs[_VOLUMES]; /* Pointer to the file system objects (logical drives) */
|
||
534:Middlewares/Third_Party/FatFs/src/ff.c **** static WORD Fsid; /* File system mount ID */
|
||
535:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
536:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0 && _VOLUMES >= 2
|
||
537:Middlewares/Third_Party/FatFs/src/ff.c **** static BYTE CurrVol; /* Current drive */
|
||
538:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
539:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
540:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
541:Middlewares/Third_Party/FatFs/src/ff.c **** static FILESEM Files[_FS_LOCK]; /* Open object lock semaphores */
|
||
542:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
543:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
544:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 0 /* Non-LFN configuration */
|
||
ARM GAS /tmp/ccH7dUYB.s page 11
|
||
|
||
|
||
545:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF
|
||
546:Middlewares/Third_Party/FatFs/src/ff.c **** #define INIT_NAMBUF(fs)
|
||
547:Middlewares/Third_Party/FatFs/src/ff.c **** #define FREE_NAMBUF()
|
||
548:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
549:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* LFN configuration */
|
||
550:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_LFN < 12 || _MAX_LFN > 255
|
||
551:Middlewares/Third_Party/FatFs/src/ff.c **** #error Wrong _MAX_LFN value
|
||
552:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
553:Middlewares/Third_Party/FatFs/src/ff.c **** #define MAXDIRB(nc) ((nc + 44U) / 15 * SZDIRE)
|
||
554:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
555:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1 /* LFN enabled with static working buffer */
|
||
556:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
557:Middlewares/Third_Party/FatFs/src/ff.c **** static BYTE DirBuf[MAXDIRB(_MAX_LFN)]; /* Directory entry block scratchpad buffer */
|
||
558:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
559:Middlewares/Third_Party/FatFs/src/ff.c **** static WCHAR LfnBuf[_MAX_LFN + 1]; /* LFN enabled with static working buffer */
|
||
560:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF
|
||
561:Middlewares/Third_Party/FatFs/src/ff.c **** #define INIT_NAMBUF(fs)
|
||
562:Middlewares/Third_Party/FatFs/src/ff.c **** #define FREE_NAMBUF()
|
||
563:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
564:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _USE_LFN == 2 /* LFN enabled with dynamic working buffer on the stack */
|
||
565:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
566:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF WCHAR lbuf[_MAX_LFN+1]; BYTE dbuf[MAXDIRB(_MAX_LFN)];
|
||
567:Middlewares/Third_Party/FatFs/src/ff.c **** #define INIT_NAMBUF(fs) { (fs)->lfnbuf = lbuf; (fs)->dirbuf = dbuf; }
|
||
568:Middlewares/Third_Party/FatFs/src/ff.c **** #define FREE_NAMBUF()
|
||
569:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
570:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF WCHAR lbuf[_MAX_LFN+1];
|
||
571:Middlewares/Third_Party/FatFs/src/ff.c **** #define INIT_NAMBUF(fs) { (fs)->lfnbuf = lbuf; }
|
||
572:Middlewares/Third_Party/FatFs/src/ff.c **** #define FREE_NAMBUF()
|
||
573:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
574:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
575:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _USE_LFN == 3 /* LFN enabled with dynamic working buffer on the heap */
|
||
576:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
577:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF WCHAR *lfn;
|
||
578:Middlewares/Third_Party/FatFs/src/ff.c **** #define INIT_NAMBUF(fs) { lfn = ff_memalloc((_MAX_LFN+1)*2 + MAXDIRB(_MAX_LFN)); if (!lfn) LEAVE_FF
|
||
579:Middlewares/Third_Party/FatFs/src/ff.c **** #define FREE_NAMBUF() ff_memfree(lfn)
|
||
580:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
581:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF WCHAR *lfn;
|
||
582:Middlewares/Third_Party/FatFs/src/ff.c **** #define INIT_NAMBUF(fs) { lfn = ff_memalloc((_MAX_LFN+1)*2); if (!lfn) LEAVE_FF(fs, FR_NOT_ENOUGH_C
|
||
583:Middlewares/Third_Party/FatFs/src/ff.c **** #define FREE_NAMBUF() ff_memfree(lfn)
|
||
584:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
585:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
586:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
587:Middlewares/Third_Party/FatFs/src/ff.c **** #error Wrong _USE_LFN setting
|
||
588:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
589:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
590:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* else _USE_LFN == 0 */
|
||
591:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
592:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
593:Middlewares/Third_Party/FatFs/src/ff.c **** static const BYTE ExCvt[] = _EXCVT; /* Upper conversion table for SBCS extended characters */
|
||
594:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
595:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
596:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
597:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
598:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
599:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
600:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
601:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------------------------------------------
|
||
ARM GAS /tmp/ccH7dUYB.s page 12
|
||
|
||
|
||
602:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
603:Middlewares/Third_Party/FatFs/src/ff.c **** Module Private Functions
|
||
604:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
605:Middlewares/Third_Party/FatFs/src/ff.c **** ---------------------------------------------------------------------------*/
|
||
606:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
607:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
608:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
609:Middlewares/Third_Party/FatFs/src/ff.c **** /* Load/Store multi-byte word in the FAT structure */
|
||
610:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
611:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
612:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
613:Middlewares/Third_Party/FatFs/src/ff.c **** WORD ld_word (const BYTE* ptr) /* Load a 2-byte little-endian word */
|
||
614:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
28 .loc 1 614 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.
|
||
615:Middlewares/Third_Party/FatFs/src/ff.c **** WORD rv;
|
||
33 .loc 1 615 2 view .LVU1
|
||
616:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
617:Middlewares/Third_Party/FatFs/src/ff.c **** rv = ptr[1];
|
||
34 .loc 1 617 2 view .LVU2
|
||
35 .loc 1 617 10 is_stmt 0 view .LVU3
|
||
36 0000 4278 ldrb r2, [r0, #1] @ zero_extendqisi2
|
||
37 .LVL1:
|
||
618:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[0];
|
||
38 .loc 1 618 2 is_stmt 1 view .LVU4
|
||
39 .loc 1 618 20 is_stmt 0 view .LVU5
|
||
40 0002 0078 ldrb r0, [r0] @ zero_extendqisi2
|
||
41 .LVL2:
|
||
619:Middlewares/Third_Party/FatFs/src/ff.c **** return rv;
|
||
42 .loc 1 619 2 is_stmt 1 view .LVU6
|
||
620:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
43 .loc 1 620 1 is_stmt 0 view .LVU7
|
||
44 0004 40EA0220 orr r0, r0, r2, lsl #8
|
||
45 .LVL3:
|
||
46 .loc 1 620 1 view .LVU8
|
||
47 0008 7047 bx lr
|
||
48 .cfi_endproc
|
||
49 .LFE1183:
|
||
51 .section .text.ld_dword,"ax",%progbits
|
||
52 .align 1
|
||
53 .syntax unified
|
||
54 .thumb
|
||
55 .thumb_func
|
||
57 ld_dword:
|
||
58 .LVL4:
|
||
59 .LFB1184:
|
||
621:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
622:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
623:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ld_dword (const BYTE* ptr) /* Load a 4-byte little-endian word */
|
||
624:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
60 .loc 1 624 1 is_stmt 1 view -0
|
||
61 .cfi_startproc
|
||
62 @ args = 0, pretend = 0, frame = 0
|
||
63 @ frame_needed = 0, uses_anonymous_args = 0
|
||
ARM GAS /tmp/ccH7dUYB.s page 13
|
||
|
||
|
||
64 @ link register save eliminated.
|
||
625:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD rv;
|
||
65 .loc 1 625 2 view .LVU10
|
||
626:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
627:Middlewares/Third_Party/FatFs/src/ff.c **** rv = ptr[3];
|
||
66 .loc 1 627 2 view .LVU11
|
||
67 .loc 1 627 10 is_stmt 0 view .LVU12
|
||
68 0000 C378 ldrb r3, [r0, #3] @ zero_extendqisi2
|
||
69 .LVL5:
|
||
628:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[2];
|
||
70 .loc 1 628 2 is_stmt 1 view .LVU13
|
||
71 .loc 1 628 20 is_stmt 0 view .LVU14
|
||
72 0002 8278 ldrb r2, [r0, #2] @ zero_extendqisi2
|
||
73 .loc 1 628 5 view .LVU15
|
||
74 0004 42EA0322 orr r2, r2, r3, lsl #8
|
||
75 .LVL6:
|
||
629:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[1];
|
||
76 .loc 1 629 2 is_stmt 1 view .LVU16
|
||
77 .loc 1 629 20 is_stmt 0 view .LVU17
|
||
78 0008 4378 ldrb r3, [r0, #1] @ zero_extendqisi2
|
||
79 .loc 1 629 5 view .LVU18
|
||
80 000a 43EA0223 orr r3, r3, r2, lsl #8
|
||
81 .LVL7:
|
||
630:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[0];
|
||
82 .loc 1 630 2 is_stmt 1 view .LVU19
|
||
83 .loc 1 630 20 is_stmt 0 view .LVU20
|
||
84 000e 0078 ldrb r0, [r0] @ zero_extendqisi2
|
||
85 .LVL8:
|
||
631:Middlewares/Third_Party/FatFs/src/ff.c **** return rv;
|
||
86 .loc 1 631 2 is_stmt 1 view .LVU21
|
||
632:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
87 .loc 1 632 1 is_stmt 0 view .LVU22
|
||
88 0010 40EA0320 orr r0, r0, r3, lsl #8
|
||
89 .LVL9:
|
||
90 .loc 1 632 1 view .LVU23
|
||
91 0014 7047 bx lr
|
||
92 .cfi_endproc
|
||
93 .LFE1184:
|
||
95 .section .text.st_word,"ax",%progbits
|
||
96 .align 1
|
||
97 .syntax unified
|
||
98 .thumb
|
||
99 .thumb_func
|
||
101 st_word:
|
||
102 .LVL10:
|
||
103 .LFB1185:
|
||
633:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
634:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
635:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
636:Middlewares/Third_Party/FatFs/src/ff.c **** QWORD ld_qword (const BYTE* ptr) /* Load an 8-byte little-endian word */
|
||
637:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
638:Middlewares/Third_Party/FatFs/src/ff.c **** QWORD rv;
|
||
639:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
640:Middlewares/Third_Party/FatFs/src/ff.c **** rv = ptr[7];
|
||
641:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[6];
|
||
642:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[5];
|
||
643:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[4];
|
||
ARM GAS /tmp/ccH7dUYB.s page 14
|
||
|
||
|
||
644:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[3];
|
||
645:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[2];
|
||
646:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[1];
|
||
647:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[0];
|
||
648:Middlewares/Third_Party/FatFs/src/ff.c **** return rv;
|
||
649:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
650:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
651:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
652:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
653:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
654:Middlewares/Third_Party/FatFs/src/ff.c **** void st_word (BYTE* ptr, WORD val) /* Store a 2-byte word in little-endian */
|
||
655:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
104 .loc 1 655 1 is_stmt 1 view -0
|
||
105 .cfi_startproc
|
||
106 @ args = 0, pretend = 0, frame = 0
|
||
107 @ frame_needed = 0, uses_anonymous_args = 0
|
||
108 @ link register save eliminated.
|
||
656:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
109 .loc 1 656 2 view .LVU25
|
||
110 .loc 1 656 9 is_stmt 0 view .LVU26
|
||
111 0000 0170 strb r1, [r0]
|
||
112 .loc 1 656 22 is_stmt 1 view .LVU27
|
||
113 .LVL11:
|
||
657:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val;
|
||
114 .loc 1 657 2 view .LVU28
|
||
115 .loc 1 657 11 is_stmt 0 view .LVU29
|
||
116 0002 090A lsrs r1, r1, #8
|
||
117 .loc 1 657 9 view .LVU30
|
||
118 0004 4170 strb r1, [r0, #1]
|
||
658:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
119 .loc 1 658 1 view .LVU31
|
||
120 0006 7047 bx lr
|
||
121 .cfi_endproc
|
||
122 .LFE1185:
|
||
124 .section .text.st_dword,"ax",%progbits
|
||
125 .align 1
|
||
126 .syntax unified
|
||
127 .thumb
|
||
128 .thumb_func
|
||
130 st_dword:
|
||
131 .LVL12:
|
||
132 .LFB1186:
|
||
659:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
660:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
661:Middlewares/Third_Party/FatFs/src/ff.c **** void st_dword (BYTE* ptr, DWORD val) /* Store a 4-byte word in little-endian */
|
||
662:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
133 .loc 1 662 1 is_stmt 1 view -0
|
||
134 .cfi_startproc
|
||
135 @ args = 0, pretend = 0, frame = 0
|
||
136 @ frame_needed = 0, uses_anonymous_args = 0
|
||
137 @ link register save eliminated.
|
||
663:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
138 .loc 1 663 2 view .LVU33
|
||
139 .loc 1 663 9 is_stmt 0 view .LVU34
|
||
140 0000 0170 strb r1, [r0]
|
||
141 .loc 1 663 22 is_stmt 1 view .LVU35
|
||
142 .LVL13:
|
||
ARM GAS /tmp/ccH7dUYB.s page 15
|
||
|
||
|
||
664:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
143 .loc 1 664 2 view .LVU36
|
||
144 .loc 1 664 11 is_stmt 0 view .LVU37
|
||
145 0002 C1F30723 ubfx r3, r1, #8, #8
|
||
146 .loc 1 664 9 view .LVU38
|
||
147 0006 4370 strb r3, [r0, #1]
|
||
148 .loc 1 664 22 is_stmt 1 view .LVU39
|
||
149 .LVL14:
|
||
665:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
150 .loc 1 665 2 view .LVU40
|
||
151 .loc 1 665 11 is_stmt 0 view .LVU41
|
||
152 0008 C1F30743 ubfx r3, r1, #16, #8
|
||
153 .loc 1 665 9 view .LVU42
|
||
154 000c 8370 strb r3, [r0, #2]
|
||
155 .loc 1 665 22 is_stmt 1 view .LVU43
|
||
156 .LVL15:
|
||
666:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val;
|
||
157 .loc 1 666 2 view .LVU44
|
||
158 .loc 1 666 11 is_stmt 0 view .LVU45
|
||
159 000e 090E lsrs r1, r1, #24
|
||
160 .LVL16:
|
||
161 .loc 1 666 9 view .LVU46
|
||
162 0010 C170 strb r1, [r0, #3]
|
||
667:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
163 .loc 1 667 1 view .LVU47
|
||
164 0012 7047 bx lr
|
||
165 .cfi_endproc
|
||
166 .LFE1186:
|
||
168 .section .text.mem_cpy,"ax",%progbits
|
||
169 .align 1
|
||
170 .syntax unified
|
||
171 .thumb
|
||
172 .thumb_func
|
||
174 mem_cpy:
|
||
175 .LVL17:
|
||
176 .LFB1187:
|
||
668:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
669:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
670:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
671:Middlewares/Third_Party/FatFs/src/ff.c **** void st_qword (BYTE* ptr, QWORD val) /* Store an 8-byte word in little-endian */
|
||
672:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
673:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
674:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
675:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
676:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
677:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
678:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
679:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8;
|
||
680:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val;
|
||
681:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
682:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
683:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
684:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
685:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
686:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
687:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
688:Middlewares/Third_Party/FatFs/src/ff.c **** /* String functions */
|
||
ARM GAS /tmp/ccH7dUYB.s page 16
|
||
|
||
|
||
689:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
690:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
691:Middlewares/Third_Party/FatFs/src/ff.c **** /* Copy memory to memory */
|
||
692:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
693:Middlewares/Third_Party/FatFs/src/ff.c **** void mem_cpy (void* dst, const void* src, UINT cnt) {
|
||
177 .loc 1 693 53 is_stmt 1 view -0
|
||
178 .cfi_startproc
|
||
179 @ args = 0, pretend = 0, frame = 0
|
||
180 @ frame_needed = 0, uses_anonymous_args = 0
|
||
181 @ link register save eliminated.
|
||
694:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *d = (BYTE*)dst;
|
||
182 .loc 1 694 2 view .LVU49
|
||
695:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE *s = (const BYTE*)src;
|
||
183 .loc 1 695 2 view .LVU50
|
||
696:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
697:Middlewares/Third_Party/FatFs/src/ff.c **** if (cnt) {
|
||
184 .loc 1 697 2 view .LVU51
|
||
185 .loc 1 697 5 is_stmt 0 view .LVU52
|
||
186 0000 9446 mov ip, r2
|
||
187 0002 32B1 cbz r2, .L5
|
||
188 .LVL18:
|
||
189 .L7:
|
||
698:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
190 .loc 1 698 3 is_stmt 1 view .LVU53
|
||
699:Middlewares/Third_Party/FatFs/src/ff.c **** *d++ = *s++;
|
||
191 .loc 1 699 4 view .LVU54
|
||
192 .loc 1 699 11 is_stmt 0 view .LVU55
|
||
193 0004 0A78 ldrb r2, [r1] @ zero_extendqisi2
|
||
194 0006 0131 adds r1, r1, #1
|
||
195 .LVL19:
|
||
196 .loc 1 699 9 view .LVU56
|
||
197 0008 0270 strb r2, [r0]
|
||
198 000a 0130 adds r0, r0, #1
|
||
199 .LVL20:
|
||
700:Middlewares/Third_Party/FatFs/src/ff.c **** } while (--cnt);
|
||
200 .loc 1 700 12 is_stmt 1 discriminator 1 view .LVU57
|
||
201 .loc 1 700 12 is_stmt 0 discriminator 1 view .LVU58
|
||
202 000c BCF1010C subs ip, ip, #1
|
||
203 .LVL21:
|
||
204 .loc 1 700 12 discriminator 1 view .LVU59
|
||
205 0010 F8D1 bne .L7
|
||
206 .LVL22:
|
||
207 .L5:
|
||
701:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
702:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
208 .loc 1 702 1 view .LVU60
|
||
209 0012 7047 bx lr
|
||
210 .cfi_endproc
|
||
211 .LFE1187:
|
||
213 .section .text.mem_set,"ax",%progbits
|
||
214 .align 1
|
||
215 .syntax unified
|
||
216 .thumb
|
||
217 .thumb_func
|
||
219 mem_set:
|
||
220 .LFB1188:
|
||
703:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 17
|
||
|
||
|
||
704:Middlewares/Third_Party/FatFs/src/ff.c **** /* Fill memory block */
|
||
705:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
706:Middlewares/Third_Party/FatFs/src/ff.c **** void mem_set (void* dst, int val, UINT cnt) {
|
||
221 .loc 1 706 45 is_stmt 1 view -0
|
||
222 .cfi_startproc
|
||
223 @ args = 0, pretend = 0, frame = 0
|
||
224 @ frame_needed = 0, uses_anonymous_args = 0
|
||
225 @ link register save eliminated.
|
||
226 .LVL23:
|
||
227 .L9:
|
||
707:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *d = (BYTE*)dst;
|
||
708:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
709:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
228 .loc 1 709 2 view .LVU62
|
||
710:Middlewares/Third_Party/FatFs/src/ff.c **** *d++ = (BYTE)val;
|
||
229 .loc 1 710 3 view .LVU63
|
||
230 .loc 1 710 8 is_stmt 0 view .LVU64
|
||
231 0000 0170 strb r1, [r0]
|
||
232 0002 0130 adds r0, r0, #1
|
||
711:Middlewares/Third_Party/FatFs/src/ff.c **** } while (--cnt);
|
||
233 .loc 1 711 11 is_stmt 1 discriminator 1 view .LVU65
|
||
234 .LVL24:
|
||
235 .loc 1 711 11 is_stmt 0 discriminator 1 view .LVU66
|
||
236 0004 013A subs r2, r2, #1
|
||
237 .LVL25:
|
||
238 .loc 1 711 11 discriminator 1 view .LVU67
|
||
239 0006 FBD1 bne .L9
|
||
712:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
240 .loc 1 712 1 view .LVU68
|
||
241 0008 7047 bx lr
|
||
242 .cfi_endproc
|
||
243 .LFE1188:
|
||
245 .section .text.mem_cmp,"ax",%progbits
|
||
246 .align 1
|
||
247 .syntax unified
|
||
248 .thumb
|
||
249 .thumb_func
|
||
251 mem_cmp:
|
||
252 .LVL26:
|
||
253 .LFB1189:
|
||
713:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
714:Middlewares/Third_Party/FatFs/src/ff.c **** /* Compare memory block */
|
||
715:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
716:Middlewares/Third_Party/FatFs/src/ff.c **** int mem_cmp (const void* dst, const void* src, UINT cnt) { /* ZR:same, NZ:different */
|
||
254 .loc 1 716 58 is_stmt 1 view -0
|
||
255 .cfi_startproc
|
||
256 @ args = 0, pretend = 0, frame = 0
|
||
257 @ frame_needed = 0, uses_anonymous_args = 0
|
||
258 @ link register save eliminated.
|
||
259 .loc 1 716 58 is_stmt 0 view .LVU70
|
||
260 0000 8446 mov ip, r0
|
||
717:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE *d = (const BYTE *)dst, *s = (const BYTE *)src;
|
||
261 .loc 1 717 2 is_stmt 1 view .LVU71
|
||
262 .LVL27:
|
||
718:Middlewares/Third_Party/FatFs/src/ff.c **** int r = 0;
|
||
263 .loc 1 718 2 view .LVU72
|
||
264 .L12:
|
||
ARM GAS /tmp/ccH7dUYB.s page 18
|
||
|
||
|
||
719:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
720:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
265 .loc 1 720 2 view .LVU73
|
||
721:Middlewares/Third_Party/FatFs/src/ff.c **** r = *d++ - *s++;
|
||
266 .loc 1 721 3 view .LVU74
|
||
267 .loc 1 721 7 is_stmt 0 view .LVU75
|
||
268 0002 9CF80000 ldrb r0, [ip] @ zero_extendqisi2
|
||
269 0006 0CF1010C add ip, ip, #1
|
||
270 .LVL28:
|
||
271 .loc 1 721 14 view .LVU76
|
||
272 000a 0B78 ldrb r3, [r1] @ zero_extendqisi2
|
||
273 000c 0131 adds r1, r1, #1
|
||
274 .LVL29:
|
||
275 .loc 1 721 5 view .LVU77
|
||
276 000e C01A subs r0, r0, r3
|
||
277 .LVL30:
|
||
722:Middlewares/Third_Party/FatFs/src/ff.c **** } while (--cnt && r == 0);
|
||
278 .loc 1 722 17 is_stmt 1 discriminator 2 view .LVU78
|
||
279 .loc 1 722 17 is_stmt 0 discriminator 2 view .LVU79
|
||
280 0010 013A subs r2, r2, #1
|
||
281 .LVL31:
|
||
282 .loc 1 722 17 discriminator 2 view .LVU80
|
||
283 0012 01D0 beq .L10
|
||
284 .loc 1 722 17 discriminator 1 view .LVU81
|
||
285 0014 0028 cmp r0, #0
|
||
286 0016 F4D0 beq .L12
|
||
287 .L10:
|
||
723:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
724:Middlewares/Third_Party/FatFs/src/ff.c **** return r;
|
||
725:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
288 .loc 1 725 1 view .LVU82
|
||
289 0018 7047 bx lr
|
||
290 .cfi_endproc
|
||
291 .LFE1189:
|
||
293 .section .text.chk_chr,"ax",%progbits
|
||
294 .align 1
|
||
295 .syntax unified
|
||
296 .thumb
|
||
297 .thumb_func
|
||
299 chk_chr:
|
||
300 .LVL32:
|
||
301 .LFB1190:
|
||
726:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
727:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check if chr is contained in the string */
|
||
728:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
729:Middlewares/Third_Party/FatFs/src/ff.c **** int chk_chr (const char* str, int chr) { /* NZ:contained, ZR:not contained */
|
||
302 .loc 1 729 40 is_stmt 1 view -0
|
||
303 .cfi_startproc
|
||
304 @ args = 0, pretend = 0, frame = 0
|
||
305 @ frame_needed = 0, uses_anonymous_args = 0
|
||
306 @ link register save eliminated.
|
||
307 .loc 1 729 40 is_stmt 0 view .LVU84
|
||
308 0000 0346 mov r3, r0
|
||
730:Middlewares/Third_Party/FatFs/src/ff.c **** while (*str && *str != chr) str++;
|
||
309 .loc 1 730 2 is_stmt 1 view .LVU85
|
||
310 .loc 1 730 8 is_stmt 0 view .LVU86
|
||
311 0002 00E0 b .L14
|
||
ARM GAS /tmp/ccH7dUYB.s page 19
|
||
|
||
|
||
312 .LVL33:
|
||
313 .L16:
|
||
314 .loc 1 730 30 is_stmt 1 discriminator 3 view .LVU87
|
||
315 .loc 1 730 33 is_stmt 0 discriminator 3 view .LVU88
|
||
316 0004 0133 adds r3, r3, #1
|
||
317 .LVL34:
|
||
318 .L14:
|
||
319 .loc 1 730 14 is_stmt 1 discriminator 1 view .LVU89
|
||
320 .loc 1 730 9 is_stmt 0 discriminator 1 view .LVU90
|
||
321 0006 1878 ldrb r0, [r3] @ zero_extendqisi2
|
||
322 .loc 1 730 14 discriminator 1 view .LVU91
|
||
323 0008 08B1 cbz r0, .L15
|
||
324 .loc 1 730 14 discriminator 2 view .LVU92
|
||
325 000a 8842 cmp r0, r1
|
||
326 000c FAD1 bne .L16
|
||
327 .L15:
|
||
731:Middlewares/Third_Party/FatFs/src/ff.c **** return *str;
|
||
328 .loc 1 731 2 is_stmt 1 view .LVU93
|
||
732:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
329 .loc 1 732 1 is_stmt 0 view .LVU94
|
||
330 000e 7047 bx lr
|
||
331 .cfi_endproc
|
||
332 .LFE1190:
|
||
334 .section .text.chk_lock,"ax",%progbits
|
||
335 .align 1
|
||
336 .syntax unified
|
||
337 .thumb
|
||
338 .thumb_func
|
||
340 chk_lock:
|
||
341 .LVL35:
|
||
342 .LFB1191:
|
||
733:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
734:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
735:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
736:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
737:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
738:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
739:Middlewares/Third_Party/FatFs/src/ff.c **** /* Request/Release grant to access the volume */
|
||
740:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
741:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
742:Middlewares/Third_Party/FatFs/src/ff.c **** int lock_fs (
|
||
743:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs /* File system object */
|
||
744:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
745:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
746:Middlewares/Third_Party/FatFs/src/ff.c **** return (fs && ff_req_grant(fs->sobj)) ? 1 : 0;
|
||
747:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
748:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
749:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
750:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
751:Middlewares/Third_Party/FatFs/src/ff.c **** void unlock_fs (
|
||
752:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* File system object */
|
||
753:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res /* Result code to be returned */
|
||
754:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
755:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
756:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs && res != FR_NOT_ENABLED && res != FR_INVALID_DRIVE && res != FR_TIMEOUT) {
|
||
757:Middlewares/Third_Party/FatFs/src/ff.c **** ff_rel_grant(fs->sobj);
|
||
758:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 20
|
||
|
||
|
||
759:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
760:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
761:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
762:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
763:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
764:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
765:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
766:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
767:Middlewares/Third_Party/FatFs/src/ff.c **** /* File lock control functions */
|
||
768:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
769:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
770:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
771:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT chk_lock ( /* Check if the file can be accessed */
|
||
772:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Directory object pointing the file to be checked */
|
||
773:Middlewares/Third_Party/FatFs/src/ff.c **** int acc /* Desired access type (0:Read, 1:Write, 2:Delete/Rename) */
|
||
774:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
775:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
343 .loc 1 775 1 is_stmt 1 view -0
|
||
344 .cfi_startproc
|
||
345 @ args = 0, pretend = 0, frame = 0
|
||
346 @ frame_needed = 0, uses_anonymous_args = 0
|
||
347 @ link register save eliminated.
|
||
348 .loc 1 775 1 is_stmt 0 view .LVU96
|
||
349 0000 10B4 push {r4}
|
||
350 .LCFI0:
|
||
351 .cfi_def_cfa_offset 4
|
||
352 .cfi_offset 4, -4
|
||
776:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, be;
|
||
353 .loc 1 776 2 is_stmt 1 view .LVU97
|
||
777:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
778:Middlewares/Third_Party/FatFs/src/ff.c **** /* Search file semaphore table */
|
||
779:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = be = 0; i < _FS_LOCK; i++) {
|
||
354 .loc 1 779 2 view .LVU98
|
||
355 .LVL36:
|
||
356 .loc 1 779 14 is_stmt 0 view .LVU99
|
||
357 0002 4FF0000C mov ip, #0
|
||
358 .loc 1 779 9 view .LVU100
|
||
359 0006 6346 mov r3, ip
|
||
360 .loc 1 779 2 view .LVU101
|
||
361 0008 02E0 b .L18
|
||
362 .LVL37:
|
||
363 .L25:
|
||
780:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */
|
||
781:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == dp->obj.fs && /* Check if the object matched with an open object */
|
||
782:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
783:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs == dp->dptr) break;
|
||
784:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Blank entry */
|
||
785:Middlewares/Third_Party/FatFs/src/ff.c **** be = 1;
|
||
364 .loc 1 785 7 view .LVU102
|
||
365 000a 4FF0010C mov ip, #1
|
||
366 .LVL38:
|
||
367 .L19:
|
||
779:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */
|
||
368 .loc 1 779 34 is_stmt 1 discriminator 2 view .LVU103
|
||
369 000e 0133 adds r3, r3, #1
|
||
370 .LVL39:
|
||
371 .L18:
|
||
ARM GAS /tmp/ccH7dUYB.s page 21
|
||
|
||
|
||
779:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */
|
||
372 .loc 1 779 21 discriminator 1 view .LVU104
|
||
373 0010 012B cmp r3, #1
|
||
374 0012 15D8 bhi .L20
|
||
780:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */
|
||
375 .loc 1 780 3 view .LVU105
|
||
780:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */
|
||
376 .loc 1 780 15 is_stmt 0 view .LVU106
|
||
377 0014 1A01 lsls r2, r3, #4
|
||
378 0016 184C ldr r4, .L32
|
||
379 0018 A258 ldr r2, [r4, r2]
|
||
780:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */
|
||
380 .loc 1 780 6 view .LVU107
|
||
381 001a 002A cmp r2, #0
|
||
382 001c F5D0 beq .L25
|
||
781:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
383 .loc 1 781 4 is_stmt 1 view .LVU108
|
||
781:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
384 .loc 1 781 30 is_stmt 0 view .LVU109
|
||
385 001e 0468 ldr r4, [r0]
|
||
781:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
386 .loc 1 781 7 view .LVU110
|
||
387 0020 A242 cmp r2, r4
|
||
388 0022 F4D1 bne .L19
|
||
782:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs == dp->dptr) break;
|
||
389 .loc 1 782 13 view .LVU111
|
||
390 0024 144A ldr r2, .L32
|
||
391 0026 02EB0312 add r2, r2, r3, lsl #4
|
||
392 002a 5468 ldr r4, [r2, #4]
|
||
782:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs == dp->dptr) break;
|
||
393 .loc 1 782 28 view .LVU112
|
||
394 002c 8268 ldr r2, [r0, #8]
|
||
781:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
395 .loc 1 781 34 discriminator 1 view .LVU113
|
||
396 002e 9442 cmp r4, r2
|
||
397 0030 EDD1 bne .L19
|
||
783:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Blank entry */
|
||
398 .loc 1 783 13 view .LVU114
|
||
399 0032 114A ldr r2, .L32
|
||
400 0034 02EB0312 add r2, r2, r3, lsl #4
|
||
401 0038 9468 ldr r4, [r2, #8]
|
||
783:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Blank entry */
|
||
402 .loc 1 783 23 view .LVU115
|
||
403 003a 4269 ldr r2, [r0, #20]
|
||
782:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs == dp->dptr) break;
|
||
404 .loc 1 782 36 view .LVU116
|
||
405 003c 9442 cmp r4, r2
|
||
406 003e E6D1 bne .L19
|
||
407 .L20:
|
||
786:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
787:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
788:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == _FS_LOCK) { /* The object is not opened */
|
||
408 .loc 1 788 2 is_stmt 1 view .LVU117
|
||
409 .loc 1 788 5 is_stmt 0 view .LVU118
|
||
410 0040 022B cmp r3, #2
|
||
411 0042 0BD0 beq .L30
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
ARM GAS /tmp/ccH7dUYB.s page 22
|
||
|
||
|
||
790:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
791:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
792:Middlewares/Third_Party/FatFs/src/ff.c **** /* The object has been opened. Reject any open against writing file and all write mode open */
|
||
793:Middlewares/Third_Party/FatFs/src/ff.c **** return (acc || Files[i].ctr == 0x100) ? FR_LOCKED : FR_OK;
|
||
412 .loc 1 793 2 is_stmt 1 view .LVU119
|
||
413 .loc 1 793 52 is_stmt 0 view .LVU120
|
||
414 0044 B1B9 cbnz r1, .L27
|
||
415 .loc 1 793 25 discriminator 2 view .LVU121
|
||
416 0046 0C4A ldr r2, .L32
|
||
417 0048 02EB0313 add r3, r2, r3, lsl #4
|
||
418 .LVL40:
|
||
419 .loc 1 793 25 discriminator 2 view .LVU122
|
||
420 004c 9B89 ldrh r3, [r3, #12]
|
||
421 .loc 1 793 14 discriminator 2 view .LVU123
|
||
422 004e B3F5807F cmp r3, #256
|
||
423 0052 0DD0 beq .L31
|
||
424 .loc 1 793 52 discriminator 4 view .LVU124
|
||
425 0054 0020 movs r0, #0
|
||
426 .LVL41:
|
||
427 .L24:
|
||
794:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
428 .loc 1 794 1 view .LVU125
|
||
429 0056 5DF8044B ldr r4, [sp], #4
|
||
430 .LCFI1:
|
||
431 .cfi_remember_state
|
||
432 .cfi_restore 4
|
||
433 .cfi_def_cfa_offset 0
|
||
434 005a 7047 bx lr
|
||
435 .LVL42:
|
||
436 .L30:
|
||
437 .LCFI2:
|
||
438 .cfi_restore_state
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
439 .loc 1 789 3 is_stmt 1 view .LVU126
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
440 .loc 1 789 14 is_stmt 0 view .LVU127
|
||
441 005c 0229 cmp r1, #2
|
||
442 005e 14BF ite ne
|
||
443 0060 6346 movne r3, ip
|
||
444 0062 4CF00103 orreq r3, ip, #1
|
||
445 .LVL43:
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
446 .loc 1 789 35 view .LVU128
|
||
447 0066 0BB1 cbz r3, .L26
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
448 .loc 1 789 35 discriminator 1 view .LVU129
|
||
449 0068 0020 movs r0, #0
|
||
450 .LVL44:
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
451 .loc 1 789 35 discriminator 1 view .LVU130
|
||
452 006a F4E7 b .L24
|
||
453 .LVL45:
|
||
454 .L26:
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
455 .loc 1 789 35 discriminator 2 view .LVU131
|
||
456 006c 1220 movs r0, #18
|
||
457 .LVL46:
|
||
ARM GAS /tmp/ccH7dUYB.s page 23
|
||
|
||
|
||
789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec
|
||
458 .loc 1 789 35 view .LVU132
|
||
459 006e F2E7 b .L24
|
||
460 .LVL47:
|
||
461 .L31:
|
||
793:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
462 .loc 1 793 52 discriminator 3 view .LVU133
|
||
463 0070 1020 movs r0, #16
|
||
464 .LVL48:
|
||
793:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
465 .loc 1 793 52 discriminator 3 view .LVU134
|
||
466 0072 F0E7 b .L24
|
||
467 .LVL49:
|
||
468 .L27:
|
||
793:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
469 .loc 1 793 52 discriminator 3 view .LVU135
|
||
470 0074 1020 movs r0, #16
|
||
471 .LVL50:
|
||
793:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
472 .loc 1 793 52 discriminator 3 view .LVU136
|
||
473 0076 EEE7 b .L24
|
||
474 .L33:
|
||
475 .align 2
|
||
476 .L32:
|
||
477 0078 00000000 .word Files
|
||
478 .cfi_endproc
|
||
479 .LFE1191:
|
||
481 .section .text.enq_lock,"ax",%progbits
|
||
482 .align 1
|
||
483 .syntax unified
|
||
484 .thumb
|
||
485 .thumb_func
|
||
487 enq_lock:
|
||
488 .LFB1192:
|
||
795:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
796:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
797:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
798:Middlewares/Third_Party/FatFs/src/ff.c **** int enq_lock (void) /* Check if an entry is available for a new object */
|
||
799:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
489 .loc 1 799 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.
|
||
800:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
494 .loc 1 800 2 view .LVU138
|
||
801:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
802:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
495 .loc 1 802 2 view .LVU139
|
||
496 .LVL51:
|
||
497 .loc 1 802 9 is_stmt 0 view .LVU140
|
||
498 0000 0020 movs r0, #0
|
||
499 .loc 1 802 2 view .LVU141
|
||
500 0002 00E0 b .L35
|
||
501 .LVL52:
|
||
502 .L37:
|
||
503 .loc 1 802 44 is_stmt 1 discriminator 4 view .LVU142
|
||
ARM GAS /tmp/ccH7dUYB.s page 24
|
||
|
||
|
||
504 0004 0130 adds r0, r0, #1
|
||
505 .LVL53:
|
||
506 .L35:
|
||
507 .loc 1 802 27 discriminator 1 view .LVU143
|
||
508 0006 0128 cmp r0, #1
|
||
509 0008 04D8 bhi .L36
|
||
510 .loc 1 802 38 is_stmt 0 discriminator 3 view .LVU144
|
||
511 000a 0301 lsls r3, r0, #4
|
||
512 000c 034A ldr r2, .L38
|
||
513 000e D358 ldr r3, [r2, r3]
|
||
514 .loc 1 802 27 discriminator 3 view .LVU145
|
||
515 0010 002B cmp r3, #0
|
||
516 0012 F7D1 bne .L37
|
||
517 .L36:
|
||
803:Middlewares/Third_Party/FatFs/src/ff.c **** return (i == _FS_LOCK) ? 0 : 1;
|
||
518 .loc 1 803 2 is_stmt 1 view .LVU146
|
||
804:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
519 .loc 1 804 1 is_stmt 0 view .LVU147
|
||
520 0014 0238 subs r0, r0, #2
|
||
521 .LVL54:
|
||
522 .loc 1 804 1 view .LVU148
|
||
523 0016 18BF it ne
|
||
524 0018 0120 movne r0, #1
|
||
525 .LVL55:
|
||
526 .loc 1 804 1 view .LVU149
|
||
527 001a 7047 bx lr
|
||
528 .L39:
|
||
529 .align 2
|
||
530 .L38:
|
||
531 001c 00000000 .word Files
|
||
532 .cfi_endproc
|
||
533 .LFE1192:
|
||
535 .section .text.inc_lock,"ax",%progbits
|
||
536 .align 1
|
||
537 .syntax unified
|
||
538 .thumb
|
||
539 .thumb_func
|
||
541 inc_lock:
|
||
542 .LVL56:
|
||
543 .LFB1193:
|
||
805:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
806:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
807:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
808:Middlewares/Third_Party/FatFs/src/ff.c **** UINT inc_lock ( /* Increment object open counter and returns its index (0:Internal error) */
|
||
809:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Directory object pointing the file to register or increment */
|
||
810:Middlewares/Third_Party/FatFs/src/ff.c **** int acc /* Desired access (0:Read, 1:Write, 2:Delete/Rename) */
|
||
811:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
812:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
544 .loc 1 812 1 is_stmt 1 view -0
|
||
545 .cfi_startproc
|
||
546 @ args = 0, pretend = 0, frame = 0
|
||
547 @ frame_needed = 0, uses_anonymous_args = 0
|
||
548 @ link register save eliminated.
|
||
549 .loc 1 812 1 is_stmt 0 view .LVU151
|
||
550 0000 70B4 push {r4, r5, r6}
|
||
551 .LCFI3:
|
||
552 .cfi_def_cfa_offset 12
|
||
ARM GAS /tmp/ccH7dUYB.s page 25
|
||
|
||
|
||
553 .cfi_offset 4, -12
|
||
554 .cfi_offset 5, -8
|
||
555 .cfi_offset 6, -4
|
||
813:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
556 .loc 1 813 2 is_stmt 1 view .LVU152
|
||
814:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
815:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
816:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK; i++) { /* Find the object */
|
||
557 .loc 1 816 2 view .LVU153
|
||
558 .LVL57:
|
||
559 .loc 1 816 9 is_stmt 0 view .LVU154
|
||
560 0002 0023 movs r3, #0
|
||
561 .loc 1 816 2 view .LVU155
|
||
562 0004 00E0 b .L41
|
||
563 .LVL58:
|
||
564 .L42:
|
||
565 .loc 1 816 29 is_stmt 1 discriminator 2 view .LVU156
|
||
566 0006 0133 adds r3, r3, #1
|
||
567 .LVL59:
|
||
568 .L41:
|
||
569 .loc 1 816 16 discriminator 1 view .LVU157
|
||
570 0008 012B cmp r3, #1
|
||
571 000a 13D8 bhi .L43
|
||
817:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == dp->obj.fs &&
|
||
572 .loc 1 817 3 view .LVU158
|
||
573 .loc 1 817 15 is_stmt 0 view .LVU159
|
||
574 000c 1A01 lsls r2, r3, #4
|
||
575 000e 234C ldr r4, .L57
|
||
576 0010 A458 ldr r4, [r4, r2]
|
||
577 .loc 1 817 29 view .LVU160
|
||
578 0012 0268 ldr r2, [r0]
|
||
579 .loc 1 817 6 view .LVU161
|
||
580 0014 9442 cmp r4, r2
|
||
581 0016 F6D1 bne .L42
|
||
818:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
582 .loc 1 818 12 view .LVU162
|
||
583 0018 204A ldr r2, .L57
|
||
584 001a 02EB0312 add r2, r2, r3, lsl #4
|
||
585 001e 5468 ldr r4, [r2, #4]
|
||
586 .loc 1 818 27 view .LVU163
|
||
587 0020 8268 ldr r2, [r0, #8]
|
||
817:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == dp->obj.fs &&
|
||
588 .loc 1 817 33 discriminator 1 view .LVU164
|
||
589 0022 9442 cmp r4, r2
|
||
590 0024 EFD1 bne .L42
|
||
819:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs == dp->dptr) break;
|
||
591 .loc 1 819 12 view .LVU165
|
||
592 0026 1D4A ldr r2, .L57
|
||
593 0028 02EB0312 add r2, r2, r3, lsl #4
|
||
594 002c 9468 ldr r4, [r2, #8]
|
||
595 .loc 1 819 22 view .LVU166
|
||
596 002e 4269 ldr r2, [r0, #20]
|
||
818:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu == dp->obj.sclust &&
|
||
597 .loc 1 818 35 view .LVU167
|
||
598 0030 9442 cmp r4, r2
|
||
599 0032 E8D1 bne .L42
|
||
600 .L43:
|
||
ARM GAS /tmp/ccH7dUYB.s page 26
|
||
|
||
|
||
820:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
821:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
822:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == _FS_LOCK) { /* Not opened. Register it as new. */
|
||
601 .loc 1 822 2 is_stmt 1 view .LVU168
|
||
602 .loc 1 822 5 is_stmt 0 view .LVU169
|
||
603 0034 022B cmp r3, #2
|
||
604 0036 08D0 beq .L56
|
||
605 .LVL60:
|
||
606 .L46:
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
824:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == _FS_LOCK) return 0; /* No free entry to register (int err) */
|
||
825:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].fs = dp->obj.fs;
|
||
826:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu = dp->obj.sclust;
|
||
827:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs = dp->dptr;
|
||
828:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ctr = 0;
|
||
829:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
830:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
831:Middlewares/Third_Party/FatFs/src/ff.c **** if (acc && Files[i].ctr) return 0; /* Access violation (int err) */
|
||
607 .loc 1 831 2 is_stmt 1 view .LVU170
|
||
608 .loc 1 831 5 is_stmt 0 view .LVU171
|
||
609 0038 F9B1 cbz r1, .L50
|
||
610 .loc 1 831 21 discriminator 1 view .LVU172
|
||
611 003a 184A ldr r2, .L57
|
||
612 003c 02EB0312 add r2, r2, r3, lsl #4
|
||
613 0040 9289 ldrh r2, [r2, #12]
|
||
614 .loc 1 831 10 discriminator 1 view .LVU173
|
||
615 0042 4ABB cbnz r2, .L54
|
||
832:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
833:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ctr = acc ? 0x100 : Files[i].ctr + 1; /* Set semaphore value */
|
||
616 .loc 1 833 15 discriminator 2 view .LVU174
|
||
617 0044 4FF48072 mov r2, #256
|
||
618 0048 1DE0 b .L51
|
||
619 .LVL61:
|
||
620 .L56:
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
621 .loc 1 823 10 view .LVU175
|
||
622 004a 0023 movs r3, #0
|
||
623 .LVL62:
|
||
624 .L45:
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
625 .loc 1 823 28 is_stmt 1 discriminator 1 view .LVU176
|
||
626 004c 012B cmp r3, #1
|
||
627 004e 05D8 bhi .L47
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
628 .loc 1 823 39 is_stmt 0 discriminator 3 view .LVU177
|
||
629 0050 1A01 lsls r2, r3, #4
|
||
630 0052 124C ldr r4, .L57
|
||
631 0054 A258 ldr r2, [r4, r2]
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
632 .loc 1 823 28 discriminator 3 view .LVU178
|
||
633 0056 0AB1 cbz r2, .L47
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
634 .loc 1 823 45 is_stmt 1 discriminator 4 view .LVU179
|
||
635 0058 0133 adds r3, r3, #1
|
||
636 .LVL63:
|
||
823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
|
||
637 .loc 1 823 45 is_stmt 0 discriminator 4 view .LVU180
|
||
ARM GAS /tmp/ccH7dUYB.s page 27
|
||
|
||
|
||
638 005a F7E7 b .L45
|
||
639 .L47:
|
||
824:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].fs = dp->obj.fs;
|
||
640 .loc 1 824 3 is_stmt 1 view .LVU181
|
||
824:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].fs = dp->obj.fs;
|
||
641 .loc 1 824 6 is_stmt 0 view .LVU182
|
||
642 005c 022B cmp r3, #2
|
||
643 005e 19D0 beq .L53
|
||
825:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu = dp->obj.sclust;
|
||
644 .loc 1 825 3 is_stmt 1 view .LVU183
|
||
825:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].clu = dp->obj.sclust;
|
||
645 .loc 1 825 15 is_stmt 0 view .LVU184
|
||
646 0060 0E4D ldr r5, .L57
|
||
647 0062 1C01 lsls r4, r3, #4
|
||
648 0064 05EB0312 add r2, r5, r3, lsl #4
|
||
649 0068 0668 ldr r6, [r0]
|
||
650 006a 2E51 str r6, [r5, r4]
|
||
826:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs = dp->dptr;
|
||
651 .loc 1 826 3 is_stmt 1 view .LVU185
|
||
826:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs = dp->dptr;
|
||
652 .loc 1 826 25 is_stmt 0 view .LVU186
|
||
653 006c 8468 ldr r4, [r0, #8]
|
||
826:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ofs = dp->dptr;
|
||
654 .loc 1 826 16 view .LVU187
|
||
655 006e 5460 str r4, [r2, #4]
|
||
827:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ctr = 0;
|
||
656 .loc 1 827 3 is_stmt 1 view .LVU188
|
||
827:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ctr = 0;
|
||
657 .loc 1 827 20 is_stmt 0 view .LVU189
|
||
658 0070 4069 ldr r0, [r0, #20]
|
||
659 .LVL64:
|
||
827:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ctr = 0;
|
||
660 .loc 1 827 16 view .LVU190
|
||
661 0072 9060 str r0, [r2, #8]
|
||
828:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
662 .loc 1 828 3 is_stmt 1 view .LVU191
|
||
828:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
663 .loc 1 828 16 is_stmt 0 view .LVU192
|
||
664 0074 0020 movs r0, #0
|
||
665 0076 9081 strh r0, [r2, #12] @ movhi
|
||
666 0078 DEE7 b .L46
|
||
667 .L50:
|
||
668 .loc 1 833 39 discriminator 1 view .LVU193
|
||
669 007a 084A ldr r2, .L57
|
||
670 007c 02EB0312 add r2, r2, r3, lsl #4
|
||
671 0080 9289 ldrh r2, [r2, #12]
|
||
672 .loc 1 833 15 discriminator 1 view .LVU194
|
||
673 0082 0132 adds r2, r2, #1
|
||
674 0084 92B2 uxth r2, r2
|
||
675 .L51:
|
||
676 .loc 1 833 15 discriminator 4 view .LVU195
|
||
677 0086 0549 ldr r1, .L57
|
||
678 .LVL65:
|
||
679 .loc 1 833 15 discriminator 4 view .LVU196
|
||
680 0088 01EB0311 add r1, r1, r3, lsl #4
|
||
681 008c 8A81 strh r2, [r1, #12] @ movhi
|
||
834:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 28
|
||
|
||
|
||
835:Middlewares/Third_Party/FatFs/src/ff.c **** return i + 1;
|
||
682 .loc 1 835 2 is_stmt 1 view .LVU197
|
||
683 .loc 1 835 11 is_stmt 0 view .LVU198
|
||
684 008e 581C adds r0, r3, #1
|
||
685 .L40:
|
||
836:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
686 .loc 1 836 1 view .LVU199
|
||
687 0090 70BC pop {r4, r5, r6}
|
||
688 .LCFI4:
|
||
689 .cfi_remember_state
|
||
690 .cfi_restore 6
|
||
691 .cfi_restore 5
|
||
692 .cfi_restore 4
|
||
693 .cfi_def_cfa_offset 0
|
||
694 0092 7047 bx lr
|
||
695 .LVL66:
|
||
696 .L53:
|
||
697 .LCFI5:
|
||
698 .cfi_restore_state
|
||
824:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].fs = dp->obj.fs;
|
||
699 .loc 1 824 29 discriminator 1 view .LVU200
|
||
700 0094 0020 movs r0, #0
|
||
701 .LVL67:
|
||
824:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].fs = dp->obj.fs;
|
||
702 .loc 1 824 29 discriminator 1 view .LVU201
|
||
703 0096 FBE7 b .L40
|
||
704 .L54:
|
||
831:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
705 .loc 1 831 34 discriminator 2 view .LVU202
|
||
706 0098 0020 movs r0, #0
|
||
707 009a F9E7 b .L40
|
||
708 .L58:
|
||
709 .align 2
|
||
710 .L57:
|
||
711 009c 00000000 .word Files
|
||
712 .cfi_endproc
|
||
713 .LFE1193:
|
||
715 .section .text.dec_lock,"ax",%progbits
|
||
716 .align 1
|
||
717 .syntax unified
|
||
718 .thumb
|
||
719 .thumb_func
|
||
721 dec_lock:
|
||
722 .LVL68:
|
||
723 .LFB1194:
|
||
837:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
838:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
839:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
840:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dec_lock ( /* Decrement object open counter */
|
||
841:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i /* Semaphore index (1..) */
|
||
842:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
843:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
724 .loc 1 843 1 is_stmt 1 view -0
|
||
725 .cfi_startproc
|
||
726 @ args = 0, pretend = 0, frame = 0
|
||
727 @ frame_needed = 0, uses_anonymous_args = 0
|
||
728 @ link register save eliminated.
|
||
ARM GAS /tmp/ccH7dUYB.s page 29
|
||
|
||
|
||
844:Middlewares/Third_Party/FatFs/src/ff.c **** WORD n;
|
||
729 .loc 1 844 2 view .LVU204
|
||
845:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
730 .loc 1 845 2 view .LVU205
|
||
846:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
847:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
848:Middlewares/Third_Party/FatFs/src/ff.c **** if (--i < _FS_LOCK) { /* Shift index number origin from 0 */
|
||
731 .loc 1 848 2 view .LVU206
|
||
732 .loc 1 848 5 is_stmt 0 view .LVU207
|
||
733 0000 0138 subs r0, r0, #1
|
||
734 .LVL69:
|
||
735 .loc 1 848 5 view .LVU208
|
||
736 0002 0128 cmp r0, #1
|
||
737 0004 15D8 bhi .L63
|
||
849:Middlewares/Third_Party/FatFs/src/ff.c **** n = Files[i].ctr;
|
||
738 .loc 1 849 3 is_stmt 1 view .LVU209
|
||
739 .loc 1 849 5 is_stmt 0 view .LVU210
|
||
740 0006 0D4B ldr r3, .L66
|
||
741 0008 03EB0013 add r3, r3, r0, lsl #4
|
||
742 000c 9B89 ldrh r3, [r3, #12]
|
||
743 .LVL70:
|
||
850:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 0x100) n = 0; /* If write mode open, delete the entry */
|
||
744 .loc 1 850 3 is_stmt 1 view .LVU211
|
||
745 .loc 1 850 6 is_stmt 0 view .LVU212
|
||
746 000e B3F5807F cmp r3, #256
|
||
747 0012 03D0 beq .L64
|
||
851:Middlewares/Third_Party/FatFs/src/ff.c **** if (n > 0) n--; /* Decrement read mode open count */
|
||
748 .loc 1 851 3 is_stmt 1 view .LVU213
|
||
749 .loc 1 851 6 is_stmt 0 view .LVU214
|
||
750 0014 43B1 cbz r3, .L62
|
||
751 .loc 1 851 14 is_stmt 1 discriminator 1 view .LVU215
|
||
752 .loc 1 851 15 is_stmt 0 discriminator 1 view .LVU216
|
||
753 0016 013B subs r3, r3, #1
|
||
754 .LVL71:
|
||
755 .loc 1 851 15 discriminator 1 view .LVU217
|
||
756 0018 9BB2 uxth r3, r3
|
||
757 .LVL72:
|
||
758 .loc 1 851 15 discriminator 1 view .LVU218
|
||
759 001a 00E0 b .L61
|
||
760 .L64:
|
||
850:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 0x100) n = 0; /* If write mode open, delete the entry */
|
||
761 .loc 1 850 21 discriminator 1 view .LVU219
|
||
762 001c 0023 movs r3, #0
|
||
763 .LVL73:
|
||
764 .L61:
|
||
852:Middlewares/Third_Party/FatFs/src/ff.c **** Files[i].ctr = n;
|
||
765 .loc 1 852 3 is_stmt 1 view .LVU220
|
||
766 .loc 1 852 16 is_stmt 0 view .LVU221
|
||
767 001e 074A ldr r2, .L66
|
||
768 0020 02EB0012 add r2, r2, r0, lsl #4
|
||
769 0024 9381 strh r3, [r2, #12] @ movhi
|
||
853:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 0) Files[i].fs = 0; /* Delete the entry if open count gets zero */
|
||
770 .loc 1 853 3 is_stmt 1 view .LVU222
|
||
771 .loc 1 853 6 is_stmt 0 view .LVU223
|
||
772 0026 33B9 cbnz r3, .L65
|
||
773 .L62:
|
||
774 .LVL74:
|
||
ARM GAS /tmp/ccH7dUYB.s page 30
|
||
|
||
|
||
775 .loc 1 853 15 is_stmt 1 discriminator 1 view .LVU224
|
||
776 .loc 1 853 27 is_stmt 0 discriminator 1 view .LVU225
|
||
777 0028 0301 lsls r3, r0, #4
|
||
778 002a 0020 movs r0, #0
|
||
779 .LVL75:
|
||
780 .loc 1 853 27 discriminator 1 view .LVU226
|
||
781 002c 034A ldr r2, .L66
|
||
782 002e D050 str r0, [r2, r3]
|
||
783 0030 7047 bx lr
|
||
784 .LVL76:
|
||
785 .L63:
|
||
854:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
855:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
856:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR; /* Invalid index nunber */
|
||
786 .loc 1 856 7 view .LVU227
|
||
787 0032 0220 movs r0, #2
|
||
788 .LVL77:
|
||
789 .loc 1 856 7 view .LVU228
|
||
790 0034 7047 bx lr
|
||
791 .LVL78:
|
||
792 .L65:
|
||
854:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
793 .loc 1 854 7 view .LVU229
|
||
794 0036 0020 movs r0, #0
|
||
795 .LVL79:
|
||
857:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
858:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
796 .loc 1 858 2 is_stmt 1 view .LVU230
|
||
859:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
797 .loc 1 859 1 is_stmt 0 view .LVU231
|
||
798 0038 7047 bx lr
|
||
799 .L67:
|
||
800 003a 00BF .align 2
|
||
801 .L66:
|
||
802 003c 00000000 .word Files
|
||
803 .cfi_endproc
|
||
804 .LFE1194:
|
||
806 .section .text.clear_lock,"ax",%progbits
|
||
807 .align 1
|
||
808 .syntax unified
|
||
809 .thumb
|
||
810 .thumb_func
|
||
812 clear_lock:
|
||
813 .LVL80:
|
||
814 .LFB1195:
|
||
860:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
861:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
862:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
863:Middlewares/Third_Party/FatFs/src/ff.c **** void clear_lock ( /* Clear lock entries of the volume */
|
||
864:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs
|
||
865:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
866:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
815 .loc 1 866 1 is_stmt 1 view -0
|
||
816 .cfi_startproc
|
||
817 @ args = 0, pretend = 0, frame = 0
|
||
818 @ frame_needed = 0, uses_anonymous_args = 0
|
||
819 @ link register save eliminated.
|
||
ARM GAS /tmp/ccH7dUYB.s page 31
|
||
|
||
|
||
867:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
820 .loc 1 867 2 view .LVU233
|
||
868:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
869:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK; i++) {
|
||
821 .loc 1 869 2 view .LVU234
|
||
822 .loc 1 869 9 is_stmt 0 view .LVU235
|
||
823 0000 0023 movs r3, #0
|
||
824 .loc 1 869 2 view .LVU236
|
||
825 0002 03E0 b .L73
|
||
826 .LVL81:
|
||
827 .L80:
|
||
828 .LCFI6:
|
||
829 .cfi_def_cfa_offset 4
|
||
830 .cfi_offset 4, -4
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
871:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
872:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
831 .loc 1 872 1 view .LVU237
|
||
832 0004 5DF8044B ldr r4, [sp], #4
|
||
833 .LCFI7:
|
||
834 .cfi_restore 4
|
||
835 .cfi_def_cfa_offset 0
|
||
836 0008 7047 bx lr
|
||
837 .L79:
|
||
869:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
838 .loc 1 869 29 is_stmt 1 discriminator 2 view .LVU238
|
||
839 000a 0133 adds r3, r3, #1
|
||
840 .LVL82:
|
||
841 .L73:
|
||
869:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
842 .loc 1 869 16 discriminator 1 view .LVU239
|
||
843 000c 012B cmp r3, #1
|
||
844 000e 11D8 bhi .L78
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
845 .loc 1 870 3 view .LVU240
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
846 .loc 1 870 15 is_stmt 0 view .LVU241
|
||
847 0010 1A01 lsls r2, r3, #4
|
||
848 0012 0949 ldr r1, .L81
|
||
849 0014 8A58 ldr r2, [r1, r2]
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
850 .loc 1 870 6 view .LVU242
|
||
851 0016 8242 cmp r2, r0
|
||
852 0018 F7D1 bne .L79
|
||
866:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
853 .loc 1 866 1 view .LVU243
|
||
854 001a 10B4 push {r4}
|
||
855 .LCFI8:
|
||
856 .cfi_def_cfa_offset 4
|
||
857 .cfi_offset 4, -4
|
||
858 .L74:
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
859 .loc 1 870 26 is_stmt 1 discriminator 1 view .LVU244
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
860 .loc 1 870 38 is_stmt 0 discriminator 1 view .LVU245
|
||
861 001c 1A01 lsls r2, r3, #4
|
||
862 001e 0024 movs r4, #0
|
||
ARM GAS /tmp/ccH7dUYB.s page 32
|
||
|
||
|
||
863 0020 8C50 str r4, [r1, r2]
|
||
864 .L70:
|
||
869:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
865 .loc 1 869 29 is_stmt 1 discriminator 2 view .LVU246
|
||
866 0022 0133 adds r3, r3, #1
|
||
867 .LVL83:
|
||
869:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
868 .loc 1 869 16 discriminator 1 view .LVU247
|
||
869 0024 012B cmp r3, #1
|
||
870 0026 EDD8 bhi .L80
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
871 .loc 1 870 3 view .LVU248
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
872 .loc 1 870 15 is_stmt 0 view .LVU249
|
||
873 0028 1A01 lsls r2, r3, #4
|
||
874 002a 0349 ldr r1, .L81
|
||
875 002c 8A58 ldr r2, [r1, r2]
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
876 .loc 1 870 6 view .LVU250
|
||
877 002e 8242 cmp r2, r0
|
||
878 0030 F7D1 bne .L70
|
||
879 0032 F3E7 b .L74
|
||
880 .L78:
|
||
881 .LCFI9:
|
||
882 .cfi_def_cfa_offset 0
|
||
883 .cfi_restore 4
|
||
870:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs == fs) Files[i].fs = 0;
|
||
884 .loc 1 870 6 view .LVU251
|
||
885 0034 7047 bx lr
|
||
886 .L82:
|
||
887 0036 00BF .align 2
|
||
888 .L81:
|
||
889 0038 00000000 .word Files
|
||
890 .cfi_endproc
|
||
891 .LFE1195:
|
||
893 .section .text.clust2sect,"ax",%progbits
|
||
894 .align 1
|
||
895 .syntax unified
|
||
896 .thumb
|
||
897 .thumb_func
|
||
899 clust2sect:
|
||
900 .LVL84:
|
||
901 .LFB1199:
|
||
873:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
874:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_LOCK != 0 */
|
||
875:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
876:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
877:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
878:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
879:Middlewares/Third_Party/FatFs/src/ff.c **** /* Move/Flush disk access window in the file system object */
|
||
880:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
881:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
882:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
883:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT sync_window ( /* Returns FR_OK or FR_DISK_ERROR */
|
||
884:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs /* File system object */
|
||
885:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
886:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
ARM GAS /tmp/ccH7dUYB.s page 33
|
||
|
||
|
||
887:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD wsect;
|
||
888:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nf;
|
||
889:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
890:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
891:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
892:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->wflag) { /* Write back the sector if it is dirty */
|
||
893:Middlewares/Third_Party/FatFs/src/ff.c **** wsect = fs->winsect; /* Current sector number */
|
||
894:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fs->win, wsect, 1) != RES_OK) {
|
||
895:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
896:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
897:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 0;
|
||
898:Middlewares/Third_Party/FatFs/src/ff.c **** if (wsect - fs->fatbase < fs->fsize) { /* Is it in the FAT area? */
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** for (nf = fs->n_fats; nf >= 2; nf--) { /* Reflect the change to all FAT copies */
|
||
900:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
901:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, wsect, 1);
|
||
902:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
903:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
904:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
905:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
906:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
907:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
908:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
909:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
910:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
911:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
912:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT move_window ( /* Returns FR_OK or FR_DISK_ERROR */
|
||
913:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* File system object */
|
||
914:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sector /* Sector number to make appearance in the fs->win[] */
|
||
915:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
916:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
917:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
918:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
919:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
920:Middlewares/Third_Party/FatFs/src/ff.c **** if (sector != fs->winsect) { /* Window offset changed? */
|
||
921:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
922:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_window(fs); /* Write-back changes */
|
||
923:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
924:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Fill sector window with new data */
|
||
925:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fs->win, sector, 1) != RES_OK) {
|
||
926:Middlewares/Third_Party/FatFs/src/ff.c **** sector = 0xFFFFFFFF; /* Invalidate window if data is not reliable */
|
||
927:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
928:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
929:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = sector;
|
||
930:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
931:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
932:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
933:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
934:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
935:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
936:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
937:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
938:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
939:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
940:Middlewares/Third_Party/FatFs/src/ff.c **** /* Synchronize file system and strage device */
|
||
941:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
942:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
943:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
ARM GAS /tmp/ccH7dUYB.s page 34
|
||
|
||
|
||
944:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT sync_fs ( /* FR_OK:succeeded, !=0:error */
|
||
945:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs /* File system object */
|
||
946:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
947:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
948:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
949:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
950:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
951:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_window(fs);
|
||
952:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
953:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update FSInfo sector if needed */
|
||
954:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32 && fs->fsi_flag == 1) {
|
||
955:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSInfo structure */
|
||
956:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs));
|
||
957:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + BS_55AA, 0xAA55);
|
||
958:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_LeadSig, 0x41615252);
|
||
959:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_StrucSig, 0x61417272);
|
||
960:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_Free_Count, fs->free_clst);
|
||
961:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_Nxt_Free, fs->last_clst);
|
||
962:Middlewares/Third_Party/FatFs/src/ff.c **** /* Write it into the FSInfo sector */
|
||
963:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = fs->volbase + 1;
|
||
964:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, fs->winsect, 1);
|
||
965:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0;
|
||
966:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
967:Middlewares/Third_Party/FatFs/src/ff.c **** /* Make sure that no pending write process in the physical drive */
|
||
968:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(fs->drv, CTRL_SYNC, 0) != RES_OK) res = FR_DISK_ERR;
|
||
969:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
970:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
971:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
972:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
973:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
974:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
975:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
976:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
977:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
978:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
979:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get sector# from cluster# */
|
||
980:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
981:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
982:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
983:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clust2sect ( /* !=0:Sector number, 0:Failed (invalid cluster#) */
|
||
984:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* File system object */
|
||
985:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst /* Cluster# to be converted */
|
||
986:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
987:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
902 .loc 1 987 1 is_stmt 1 view -0
|
||
903 .cfi_startproc
|
||
904 @ args = 0, pretend = 0, frame = 0
|
||
905 @ frame_needed = 0, uses_anonymous_args = 0
|
||
906 @ link register save eliminated.
|
||
988:Middlewares/Third_Party/FatFs/src/ff.c **** clst -= 2;
|
||
907 .loc 1 988 2 view .LVU253
|
||
908 .loc 1 988 7 is_stmt 0 view .LVU254
|
||
909 0000 0239 subs r1, r1, #2
|
||
910 .LVL85:
|
||
989:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent - 2) return 0; /* Invalid cluster# */
|
||
911 .loc 1 989 2 is_stmt 1 view .LVU255
|
||
912 .loc 1 989 16 is_stmt 0 view .LVU256
|
||
ARM GAS /tmp/ccH7dUYB.s page 35
|
||
|
||
|
||
913 0002 8369 ldr r3, [r0, #24]
|
||
914 .loc 1 989 27 view .LVU257
|
||
915 0004 023B subs r3, r3, #2
|
||
916 .loc 1 989 5 view .LVU258
|
||
917 0006 8B42 cmp r3, r1
|
||
918 0008 04D9 bls .L85
|
||
990:Middlewares/Third_Party/FatFs/src/ff.c **** return clst * fs->csize + fs->database;
|
||
919 .loc 1 990 2 is_stmt 1 view .LVU259
|
||
920 .loc 1 990 18 is_stmt 0 view .LVU260
|
||
921 000a 4389 ldrh r3, [r0, #10]
|
||
922 .loc 1 990 30 view .LVU261
|
||
923 000c C06A ldr r0, [r0, #44]
|
||
924 .LVL86:
|
||
925 .loc 1 990 26 view .LVU262
|
||
926 000e 01FB0300 mla r0, r1, r3, r0
|
||
927 0012 7047 bx lr
|
||
928 .LVL87:
|
||
929 .L85:
|
||
989:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent - 2) return 0; /* Invalid cluster# */
|
||
930 .loc 1 989 39 discriminator 1 view .LVU263
|
||
931 0014 0020 movs r0, #0
|
||
932 .LVL88:
|
||
991:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
933 .loc 1 991 1 view .LVU264
|
||
934 0016 7047 bx lr
|
||
935 .cfi_endproc
|
||
936 .LFE1199:
|
||
938 .section .text.clmt_clust,"ax",%progbits
|
||
939 .align 1
|
||
940 .syntax unified
|
||
941 .thumb
|
||
942 .thumb_func
|
||
944 clmt_clust:
|
||
945 .LVL89:
|
||
946 .LFB1204:
|
||
992:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
993:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
994:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
995:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
996:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
997:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT access - Read value of a FAT entry */
|
||
998:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
999:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1000:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1001:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD get_fat ( /* 0xFFFFFFFF:Disk error, 1:Internal error, 2..0x7FFFFFFF:Cluster status */
|
||
1002:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID* obj, /* Corresponding object */
|
||
1003:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst /* Cluster number to get the value */
|
||
1004:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1005:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1006:Middlewares/Third_Party/FatFs/src/ff.c **** UINT wc, bc;
|
||
1007:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD val;
|
||
1008:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
1009:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1010:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1011:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) { /* Check if in valid range */
|
||
1012:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */
|
||
1013:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 36
|
||
|
||
|
||
1014:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1015:Middlewares/Third_Party/FatFs/src/ff.c **** val = 0xFFFFFFFF; /* Default value falls on disk error */
|
||
1016:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1017:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
1018:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 :
|
||
1019:Middlewares/Third_Party/FatFs/src/ff.c **** bc = (UINT)clst; bc += bc / 2;
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
1021:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
1022:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
1023:Middlewares/Third_Party/FatFs/src/ff.c **** wc |= fs->win[bc % SS(fs)] << 8;
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** val = (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
|
||
1025:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1026:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1027:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT16 :
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (clst / (SS(fs) / 2))) != FR_OK) break;
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
1030:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1031:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1032:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT32 :
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (clst / (SS(fs) / 4))) != FR_OK) break;
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
1035:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1036:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1037:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_EXFAT :
|
||
1038:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->objsize) {
|
||
1039:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cofs = clst - obj->sclust; /* Offset from start cluster */
|
||
1040:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clen = (DWORD)((obj->objsize - 1) / SS(fs)) / fs->csize; /* Number of clusters - 1 */
|
||
1041:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1042:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat == 2) { /* Is there no valid chain on the FAT? */
|
||
1043:Middlewares/Third_Party/FatFs/src/ff.c **** if (cofs <= clen) {
|
||
1044:Middlewares/Third_Party/FatFs/src/ff.c **** val = (cofs == clen) ? 0x7FFFFFFF : clst + 1; /* Generate the value */
|
||
1045:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1046:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1047:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1048:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat == 3 && cofs < obj->n_cont) { /* Is it in the 1st fragment? */
|
||
1049:Middlewares/Third_Party/FatFs/src/ff.c **** val = clst + 1; /* Generate the value */
|
||
1050:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1051:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1052:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat != 2) { /* Get value from FAT if FAT chain is valid */
|
||
1053:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->n_frag != 0) { /* Is it on the growing edge? */
|
||
1054:Middlewares/Third_Party/FatFs/src/ff.c **** val = 0x7FFFFFFF; /* Generate EOC */
|
||
1055:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1056:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (clst / (SS(fs) / 4))) != FR_OK) break;
|
||
1057:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x7FFFFFFF;
|
||
1058:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1059:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1060:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1061:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1062:Middlewares/Third_Party/FatFs/src/ff.c **** /* go to default */
|
||
1063:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1064:Middlewares/Third_Party/FatFs/src/ff.c **** default:
|
||
1065:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */
|
||
1066:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1067:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1068:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1069:Middlewares/Third_Party/FatFs/src/ff.c **** return val;
|
||
1070:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 37
|
||
|
||
|
||
1071:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1072:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1073:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1074:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1075:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1076:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1077:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT access - Change value of a FAT entry */
|
||
1078:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1079:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1080:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1081:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT put_fat ( /* FR_OK(0):succeeded, !=0:error */
|
||
1082:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* Corresponding file system object */
|
||
1083:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, /* FAT index number (cluster number) to be changed */
|
||
1084:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD val /* New value to be set to the entry */
|
||
1085:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1086:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1087:Middlewares/Third_Party/FatFs/src/ff.c **** UINT bc;
|
||
1088:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *p;
|
||
1089:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_INT_ERR;
|
||
1090:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1091:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= 2 && clst < fs->n_fatent) { /* Check if in valid range */
|
||
1092:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
1093:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 : /* Bitfield items */
|
||
1094:Middlewares/Third_Party/FatFs/src/ff.c **** bc = (UINT)clst; bc += bc / 2;
|
||
1095:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
1096:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
1097:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win + bc++ % SS(fs);
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
|
||
1099:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
1101:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
1102:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win + bc % SS(fs);
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F));
|
||
1104:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
1105:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1106:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1107:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT16 : /* WORD aligned items */
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (clst / (SS(fs) / 2)));
|
||
1109:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + clst * 2 % SS(fs), (WORD)val);
|
||
1111:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
1112:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1113:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1114:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT32 : /* DWORD aligned items */
|
||
1115:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1116:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_EXFAT :
|
||
1117:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (clst / (SS(fs) / 4)));
|
||
1119:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
1120:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** val = (val & 0x0FFFFFFF) | (ld_dword(fs->win + clst * 4 % SS(fs)) & 0xF0000000);
|
||
1122:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1123:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + clst * 4 % SS(fs), val);
|
||
1124:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
1125:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
1126:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1127:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 38
|
||
|
||
|
||
1128:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1129:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1130:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1131:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
1132:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1134:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1135:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1136:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT && !_FS_READONLY
|
||
1137:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1138:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Accessing FAT and Allocation Bitmap */
|
||
1139:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1140:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1141:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------*/
|
||
1142:Middlewares/Third_Party/FatFs/src/ff.c **** /* Find a contiguous free cluster block */
|
||
1143:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------*/
|
||
1144:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1145:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1146:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD find_bitmap ( /* 0:Not found, 2..:Cluster block found, 0xFFFFFFFF:Disk error */
|
||
1147:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* File system object */
|
||
1148:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, /* Cluster number to scan from */
|
||
1149:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ncl /* Number of contiguous clusters to find (1..) */
|
||
1150:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1151:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1152:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE bm, bv;
|
||
1153:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
1154:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD val, scl, ctr;
|
||
1155:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1156:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1157:Middlewares/Third_Party/FatFs/src/ff.c **** clst -= 2; /* The first bit in the bitmap corresponds to cluster #2 */
|
||
1158:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent - 2) clst = 0;
|
||
1159:Middlewares/Third_Party/FatFs/src/ff.c **** scl = val = clst; ctr = 0;
|
||
1160:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
1161:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->database + val / 8 / SS(fs)) != FR_OK) return 0xFFFFFFFF; /* (assuming bi
|
||
1162:Middlewares/Third_Party/FatFs/src/ff.c **** i = val / 8 % SS(fs); bm = 1 << (val % 8);
|
||
1163:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1164:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1165:Middlewares/Third_Party/FatFs/src/ff.c **** bv = fs->win[i] & bm; bm <<= 1; /* Get bit value */
|
||
1166:Middlewares/Third_Party/FatFs/src/ff.c **** if (++val >= fs->n_fatent - 2) { /* Next cluster (with wrap-around) */
|
||
1167:Middlewares/Third_Party/FatFs/src/ff.c **** val = 0; bm = 0; i = SS(fs);
|
||
1168:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1169:Middlewares/Third_Party/FatFs/src/ff.c **** if (!bv) { /* Is it a free cluster? */
|
||
1170:Middlewares/Third_Party/FatFs/src/ff.c **** if (++ctr == ncl) return scl + 2; /* Check if run length is sufficient for required */
|
||
1171:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1172:Middlewares/Third_Party/FatFs/src/ff.c **** scl = val; ctr = 0; /* Encountered a cluster in-use, restart to scan */
|
||
1173:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1174:Middlewares/Third_Party/FatFs/src/ff.c **** if (val == clst) return 0; /* All cluster scanned? */
|
||
1175:Middlewares/Third_Party/FatFs/src/ff.c **** } while (bm);
|
||
1176:Middlewares/Third_Party/FatFs/src/ff.c **** bm = 1;
|
||
1177:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++i < SS(fs));
|
||
1178:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1179:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1180:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1181:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1182:Middlewares/Third_Party/FatFs/src/ff.c **** /*----------------------------------------*/
|
||
1183:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set/Clear a block of allocation bitmap */
|
||
1184:Middlewares/Third_Party/FatFs/src/ff.c **** /*----------------------------------------*/
|
||
ARM GAS /tmp/ccH7dUYB.s page 39
|
||
|
||
|
||
1185:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1186:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1187:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT change_bitmap (
|
||
1188:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* File system object */
|
||
1189:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, /* Cluster number to change from */
|
||
1190:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ncl, /* Number of clusters to be changed */
|
||
1191:Middlewares/Third_Party/FatFs/src/ff.c **** int bv /* bit value to be set (0 or 1) */
|
||
1192:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1193:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1194:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE bm;
|
||
1195:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
1196:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sect;
|
||
1197:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1198:Middlewares/Third_Party/FatFs/src/ff.c **** clst -= 2; /* The first bit corresponds to cluster #2 */
|
||
1199:Middlewares/Third_Party/FatFs/src/ff.c **** sect = fs->database + clst / 8 / SS(fs); /* Sector address (assuming bitmap is located top of the
|
||
1200:Middlewares/Third_Party/FatFs/src/ff.c **** i = clst / 8 % SS(fs); /* Byte offset in the sector */
|
||
1201:Middlewares/Third_Party/FatFs/src/ff.c **** bm = 1 << (clst % 8); /* Bit mask in the byte */
|
||
1202:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
1203:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect++) != FR_OK) return FR_DISK_ERR;
|
||
1204:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1205:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1206:Middlewares/Third_Party/FatFs/src/ff.c **** if (bv == (int)((fs->win[i] & bm) != 0)) return FR_INT_ERR; /* Is the bit expected value? */
|
||
1207:Middlewares/Third_Party/FatFs/src/ff.c **** fs->win[i] ^= bm; /* Flip the bit */
|
||
1208:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
1209:Middlewares/Third_Party/FatFs/src/ff.c **** if (--ncl == 0) return FR_OK; /* All bits processed? */
|
||
1210:Middlewares/Third_Party/FatFs/src/ff.c **** } while (bm <<= 1); /* Next bit */
|
||
1211:Middlewares/Third_Party/FatFs/src/ff.c **** bm = 1;
|
||
1212:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++i < SS(fs)); /* Next byte */
|
||
1213:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0;
|
||
1214:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1215:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1216:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1217:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1218:Middlewares/Third_Party/FatFs/src/ff.c **** /*---------------------------------------------*/
|
||
1219:Middlewares/Third_Party/FatFs/src/ff.c **** /* Fill the first fragment of the FAT chain */
|
||
1220:Middlewares/Third_Party/FatFs/src/ff.c **** /*---------------------------------------------*/
|
||
1221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1222:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1223:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT fill_first_frag (
|
||
1224:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID* obj /* Pointer to the corresponding object */
|
||
1225:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1226:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1227:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
1228:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cl, n;
|
||
1229:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1230:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat == 3) { /* Has the object been changed 'fragmented'? */
|
||
1231:Middlewares/Third_Party/FatFs/src/ff.c **** for (cl = obj->sclust, n = obj->n_cont; n; cl++, n--) { /* Create cluster chain on the FAT */
|
||
1232:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(obj->fs, cl, cl + 1);
|
||
1233:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1234:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1235:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = 0; /* Change status 'FAT chain is valid' */
|
||
1236:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1237:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
1238:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1239:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1240:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1241:Middlewares/Third_Party/FatFs/src/ff.c **** /*---------------------------------------------*/
|
||
ARM GAS /tmp/ccH7dUYB.s page 40
|
||
|
||
|
||
1242:Middlewares/Third_Party/FatFs/src/ff.c **** /* Fill the last fragment of the FAT chain */
|
||
1243:Middlewares/Third_Party/FatFs/src/ff.c **** /*---------------------------------------------*/
|
||
1244:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1245:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1246:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT fill_last_frag (
|
||
1247:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID* obj, /* Pointer to the corresponding object */
|
||
1248:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD lcl, /* Last cluster of the fragment */
|
||
1249:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD term /* Value to set the last FAT entry */
|
||
1250:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1251:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1252:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
1253:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1254:Middlewares/Third_Party/FatFs/src/ff.c **** while (obj->n_frag > 0) { /* Create the last chain on the FAT */
|
||
1255:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(obj->fs, lcl - obj->n_frag + 1, (obj->n_frag > 1) ? lcl - obj->n_frag + 2 : term);
|
||
1256:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1257:Middlewares/Third_Party/FatFs/src/ff.c **** obj->n_frag--;
|
||
1258:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1259:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
1260:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1261:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1262:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_EXFAT && !_FS_READONLY */
|
||
1263:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1264:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1265:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1266:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1267:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1268:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT handling - Remove a cluster chain */
|
||
1269:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1270:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1271:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT remove_chain ( /* FR_OK(0):succeeded, !=0:error */
|
||
1272:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID* obj, /* Corresponding object */
|
||
1273:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, /* Cluster to remove a chain from */
|
||
1274:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD pclst /* Previous cluster of clst (0:an entire chain) */
|
||
1275:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1276:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1277:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
1278:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD nxt;
|
||
1279:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
1280:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT || _USE_TRIM
|
||
1281:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD scl = clst, ecl = clst;
|
||
1282:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1283:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_TRIM
|
||
1284:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD rt[2];
|
||
1285:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1286:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) return FR_INT_ERR; /* Check if in valid range */
|
||
1288:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1289:Middlewares/Third_Party/FatFs/src/ff.c **** /* Mark the previous cluster 'EOC' on the FAT if it exists */
|
||
1290:Middlewares/Third_Party/FatFs/src/ff.c **** if (pclst && (!_FS_EXFAT || fs->fs_type != FS_EXFAT || obj->stat != 2)) {
|
||
1291:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, pclst, 0xFFFFFFFF);
|
||
1292:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1293:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1294:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1295:Middlewares/Third_Party/FatFs/src/ff.c **** /* Remove the chain */
|
||
1296:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1297:Middlewares/Third_Party/FatFs/src/ff.c **** nxt = get_fat(obj, clst); /* Get cluster status */
|
||
1298:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0) break; /* Empty cluster? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 41
|
||
|
||
|
||
1299:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 1) return FR_INT_ERR; /* Internal error? */
|
||
1300:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error? */
|
||
1301:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
1302:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, 0); /* Mark the cluster 'free' on the FAT */
|
||
1303:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1304:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1305:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->free_clst < fs->n_fatent - 2) { /* Update FSINFO */
|
||
1306:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++;
|
||
1307:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
1308:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1309:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT || _USE_TRIM
|
||
1310:Middlewares/Third_Party/FatFs/src/ff.c **** if (ecl + 1 == nxt) { /* Is next cluster contiguous? */
|
||
1311:Middlewares/Third_Party/FatFs/src/ff.c **** ecl = nxt;
|
||
1312:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* End of contiguous cluster block */
|
||
1313:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1314:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
1315:Middlewares/Third_Party/FatFs/src/ff.c **** res = change_bitmap(fs, scl, ecl - scl + 1, 0); /* Mark the cluster block 'free' on the bitmap
|
||
1316:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1317:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1318:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1319:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_TRIM
|
||
1320:Middlewares/Third_Party/FatFs/src/ff.c **** rt[0] = clust2sect(fs, scl); /* Start sector */
|
||
1321:Middlewares/Third_Party/FatFs/src/ff.c **** rt[1] = clust2sect(fs, ecl) + fs->csize - 1; /* End sector */
|
||
1322:Middlewares/Third_Party/FatFs/src/ff.c **** disk_ioctl(fs->drv, CTRL_TRIM, rt); /* Inform device the block can be erased */
|
||
1323:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1324:Middlewares/Third_Party/FatFs/src/ff.c **** scl = ecl = nxt;
|
||
1325:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1326:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1327:Middlewares/Third_Party/FatFs/src/ff.c **** clst = nxt; /* Next cluster */
|
||
1328:Middlewares/Third_Party/FatFs/src/ff.c **** } while (clst < fs->n_fatent); /* Repeat while not the last link */
|
||
1329:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1330:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1331:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
1332:Middlewares/Third_Party/FatFs/src/ff.c **** if (pclst == 0) { /* Does the object have no chain? */
|
||
1333:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = 0; /* Change the object status 'initial' */
|
||
1334:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1335:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat == 3 && pclst >= obj->sclust && pclst <= obj->sclust + obj->n_cont) { /* Did the c
|
||
1336:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = 2; /* Change the object status 'contiguous' */
|
||
1337:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1338:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1339:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1340:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1341:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
1342:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1343:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1344:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1345:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1346:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1347:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1348:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT handling - Stretch a chain or Create a new chain */
|
||
1349:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1350:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1351:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD create_chain ( /* 0:No free cluster, 1:Internal error, 0xFFFFFFFF:Disk error, >=2:New cluster
|
||
1352:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID* obj, /* Corresponding object */
|
||
1353:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst /* Cluster# to stretch, 0:Create a new chain */
|
||
1354:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1355:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
ARM GAS /tmp/ccH7dUYB.s page 42
|
||
|
||
|
||
1356:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cs, ncl, scl;
|
||
1357:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
1358:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
1359:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1360:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1361:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* Create a new chain */
|
||
1362:Middlewares/Third_Party/FatFs/src/ff.c **** scl = fs->last_clst; /* Get suggested cluster to start from */
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** if (scl == 0 || scl >= fs->n_fatent) scl = 1;
|
||
1364:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1365:Middlewares/Third_Party/FatFs/src/ff.c **** else { /* Stretch current chain */
|
||
1366:Middlewares/Third_Party/FatFs/src/ff.c **** cs = get_fat(obj, clst); /* Check the cluster status */
|
||
1367:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < 2) return 1; /* Invalid FAT value */
|
||
1368:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0xFFFFFFFF) return cs; /* A disk error occurred */
|
||
1369:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < fs->n_fatent) return cs; /* It is already followed by next cluster */
|
||
1370:Middlewares/Third_Party/FatFs/src/ff.c **** scl = clst;
|
||
1371:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1372:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1373:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1374:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
1375:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = find_bitmap(fs, scl, 1); /* Find a free cluster */
|
||
1376:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0 || ncl == 0xFFFFFFFF) return ncl; /* No free cluster or hard error? */
|
||
1377:Middlewares/Third_Party/FatFs/src/ff.c **** res = change_bitmap(fs, ncl, 1, 1); /* Mark the cluster 'in use' */
|
||
1378:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_INT_ERR) return 1;
|
||
1379:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_DISK_ERR) return 0xFFFFFFFF;
|
||
1380:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* Is it a new chain? */
|
||
1381:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = 2; /* Set status 'contiguous' */
|
||
1382:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* It is a stretched chain */
|
||
1383:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat == 2 && ncl != scl + 1) { /* Is the chain got fragmented? */
|
||
1384:Middlewares/Third_Party/FatFs/src/ff.c **** obj->n_cont = scl - obj->sclust; /* Set size of the contiguous part */
|
||
1385:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = 3; /* Change status 'just fragmented' */
|
||
1386:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1387:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1388:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->stat != 2) { /* Is the file non-contiguous? */
|
||
1389:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == clst + 1) { /* Is the cluster next to previous one? */
|
||
1390:Middlewares/Third_Party/FatFs/src/ff.c **** obj->n_frag = obj->n_frag ? obj->n_frag + 1 : 2; /* Increment size of last framgent */
|
||
1391:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* New fragment */
|
||
1392:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->n_frag == 0) obj->n_frag = 1;
|
||
1393:Middlewares/Third_Party/FatFs/src/ff.c **** res = fill_last_frag(obj, clst, ncl); /* Fill last fragment on the FAT and link it to new one *
|
||
1394:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) obj->n_frag = 1;
|
||
1395:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1396:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1397:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
1398:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1399:Middlewares/Third_Party/FatFs/src/ff.c **** { /* On the FAT12/16/32 volume */
|
||
1400:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = scl; /* Start cluster */
|
||
1401:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
1402:Middlewares/Third_Party/FatFs/src/ff.c **** ncl++; /* Next cluster */
|
||
1403:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl >= fs->n_fatent) { /* Check wrap-around */
|
||
1404:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = 2;
|
||
1405:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl > scl) return 0; /* No free cluster */
|
||
1406:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1407:Middlewares/Third_Party/FatFs/src/ff.c **** cs = get_fat(obj, ncl); /* Get the cluster status */
|
||
1408:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0) break; /* Found a free cluster */
|
||
1409:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 1 || cs == 0xFFFFFFFF) return cs; /* An error occurred */
|
||
1410:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == scl) return 0; /* No free cluster */
|
||
1411:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1412:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, ncl, 0xFFFFFFFF); /* Mark the new cluster 'EOC' */
|
||
ARM GAS /tmp/ccH7dUYB.s page 43
|
||
|
||
|
||
1413:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && clst != 0) {
|
||
1414:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, ncl); /* Link it from the previous one if needed */
|
||
1415:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1416:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1417:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1418:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Update FSINFO if function succeeded. */
|
||
1419:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = ncl;
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->free_clst <= fs->n_fatent - 2) fs->free_clst--;
|
||
1421:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
1422:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1423:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = (res == FR_DISK_ERR) ? 0xFFFFFFFF : 1; /* Failed. Generate error status */
|
||
1424:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1425:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1426:Middlewares/Third_Party/FatFs/src/ff.c **** return ncl; /* Return new cluster number or error status */
|
||
1427:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1428:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1429:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
1430:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1431:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1432:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1433:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1434:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
1435:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1436:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT handling - Convert offset into cluster with link map table */
|
||
1437:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1438:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1439:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1440:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clmt_clust ( /* <2:Error, >=2:Cluster number */
|
||
1441:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
1442:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ofs /* File offset to be converted to cluster# */
|
||
1443:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1444:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
947 .loc 1 1444 1 is_stmt 1 view -0
|
||
948 .cfi_startproc
|
||
949 @ args = 0, pretend = 0, frame = 0
|
||
950 @ frame_needed = 0, uses_anonymous_args = 0
|
||
951 @ link register save eliminated.
|
||
1445:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cl, ncl, *tbl;
|
||
952 .loc 1 1445 2 view .LVU266
|
||
1446:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = fp->obj.fs;
|
||
953 .loc 1 1446 2 view .LVU267
|
||
954 .loc 1 1446 9 is_stmt 0 view .LVU268
|
||
955 0000 0268 ldr r2, [r0]
|
||
956 .LVL90:
|
||
1447:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1448:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1449:Middlewares/Third_Party/FatFs/src/ff.c **** tbl = fp->cltbl + 1; /* Top of CLMT */
|
||
957 .loc 1 1449 2 is_stmt 1 view .LVU269
|
||
958 .loc 1 1449 10 is_stmt 0 view .LVU270
|
||
959 0002 C36A ldr r3, [r0, #44]
|
||
960 .loc 1 1449 6 view .LVU271
|
||
961 0004 0433 adds r3, r3, #4
|
||
962 .LVL91:
|
||
1450:Middlewares/Third_Party/FatFs/src/ff.c **** cl = (DWORD)(ofs / SS(fs) / fs->csize); /* Cluster order from top of the file */
|
||
963 .loc 1 1450 2 is_stmt 1 view .LVU272
|
||
964 .loc 1 1450 21 is_stmt 0 view .LVU273
|
||
965 0006 9089 ldrh r0, [r2, #12]
|
||
ARM GAS /tmp/ccH7dUYB.s page 44
|
||
|
||
|
||
966 .LVL92:
|
||
967 .loc 1 1450 19 view .LVU274
|
||
968 0008 B1FBF0F1 udiv r1, r1, r0
|
||
969 .LVL93:
|
||
970 .loc 1 1450 32 view .LVU275
|
||
971 000c 5289 ldrh r2, [r2, #10]
|
||
972 .LVL94:
|
||
973 .loc 1 1450 5 view .LVU276
|
||
974 000e B1FBF2F1 udiv r1, r1, r2
|
||
975 .LVL95:
|
||
976 .loc 1 1450 5 view .LVU277
|
||
977 0012 01E0 b .L89
|
||
978 .LVL96:
|
||
979 .L90:
|
||
1451:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
1452:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = *tbl++; /* Number of cluters in the fragment */
|
||
1453:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0) return 0; /* End of table? (error) */
|
||
1454:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl < ncl) break; /* In this fragment? */
|
||
1455:Middlewares/Third_Party/FatFs/src/ff.c **** cl -= ncl; tbl++; /* Next fragment */
|
||
980 .loc 1 1455 3 is_stmt 1 view .LVU278
|
||
981 .loc 1 1455 6 is_stmt 0 view .LVU279
|
||
982 0014 091A subs r1, r1, r0
|
||
983 .LVL97:
|
||
984 .loc 1 1455 14 is_stmt 1 view .LVU280
|
||
985 .loc 1 1455 17 is_stmt 0 view .LVU281
|
||
986 0016 0833 adds r3, r3, #8
|
||
987 .LVL98:
|
||
1451:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
988 .loc 1 1451 2 is_stmt 1 view .LVU282
|
||
989 .L89:
|
||
1451:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
990 .loc 1 1451 2 view .LVU283
|
||
1452:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0) return 0; /* End of table? (error) */
|
||
991 .loc 1 1452 3 view .LVU284
|
||
1452:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0) return 0; /* End of table? (error) */
|
||
992 .loc 1 1452 7 is_stmt 0 view .LVU285
|
||
993 0018 1868 ldr r0, [r3]
|
||
994 .LVL99:
|
||
1453:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl < ncl) break; /* In this fragment? */
|
||
995 .loc 1 1453 3 is_stmt 1 view .LVU286
|
||
1453:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl < ncl) break; /* In this fragment? */
|
||
996 .loc 1 1453 6 is_stmt 0 view .LVU287
|
||
997 001a 18B1 cbz r0, .L86
|
||
1454:Middlewares/Third_Party/FatFs/src/ff.c **** cl -= ncl; tbl++; /* Next fragment */
|
||
998 .loc 1 1454 3 is_stmt 1 view .LVU288
|
||
1454:Middlewares/Third_Party/FatFs/src/ff.c **** cl -= ncl; tbl++; /* Next fragment */
|
||
999 .loc 1 1454 6 is_stmt 0 view .LVU289
|
||
1000 001c 8142 cmp r1, r0
|
||
1001 001e F9D2 bcs .L90
|
||
1456:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1457:Middlewares/Third_Party/FatFs/src/ff.c **** return cl + *tbl; /* Return the cluster number */
|
||
1002 .loc 1 1457 2 is_stmt 1 view .LVU290
|
||
1003 .loc 1 1457 14 is_stmt 0 view .LVU291
|
||
1004 0020 5868 ldr r0, [r3, #4]
|
||
1005 .LVL100:
|
||
1006 .loc 1 1457 12 view .LVU292
|
||
1007 0022 0844 add r0, r0, r1
|
||
ARM GAS /tmp/ccH7dUYB.s page 45
|
||
|
||
|
||
1008 .L86:
|
||
1458:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1009 .loc 1 1458 1 view .LVU293
|
||
1010 0024 7047 bx lr
|
||
1011 .cfi_endproc
|
||
1012 .LFE1204:
|
||
1014 .section .text.ld_clust,"ax",%progbits
|
||
1015 .align 1
|
||
1016 .syntax unified
|
||
1017 .thumb
|
||
1018 .thumb_func
|
||
1020 ld_clust:
|
||
1021 .LVL101:
|
||
1022 .LFB1208:
|
||
1459:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1460:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_FASTSEEK */
|
||
1461:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1462:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1463:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1464:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1465:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1466:Middlewares/Third_Party/FatFs/src/ff.c **** /* Directory handling - Set directory index */
|
||
1467:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1468:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1469:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1470:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_sdi ( /* FR_OK(0):succeeded, !=0:error */
|
||
1471:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to directory object */
|
||
1472:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ofs /* Offset of directory table */
|
||
1473:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1474:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1475:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD csz, clst;
|
||
1476:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
1477:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1478:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1479:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs >= (DWORD)((_FS_EXFAT && fs->fs_type == FS_EXFAT) ? MAX_DIR_EX : MAX_DIR) || ofs % SZDIRE)
|
||
1480:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_INT_ERR;
|
||
1481:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1482:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dptr = ofs; /* Set current offset */
|
||
1483:Middlewares/Third_Party/FatFs/src/ff.c **** clst = dp->obj.sclust; /* Table start cluster (0:root) */
|
||
1484:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0 && fs->fs_type >= FS_FAT32) { /* Replace cluster# 0 with root cluster# */
|
||
1485:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->dirbase;
|
||
1486:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT) dp->obj.stat = 0; /* exFAT: Root dir has an FAT chain */
|
||
1487:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1488:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1489:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* Static table (root-directory in FAT12/16) */
|
||
1490:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) return FR_INT_ERR; /* Is index out of range? */
|
||
1491:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase;
|
||
1492:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1493:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Dynamic table (sub-directory or root-directory in FAT32+) */
|
||
1494:Middlewares/Third_Party/FatFs/src/ff.c **** csz = (DWORD)fs->csize * SS(fs); /* Bytes per cluster */
|
||
1495:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs >= csz) { /* Follow cluster chain */
|
||
1496:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, clst); /* Get next cluster */
|
||
1497:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) return FR_INT_ERR; /* Reached to end of table or internal
|
||
1499:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
1500:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1501:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = clust2sect(fs, clst);
|
||
ARM GAS /tmp/ccH7dUYB.s page 46
|
||
|
||
|
||
1502:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1503:Middlewares/Third_Party/FatFs/src/ff.c **** dp->clust = clst; /* Current cluster# */
|
||
1504:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect) return FR_INT_ERR;
|
||
1505:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect += ofs / SS(fs); /* Sector# of the directory entry */
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + (ofs % SS(fs)); /* Pointer to the entry in the win[] */
|
||
1507:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1508:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
1509:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1510:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1511:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1512:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1513:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1514:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1515:Middlewares/Third_Party/FatFs/src/ff.c **** /* Directory handling - Move directory table index next */
|
||
1516:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1517:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1518:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1519:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_next ( /* FR_OK(0):succeeded, FR_NO_FILE:End of table, FR_DENIED:Could not stretch */
|
||
1520:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the directory object */
|
||
1521:Middlewares/Third_Party/FatFs/src/ff.c **** int stretch /* 0: Do not stretch table, 1: Stretch table if needed */
|
||
1522:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1523:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1524:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ofs, clst;
|
||
1525:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
1526:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1527:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n;
|
||
1528:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1529:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1530:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = dp->dptr + SZDIRE; /* Next entry */
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect || ofs >= (DWORD)((_FS_EXFAT && fs->fs_type == FS_EXFAT) ? MAX_DIR_EX : MAX_DIR)) re
|
||
1532:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1533:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs % SS(fs) == 0) { /* Sector changed? */
|
||
1534:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect++; /* Next sector */
|
||
1535:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1536:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->clust) { /* Static table */
|
||
1537:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) { /* Report EOT if it reached end of static table */
|
||
1538:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
1539:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1540:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1541:Middlewares/Third_Party/FatFs/src/ff.c **** else { /* Dynamic table */
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ofs / SS(fs) & (fs->csize - 1)) == 0) { /* Cluster changed? */
|
||
1543:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
1544:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) return FR_INT_ERR; /* Internal error */
|
||
1545:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
1546:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent) { /* Reached end of dynamic table */
|
||
1547:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1548:Middlewares/Third_Party/FatFs/src/ff.c **** if (!stretch) { /* If no stretch, report EOT */
|
||
1549:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
1550:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1551:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&dp->obj, dp->clust); /* Allocate a cluster */
|
||
1552:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) return FR_DENIED; /* No free cluster */
|
||
1553:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) return FR_INT_ERR; /* Internal error */
|
||
1554:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
1555:Middlewares/Third_Party/FatFs/src/ff.c **** /* Clean-up the stretched table */
|
||
1556:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT) dp->obj.stat |= 4; /* The directory needs to be updated */
|
||
1557:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) return FR_DISK_ERR; /* Flush disk access window */
|
||
1558:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */
|
||
ARM GAS /tmp/ccH7dUYB.s page 47
|
||
|
||
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 0, fs->winsect = clust2sect(fs, clst); n < fs->csize; n++, fs->winsect++) { /* Fill t
|
||
1560:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
1561:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) return FR_DISK_ERR;
|
||
1562:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1563:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect -= n; /* Restore window offset */
|
||
1564:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1565:Middlewares/Third_Party/FatFs/src/ff.c **** if (!stretch) dp->sect = 0; /* (this line is to suppress compiler warning) */
|
||
1566:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE; /* Report EOT */
|
||
1567:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1569:Middlewares/Third_Party/FatFs/src/ff.c **** dp->clust = clst; /* Initialize data for new cluster */
|
||
1570:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = clust2sect(fs, clst);
|
||
1571:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1572:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1573:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1574:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dptr = ofs; /* Current entry */
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + ofs % SS(fs); /* Pointer to the entry in the win[] */
|
||
1576:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1577:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
1578:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1579:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1580:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1581:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1582:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1583:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1584:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1585:Middlewares/Third_Party/FatFs/src/ff.c **** /* Directory handling - Reserve a block of directory entries */
|
||
1586:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1587:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1588:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1589:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_alloc ( /* FR_OK(0):succeeded, !=0:error */
|
||
1590:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the directory object */
|
||
1591:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nent /* Number of contiguous entries to allocate */
|
||
1592:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1593:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1594:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
1595:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n;
|
||
1596:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
1597:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1598:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1599:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0);
|
||
1600:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
1601:Middlewares/Third_Party/FatFs/src/ff.c **** n = 0;
|
||
1602:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1603:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
1604:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
1605:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1606:Middlewares/Third_Party/FatFs/src/ff.c **** if ((fs->fs_type == FS_EXFAT) ? (int)((dp->dir[XDIR_Type] & 0x80) == 0) : (int)(dp->dir[DIR_Name
|
||
1607:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1608:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->dir[DIR_Name] == DDEM || dp->dir[DIR_Name] == 0) {
|
||
1609:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1610:Middlewares/Third_Party/FatFs/src/ff.c **** if (++n == nent) break; /* A block of contiguous free entries is found */
|
||
1611:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1612:Middlewares/Third_Party/FatFs/src/ff.c **** n = 0; /* Not a blank entry. Restart to search */
|
||
1613:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1614:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 1);
|
||
1615:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK); /* Next entry with table stretch enabled */
|
||
ARM GAS /tmp/ccH7dUYB.s page 48
|
||
|
||
|
||
1616:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1618:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_DENIED; /* No directory entry to allocate */
|
||
1619:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1620:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1621:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1622:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
1623:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1624:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1625:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1626:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1627:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1628:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT: Directory handling - Load/Store start cluster number */
|
||
1629:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1630:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1631:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1632:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ld_clust ( /* Returns the top cluster value of the SFN entry */
|
||
1633:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* Pointer to the fs object */
|
||
1634:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE* dir /* Pointer to the key entry */
|
||
1635:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1636:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1023 .loc 1 1636 1 is_stmt 1 view -0
|
||
1024 .cfi_startproc
|
||
1025 @ args = 0, pretend = 0, frame = 0
|
||
1026 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1027 .loc 1 1636 1 is_stmt 0 view .LVU295
|
||
1028 0000 70B5 push {r4, r5, r6, lr}
|
||
1029 .LCFI10:
|
||
1030 .cfi_def_cfa_offset 16
|
||
1031 .cfi_offset 4, -16
|
||
1032 .cfi_offset 5, -12
|
||
1033 .cfi_offset 6, -8
|
||
1034 .cfi_offset 14, -4
|
||
1035 0002 0646 mov r6, r0
|
||
1036 0004 0D46 mov r5, r1
|
||
1637:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cl;
|
||
1037 .loc 1 1637 2 is_stmt 1 view .LVU296
|
||
1638:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1639:Middlewares/Third_Party/FatFs/src/ff.c **** cl = ld_word(dir + DIR_FstClusLO);
|
||
1038 .loc 1 1639 2 view .LVU297
|
||
1039 .loc 1 1639 7 is_stmt 0 view .LVU298
|
||
1040 0006 01F11A00 add r0, r1, #26
|
||
1041 .LVL102:
|
||
1042 .loc 1 1639 7 view .LVU299
|
||
1043 000a FFF7FEFF bl ld_word
|
||
1044 .LVL103:
|
||
1640:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32) {
|
||
1045 .loc 1 1640 2 is_stmt 1 view .LVU300
|
||
1046 .loc 1 1640 8 is_stmt 0 view .LVU301
|
||
1047 000e 3378 ldrb r3, [r6] @ zero_extendqisi2
|
||
1048 .loc 1 1640 5 view .LVU302
|
||
1049 0010 032B cmp r3, #3
|
||
1050 0012 00D0 beq .L94
|
||
1051 .LVL104:
|
||
1052 .L91:
|
||
1641:Middlewares/Third_Party/FatFs/src/ff.c **** cl |= (DWORD)ld_word(dir + DIR_FstClusHI) << 16;
|
||
1642:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 49
|
||
|
||
|
||
1643:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1644:Middlewares/Third_Party/FatFs/src/ff.c **** return cl;
|
||
1645:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1053 .loc 1 1645 1 view .LVU303
|
||
1054 0014 70BD pop {r4, r5, r6, pc}
|
||
1055 .LVL105:
|
||
1056 .L94:
|
||
1057 .loc 1 1645 1 view .LVU304
|
||
1058 0016 0446 mov r4, r0
|
||
1641:Middlewares/Third_Party/FatFs/src/ff.c **** cl |= (DWORD)ld_word(dir + DIR_FstClusHI) << 16;
|
||
1059 .loc 1 1641 3 is_stmt 1 view .LVU305
|
||
1641:Middlewares/Third_Party/FatFs/src/ff.c **** cl |= (DWORD)ld_word(dir + DIR_FstClusHI) << 16;
|
||
1060 .loc 1 1641 16 is_stmt 0 view .LVU306
|
||
1061 0018 05F11400 add r0, r5, #20
|
||
1062 .LVL106:
|
||
1641:Middlewares/Third_Party/FatFs/src/ff.c **** cl |= (DWORD)ld_word(dir + DIR_FstClusHI) << 16;
|
||
1063 .loc 1 1641 16 view .LVU307
|
||
1064 001c FFF7FEFF bl ld_word
|
||
1065 .LVL107:
|
||
1641:Middlewares/Third_Party/FatFs/src/ff.c **** cl |= (DWORD)ld_word(dir + DIR_FstClusHI) << 16;
|
||
1066 .loc 1 1641 6 discriminator 1 view .LVU308
|
||
1067 0020 44EA0040 orr r0, r4, r0, lsl #16
|
||
1068 .LVL108:
|
||
1644:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1069 .loc 1 1644 2 is_stmt 1 view .LVU309
|
||
1644:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1070 .loc 1 1644 9 is_stmt 0 view .LVU310
|
||
1071 0024 F6E7 b .L91
|
||
1072 .cfi_endproc
|
||
1073 .LFE1208:
|
||
1075 .section .text.st_clust,"ax",%progbits
|
||
1076 .align 1
|
||
1077 .syntax unified
|
||
1078 .thumb
|
||
1079 .thumb_func
|
||
1081 st_clust:
|
||
1082 .LVL109:
|
||
1083 .LFB1209:
|
||
1646:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1647:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1648:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1649:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1650:Middlewares/Third_Party/FatFs/src/ff.c **** void st_clust (
|
||
1651:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* Pointer to the fs object */
|
||
1652:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dir, /* Pointer to the key entry */
|
||
1653:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cl /* Value to be set */
|
||
1654:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1655:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1084 .loc 1 1655 1 is_stmt 1 view -0
|
||
1085 .cfi_startproc
|
||
1086 @ args = 0, pretend = 0, frame = 0
|
||
1087 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1088 .loc 1 1655 1 is_stmt 0 view .LVU312
|
||
1089 0000 70B5 push {r4, r5, r6, lr}
|
||
1090 .LCFI11:
|
||
1091 .cfi_def_cfa_offset 16
|
||
1092 .cfi_offset 4, -16
|
||
ARM GAS /tmp/ccH7dUYB.s page 50
|
||
|
||
|
||
1093 .cfi_offset 5, -12
|
||
1094 .cfi_offset 6, -8
|
||
1095 .cfi_offset 14, -4
|
||
1096 0002 0646 mov r6, r0
|
||
1097 0004 0C46 mov r4, r1
|
||
1098 0006 1546 mov r5, r2
|
||
1656:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + DIR_FstClusLO, (WORD)cl);
|
||
1099 .loc 1 1656 2 is_stmt 1 view .LVU313
|
||
1100 0008 91B2 uxth r1, r2
|
||
1101 .LVL110:
|
||
1102 .loc 1 1656 2 is_stmt 0 view .LVU314
|
||
1103 000a 04F11A00 add r0, r4, #26
|
||
1104 .LVL111:
|
||
1105 .loc 1 1656 2 view .LVU315
|
||
1106 000e FFF7FEFF bl st_word
|
||
1107 .LVL112:
|
||
1657:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32) {
|
||
1108 .loc 1 1657 2 is_stmt 1 view .LVU316
|
||
1109 .loc 1 1657 8 is_stmt 0 view .LVU317
|
||
1110 0012 3378 ldrb r3, [r6] @ zero_extendqisi2
|
||
1111 .loc 1 1657 5 view .LVU318
|
||
1112 0014 032B cmp r3, #3
|
||
1113 0016 00D0 beq .L98
|
||
1114 .L95:
|
||
1658:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + DIR_FstClusHI, (WORD)(cl >> 16));
|
||
1659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1660:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1115 .loc 1 1660 1 view .LVU319
|
||
1116 0018 70BD pop {r4, r5, r6, pc}
|
||
1117 .LVL113:
|
||
1118 .L98:
|
||
1658:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + DIR_FstClusHI, (WORD)(cl >> 16));
|
||
1119 .loc 1 1658 3 is_stmt 1 view .LVU320
|
||
1120 001a 290C lsrs r1, r5, #16
|
||
1121 001c 04F11400 add r0, r4, #20
|
||
1122 0020 FFF7FEFF bl st_word
|
||
1123 .LVL114:
|
||
1124 .loc 1 1660 1 is_stmt 0 view .LVU321
|
||
1125 0024 F8E7 b .L95
|
||
1126 .cfi_endproc
|
||
1127 .LFE1209:
|
||
1129 .section .text.get_fileinfo,"ax",%progbits
|
||
1130 .align 1
|
||
1131 .syntax unified
|
||
1132 .thumb
|
||
1133 .thumb_func
|
||
1135 get_fileinfo:
|
||
1136 .LVL115:
|
||
1137 .LFB1214:
|
||
1661:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1662:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1663:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1664:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1665:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
1666:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------------------------------*/
|
||
1667:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: LFN handling */
|
||
1668:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------------------------------*/
|
||
ARM GAS /tmp/ccH7dUYB.s page 51
|
||
|
||
|
||
1669:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1670:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE LfnOfs[] = {1,3,5,7,9,14,16,18,20,22,24,28,30}; /* Offset of LFN characters in the direc
|
||
1671:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1672:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1673:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------------------------*/
|
||
1674:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: Compare a part of file name with an LFN entry */
|
||
1675:Middlewares/Third_Party/FatFs/src/ff.c **** /*--------------------------------------------------------*/
|
||
1676:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1677:Middlewares/Third_Party/FatFs/src/ff.c **** int cmp_lfn ( /* 1:matched, 0:not matched */
|
||
1678:Middlewares/Third_Party/FatFs/src/ff.c **** const WCHAR* lfnbuf, /* Pointer to the LFN working buffer to be compared */
|
||
1679:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dir /* Pointer to the directory entry containing the part of LFN */
|
||
1680:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1681:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1682:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, s;
|
||
1683:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR wc, uc;
|
||
1684:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1685:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1686:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(dir + LDIR_FstClusLO) != 0) return 0; /* Check LDIR_FstClusLO */
|
||
1687:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1688:Middlewares/Third_Party/FatFs/src/ff.c **** i = ((dir[LDIR_Ord] & 0x3F) - 1) * 13; /* Offset in the LFN buffer */
|
||
1689:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1690:Middlewares/Third_Party/FatFs/src/ff.c **** for (wc = 1, s = 0; s < 13; s++) { /* Process all characters in the entry */
|
||
1691:Middlewares/Third_Party/FatFs/src/ff.c **** uc = ld_word(dir + LfnOfs[s]); /* Pick an LFN character */
|
||
1692:Middlewares/Third_Party/FatFs/src/ff.c **** if (wc) {
|
||
1693:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= _MAX_LFN || ff_wtoupper(uc) != ff_wtoupper(lfnbuf[i++])) { /* Compare it */
|
||
1694:Middlewares/Third_Party/FatFs/src/ff.c **** return 0; /* Not matched */
|
||
1695:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1696:Middlewares/Third_Party/FatFs/src/ff.c **** wc = uc;
|
||
1697:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1698:Middlewares/Third_Party/FatFs/src/ff.c **** if (uc != 0xFFFF) return 0; /* Check filler */
|
||
1699:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1700:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1701:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1702:Middlewares/Third_Party/FatFs/src/ff.c **** if ((dir[LDIR_Ord] & LLEF) && wc && lfnbuf[i]) return 0; /* Last segment matched but different len
|
||
1703:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1704:Middlewares/Third_Party/FatFs/src/ff.c **** return 1; /* The part of LFN matched */
|
||
1705:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1706:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1707:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1708:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 1 || _FS_RPATH >= 2 || _USE_LABEL || _FS_EXFAT
|
||
1709:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------*/
|
||
1710:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: Pick a part of file name from an LFN entry */
|
||
1711:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------*/
|
||
1712:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1713:Middlewares/Third_Party/FatFs/src/ff.c **** int pick_lfn ( /* 1:succeeded, 0:buffer overflow or invalid LFN entry */
|
||
1714:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR* lfnbuf, /* Pointer to the LFN working buffer */
|
||
1715:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dir /* Pointer to the LFN entry */
|
||
1716:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1717:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1718:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, s;
|
||
1719:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR wc, uc;
|
||
1720:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1721:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1722:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(dir + LDIR_FstClusLO) != 0) return 0; /* Check LDIR_FstClusLO is 0 */
|
||
1723:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1724:Middlewares/Third_Party/FatFs/src/ff.c **** i = ((dir[LDIR_Ord] & ~LLEF) - 1) * 13; /* Offset in the LFN buffer */
|
||
1725:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 52
|
||
|
||
|
||
1726:Middlewares/Third_Party/FatFs/src/ff.c **** for (wc = 1, s = 0; s < 13; s++) { /* Process all characters in the entry */
|
||
1727:Middlewares/Third_Party/FatFs/src/ff.c **** uc = ld_word(dir + LfnOfs[s]); /* Pick an LFN character */
|
||
1728:Middlewares/Third_Party/FatFs/src/ff.c **** if (wc) {
|
||
1729:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= _MAX_LFN) return 0; /* Buffer overflow? */
|
||
1730:Middlewares/Third_Party/FatFs/src/ff.c **** lfnbuf[i++] = wc = uc; /* Store it */
|
||
1731:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1732:Middlewares/Third_Party/FatFs/src/ff.c **** if (uc != 0xFFFF) return 0; /* Check filler */
|
||
1733:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1734:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1735:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1736:Middlewares/Third_Party/FatFs/src/ff.c **** if (dir[LDIR_Ord] & LLEF) { /* Put terminator if it is the last LFN part */
|
||
1737:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= _MAX_LFN) return 0; /* Buffer overflow? */
|
||
1738:Middlewares/Third_Party/FatFs/src/ff.c **** lfnbuf[i] = 0;
|
||
1739:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1740:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1741:Middlewares/Third_Party/FatFs/src/ff.c **** return 1; /* The part of LFN is valid */
|
||
1742:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1743:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1744:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1745:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1746:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1747:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------*/
|
||
1748:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: Create an entry of LFN entries */
|
||
1749:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------*/
|
||
1750:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1751:Middlewares/Third_Party/FatFs/src/ff.c **** void put_lfn (
|
||
1752:Middlewares/Third_Party/FatFs/src/ff.c **** const WCHAR* lfn, /* Pointer to the LFN */
|
||
1753:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dir, /* Pointer to the LFN entry to be created */
|
||
1754:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE ord, /* LFN order (1-20) */
|
||
1755:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE sum /* Checksum of the corresponding SFN */
|
||
1756:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1757:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1758:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, s;
|
||
1759:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR wc;
|
||
1760:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1761:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1762:Middlewares/Third_Party/FatFs/src/ff.c **** dir[LDIR_Chksum] = sum; /* Set checksum */
|
||
1763:Middlewares/Third_Party/FatFs/src/ff.c **** dir[LDIR_Attr] = AM_LFN; /* Set attribute. LFN entry */
|
||
1764:Middlewares/Third_Party/FatFs/src/ff.c **** dir[LDIR_Type] = 0;
|
||
1765:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + LDIR_FstClusLO, 0);
|
||
1766:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1767:Middlewares/Third_Party/FatFs/src/ff.c **** i = (ord - 1) * 13; /* Get offset in the LFN working buffer */
|
||
1768:Middlewares/Third_Party/FatFs/src/ff.c **** s = wc = 0;
|
||
1769:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1770:Middlewares/Third_Party/FatFs/src/ff.c **** if (wc != 0xFFFF) wc = lfn[i++]; /* Get an effective character */
|
||
1771:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + LfnOfs[s], wc); /* Put it */
|
||
1772:Middlewares/Third_Party/FatFs/src/ff.c **** if (wc == 0) wc = 0xFFFF; /* Padding characters for left locations */
|
||
1773:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++s < 13);
|
||
1774:Middlewares/Third_Party/FatFs/src/ff.c **** if (wc == 0xFFFF || !lfn[i]) ord |= LLEF; /* Last LFN part is the start of LFN sequence */
|
||
1775:Middlewares/Third_Party/FatFs/src/ff.c **** dir[LDIR_Ord] = ord; /* Set the LFN order */
|
||
1776:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1777:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1778:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
1779:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_LFN != 0 */
|
||
1780:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1781:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1782:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 53
|
||
|
||
|
||
1783:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 && !_FS_READONLY
|
||
1784:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1785:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: Create a Numbered SFN */
|
||
1786:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1787:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1788:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1789:Middlewares/Third_Party/FatFs/src/ff.c **** void gen_numname (
|
||
1790:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dst, /* Pointer to the buffer to store numbered SFN */
|
||
1791:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE* src, /* Pointer to SFN */
|
||
1792:Middlewares/Third_Party/FatFs/src/ff.c **** const WCHAR* lfn, /* Pointer to LFN */
|
||
1793:Middlewares/Third_Party/FatFs/src/ff.c **** UINT seq /* Sequence number */
|
||
1794:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1795:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1796:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE ns[8], c;
|
||
1797:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, j;
|
||
1798:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR wc;
|
||
1799:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sr;
|
||
1800:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1801:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1802:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dst, src, 11);
|
||
1803:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1804:Middlewares/Third_Party/FatFs/src/ff.c **** if (seq > 5) { /* In case of many collisions, generate a hash number instead of sequential number
|
||
1805:Middlewares/Third_Party/FatFs/src/ff.c **** sr = seq;
|
||
1806:Middlewares/Third_Party/FatFs/src/ff.c **** while (*lfn) { /* Create a CRC */
|
||
1807:Middlewares/Third_Party/FatFs/src/ff.c **** wc = *lfn++;
|
||
1808:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < 16; i++) {
|
||
1809:Middlewares/Third_Party/FatFs/src/ff.c **** sr = (sr << 1) + (wc & 1);
|
||
1810:Middlewares/Third_Party/FatFs/src/ff.c **** wc >>= 1;
|
||
1811:Middlewares/Third_Party/FatFs/src/ff.c **** if (sr & 0x10000) sr ^= 0x11021;
|
||
1812:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1813:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1814:Middlewares/Third_Party/FatFs/src/ff.c **** seq = (UINT)sr;
|
||
1815:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1816:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1817:Middlewares/Third_Party/FatFs/src/ff.c **** /* itoa (hexdecimal) */
|
||
1818:Middlewares/Third_Party/FatFs/src/ff.c **** i = 7;
|
||
1819:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1820:Middlewares/Third_Party/FatFs/src/ff.c **** c = (BYTE)((seq % 16) + '0');
|
||
1821:Middlewares/Third_Party/FatFs/src/ff.c **** if (c > '9') c += 7;
|
||
1822:Middlewares/Third_Party/FatFs/src/ff.c **** ns[i--] = c;
|
||
1823:Middlewares/Third_Party/FatFs/src/ff.c **** seq /= 16;
|
||
1824:Middlewares/Third_Party/FatFs/src/ff.c **** } while (seq);
|
||
1825:Middlewares/Third_Party/FatFs/src/ff.c **** ns[i] = '~';
|
||
1826:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1827:Middlewares/Third_Party/FatFs/src/ff.c **** /* Append the number */
|
||
1828:Middlewares/Third_Party/FatFs/src/ff.c **** for (j = 0; j < i && dst[j] != ' '; j++) {
|
||
1829:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(dst[j])) {
|
||
1830:Middlewares/Third_Party/FatFs/src/ff.c **** if (j == i - 1) break;
|
||
1831:Middlewares/Third_Party/FatFs/src/ff.c **** j++;
|
||
1832:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1833:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1834:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1835:Middlewares/Third_Party/FatFs/src/ff.c **** dst[j++] = (i < 8) ? ns[i++] : ' ';
|
||
1836:Middlewares/Third_Party/FatFs/src/ff.c **** } while (j < 8);
|
||
1837:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1838:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_LFN != 0 && !_FS_READONLY */
|
||
1839:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 54
|
||
|
||
|
||
1840:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1841:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
1843:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1844:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: Calculate checksum of an SFN entry */
|
||
1845:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1846:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1847:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1848:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE sum_sfn (
|
||
1849:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE* dir /* Pointer to the SFN entry */
|
||
1850:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1851:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1852:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE sum = 0;
|
||
1853:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n = 11;
|
||
1854:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1855:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
1856:Middlewares/Third_Party/FatFs/src/ff.c **** sum = (sum >> 1) + (sum << 7) + *dir++;
|
||
1857:Middlewares/Third_Party/FatFs/src/ff.c **** } while (--n);
|
||
1858:Middlewares/Third_Party/FatFs/src/ff.c **** return sum;
|
||
1859:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1860:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1861:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_LFN != 0 */
|
||
1862:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1863:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1864:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1865:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
1866:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1867:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Checksum */
|
||
1868:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
1869:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1870:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1871:Middlewares/Third_Party/FatFs/src/ff.c **** WORD xdir_sum ( /* Get checksum of the directoly block */
|
||
1872:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE* dir /* Directory entry block to be calculated */
|
||
1873:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1874:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1875:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, szblk;
|
||
1876:Middlewares/Third_Party/FatFs/src/ff.c **** WORD sum;
|
||
1877:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1878:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1879:Middlewares/Third_Party/FatFs/src/ff.c **** szblk = (dir[XDIR_NumSec] + 1) * SZDIRE;
|
||
1880:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = sum = 0; i < szblk; i++) {
|
||
1881:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == XDIR_SetSum) { /* Skip sum field */
|
||
1882:Middlewares/Third_Party/FatFs/src/ff.c **** i++;
|
||
1883:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1884:Middlewares/Third_Party/FatFs/src/ff.c **** sum = ((sum & 1) ? 0x8000 : 0) + (sum >> 1) + dir[i];
|
||
1885:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1886:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1887:Middlewares/Third_Party/FatFs/src/ff.c **** return sum;
|
||
1888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1889:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1890:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1891:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1892:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1893:Middlewares/Third_Party/FatFs/src/ff.c **** WORD xname_sum ( /* Get check sum (to be used as hash) of the name */
|
||
1894:Middlewares/Third_Party/FatFs/src/ff.c **** const WCHAR* name /* File name to be calculated */
|
||
1895:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1896:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
ARM GAS /tmp/ccH7dUYB.s page 55
|
||
|
||
|
||
1897:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR chr;
|
||
1898:Middlewares/Third_Party/FatFs/src/ff.c **** WORD sum = 0;
|
||
1899:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1900:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1901:Middlewares/Third_Party/FatFs/src/ff.c **** while ((chr = *name++) != 0) {
|
||
1902:Middlewares/Third_Party/FatFs/src/ff.c **** chr = ff_wtoupper(chr); /* File name needs to be ignored case */
|
||
1903:Middlewares/Third_Party/FatFs/src/ff.c **** sum = ((sum & 1) ? 0x8000 : 0) + (sum >> 1) + (chr & 0xFF);
|
||
1904:Middlewares/Third_Party/FatFs/src/ff.c **** sum = ((sum & 1) ? 0x8000 : 0) + (sum >> 1) + (chr >> 8);
|
||
1905:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1906:Middlewares/Third_Party/FatFs/src/ff.c **** return sum;
|
||
1907:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1908:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1909:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1910:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _USE_MKFS
|
||
1911:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1912:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD xsum32 (
|
||
1913:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE dat, /* Data to be sumed */
|
||
1914:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sum /* Previous value */
|
||
1915:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1916:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1917:Middlewares/Third_Party/FatFs/src/ff.c **** sum = ((sum & 1) ? 0x80000000 : 0) + (sum >> 1) + dat;
|
||
1918:Middlewares/Third_Party/FatFs/src/ff.c **** return sum;
|
||
1919:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1920:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1921:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1922:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1923:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 1 || _FS_RPATH >= 2
|
||
1924:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------------*/
|
||
1925:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Get object information from a directory block */
|
||
1926:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------------*/
|
||
1927:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1928:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1929:Middlewares/Third_Party/FatFs/src/ff.c **** void get_xdir_info (
|
||
1930:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dirb, /* Pointer to the direcotry entry block 85+C0+C1s */
|
||
1931:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO* fno /* Buffer to store the extracted file information */
|
||
1932:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1933:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1934:Middlewares/Third_Party/FatFs/src/ff.c **** UINT di, si;
|
||
1935:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR w;
|
||
1936:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_LFN_UNICODE
|
||
1937:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nc;
|
||
1938:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1939:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1940:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get file name */
|
||
1941:Middlewares/Third_Party/FatFs/src/ff.c **** di = 0;
|
||
1942:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
1943:Middlewares/Third_Party/FatFs/src/ff.c **** for (si = SZDIRE * 2; di < dirb[XDIR_NumName]; si += 2, di++) {
|
||
1944:Middlewares/Third_Party/FatFs/src/ff.c **** if ((si % SZDIRE) == 0) si += 2; /* Skip entry type field */
|
||
1945:Middlewares/Third_Party/FatFs/src/ff.c **** w = ld_word(dirb + si); /* Get a character */
|
||
1946:Middlewares/Third_Party/FatFs/src/ff.c **** if (di >= _MAX_LFN) { di = 0; break; } /* Buffer overflow --> inaccessible object name */
|
||
1947:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[di] = w; /* Store it */
|
||
1948:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1949:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1950:Middlewares/Third_Party/FatFs/src/ff.c **** for (si = SZDIRE * 2, nc = 0; nc < dirb[XDIR_NumName]; si += 2, nc++) {
|
||
1951:Middlewares/Third_Party/FatFs/src/ff.c **** if ((si % SZDIRE) == 0) si += 2; /* Skip entry type field */
|
||
1952:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(ld_word(dirb + si), 0); /* Get a character and Unicode -> OEM */
|
||
1953:Middlewares/Third_Party/FatFs/src/ff.c **** if (_DF1S && w >= 0x100) { /* Is it a double byte char? (always false at SBCS cfg) */
|
||
ARM GAS /tmp/ccH7dUYB.s page 56
|
||
|
||
|
||
1954:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[di++] = (char)(w >> 8); /* Put 1st byte of the DBC */
|
||
1955:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1956:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == 0 || di >= _MAX_LFN) { di = 0; break; } /* Invalid char or buffer overflow --> inaccessi
|
||
1957:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[di++] = (char)w;
|
||
1958:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1959:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1960:Middlewares/Third_Party/FatFs/src/ff.c **** if (di == 0) fno->fname[di++] = '?'; /* Inaccessible object name? */
|
||
1961:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[di] = 0; /* Terminate file name */
|
||
1962:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1963:Middlewares/Third_Party/FatFs/src/ff.c **** fno->altname[0] = 0; /* No SFN */
|
||
1964:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fattrib = dirb[XDIR_Attr]; /* Attribute */
|
||
1965:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fsize = (fno->fattrib & AM_DIR) ? 0 : ld_qword(dirb + XDIR_FileSize); /* Size */
|
||
1966:Middlewares/Third_Party/FatFs/src/ff.c **** fno->ftime = ld_word(dirb + XDIR_ModTime + 0); /* Time */
|
||
1967:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fdate = ld_word(dirb + XDIR_ModTime + 2); /* Date */
|
||
1968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1969:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1970:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_MINIMIZE <= 1 || _FS_RPATH >= 2 */
|
||
1971:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1972:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1973:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------*/
|
||
1974:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Get a directry entry block */
|
||
1975:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------*/
|
||
1976:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1977:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
1978:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT load_xdir ( /* FR_INT_ERR: invalid entry block */
|
||
1979:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp /* Pointer to the reading direcotry object pointing the 85 entry */
|
||
1980:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
1981:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1982:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
1983:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, sz_ent;
|
||
1984:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dirb = dp->obj.fs->dirbuf; /* Pointer to the on-memory direcotry entry block 85+C0+C1s */
|
||
1985:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1986:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1987:Middlewares/Third_Party/FatFs/src/ff.c **** /* Load 85 entry */
|
||
1988:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(dp->obj.fs, dp->sect);
|
||
1989:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1990:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->dir[XDIR_Type] != 0x85) return FR_INT_ERR;
|
||
1991:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dirb + 0, dp->dir, SZDIRE);
|
||
1992:Middlewares/Third_Party/FatFs/src/ff.c **** sz_ent = (dirb[XDIR_NumSec] + 1) * SZDIRE;
|
||
1993:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_ent < 3 * SZDIRE || sz_ent > 19 * SZDIRE) return FR_INT_ERR;
|
||
1994:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1995:Middlewares/Third_Party/FatFs/src/ff.c **** /* Load C0 entry */
|
||
1996:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0);
|
||
1997:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
1998:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(dp->obj.fs, dp->sect);
|
||
1999:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2000:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->dir[XDIR_Type] != 0xC0) return FR_INT_ERR;
|
||
2001:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dirb + SZDIRE, dp->dir, SZDIRE);
|
||
2002:Middlewares/Third_Party/FatFs/src/ff.c **** if (MAXDIRB(dirb[XDIR_NumName]) > sz_ent) return FR_INT_ERR;
|
||
2003:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2004:Middlewares/Third_Party/FatFs/src/ff.c **** /* Load C1 entries */
|
||
2005:Middlewares/Third_Party/FatFs/src/ff.c **** i = SZDIRE * 2; /* C1 offset */
|
||
2006:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
2007:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0);
|
||
2008:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2009:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(dp->obj.fs, dp->sect);
|
||
2010:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
ARM GAS /tmp/ccH7dUYB.s page 57
|
||
|
||
|
||
2011:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->dir[XDIR_Type] != 0xC1) return FR_INT_ERR;
|
||
2012:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < MAXDIRB(_MAX_LFN)) mem_cpy(dirb + i, dp->dir, SZDIRE);
|
||
2013:Middlewares/Third_Party/FatFs/src/ff.c **** } while ((i += SZDIRE) < sz_ent);
|
||
2014:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2015:Middlewares/Third_Party/FatFs/src/ff.c **** /* Sanity check (do it when accessible object name) */
|
||
2016:Middlewares/Third_Party/FatFs/src/ff.c **** if (i <= MAXDIRB(_MAX_LFN)) {
|
||
2017:Middlewares/Third_Party/FatFs/src/ff.c **** if (xdir_sum(dirb) != ld_word(dirb + XDIR_SetSum)) return FR_INT_ERR;
|
||
2018:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2019:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
2020:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2021:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2022:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2023:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY || _FS_RPATH != 0
|
||
2024:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------*/
|
||
2025:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Load the object's directory entry block */
|
||
2026:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------*/
|
||
2027:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2028:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT load_obj_dir (
|
||
2029:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Blank directory object to be used to access containing direcotry */
|
||
2030:Middlewares/Third_Party/FatFs/src/ff.c **** const _FDID* obj /* Object with its containing directory information */
|
||
2031:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2032:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2033:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
2034:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2035:Middlewares/Third_Party/FatFs/src/ff.c **** /* Open object containing directory */
|
||
2036:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.fs = obj->fs;
|
||
2037:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.sclust = obj->c_scl;
|
||
2038:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.stat = (BYTE)obj->c_size;
|
||
2039:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.objsize = obj->c_size & 0xFFFFFF00;
|
||
2040:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = obj->c_ofs;
|
||
2041:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2042:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, dp->blk_ofs); /* Goto object's entry block */
|
||
2043:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2044:Middlewares/Third_Party/FatFs/src/ff.c **** res = load_xdir(dp); /* Load the object's entry block */
|
||
2045:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2046:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2047:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2048:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2049:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2050:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2051:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
2052:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------*/
|
||
2053:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Store the directory block to the media */
|
||
2054:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------*/
|
||
2055:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2056:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT store_xdir (
|
||
2057:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp /* Pointer to the direcotry object */
|
||
2058:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2059:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2060:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
2061:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nent;
|
||
2062:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dirb = dp->obj.fs->dirbuf; /* Pointer to the direcotry entry block 85+C0+C1s */
|
||
2063:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2064:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create set sum */
|
||
2065:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dirb + XDIR_SetSum, xdir_sum(dirb));
|
||
2066:Middlewares/Third_Party/FatFs/src/ff.c **** nent = dirb[XDIR_NumSec] + 1;
|
||
2067:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 58
|
||
|
||
|
||
2068:Middlewares/Third_Party/FatFs/src/ff.c **** /* Store the set of directory to the volume */
|
||
2069:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, dp->blk_ofs);
|
||
2070:Middlewares/Third_Party/FatFs/src/ff.c **** while (res == FR_OK) {
|
||
2071:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(dp->obj.fs, dp->sect);
|
||
2072:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2073:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dp->dir, dirb, SZDIRE);
|
||
2074:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.fs->wflag = 1;
|
||
2075:Middlewares/Third_Party/FatFs/src/ff.c **** if (--nent == 0) break;
|
||
2076:Middlewares/Third_Party/FatFs/src/ff.c **** dirb += SZDIRE;
|
||
2077:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0);
|
||
2078:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2079:Middlewares/Third_Party/FatFs/src/ff.c **** return (res == FR_OK || res == FR_DISK_ERR) ? res : FR_INT_ERR;
|
||
2080:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2081:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2082:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2083:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2084:Middlewares/Third_Party/FatFs/src/ff.c **** /*-------------------------------------------*/
|
||
2085:Middlewares/Third_Party/FatFs/src/ff.c **** /* exFAT: Create a new directory enrty block */
|
||
2086:Middlewares/Third_Party/FatFs/src/ff.c **** /*-------------------------------------------*/
|
||
2087:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2088:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2089:Middlewares/Third_Party/FatFs/src/ff.c **** void create_xdir (
|
||
2090:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE* dirb, /* Pointer to the direcotry entry block buffer */
|
||
2091:Middlewares/Third_Party/FatFs/src/ff.c **** const WCHAR* lfn /* Pointer to the nul terminated file name */
|
||
2092:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2093:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2094:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
2095:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE nb, nc;
|
||
2096:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR chr;
|
||
2097:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2098:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2099:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create 85+C0 entry */
|
||
2100:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dirb, 0, 2 * SZDIRE);
|
||
2101:Middlewares/Third_Party/FatFs/src/ff.c **** dirb[XDIR_Type] = 0x85;
|
||
2102:Middlewares/Third_Party/FatFs/src/ff.c **** dirb[XDIR_Type + SZDIRE] = 0xC0;
|
||
2103:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2104:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create C1 entries */
|
||
2105:Middlewares/Third_Party/FatFs/src/ff.c **** nc = 0; nb = 1; chr = 1; i = SZDIRE * 2;
|
||
2106:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
2107:Middlewares/Third_Party/FatFs/src/ff.c **** dirb[i++] = 0xC1; dirb[i++] = 0; /* Entry type C1 */
|
||
2108:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Fill name field */
|
||
2109:Middlewares/Third_Party/FatFs/src/ff.c **** if (chr && (chr = lfn[nc]) != 0) nc++; /* Get a character if exist */
|
||
2110:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dirb + i, chr); /* Store it */
|
||
2111:Middlewares/Third_Party/FatFs/src/ff.c **** } while ((i += 2) % SZDIRE != 0);
|
||
2112:Middlewares/Third_Party/FatFs/src/ff.c **** nb++;
|
||
2113:Middlewares/Third_Party/FatFs/src/ff.c **** } while (lfn[nc]); /* Fill next entry if any char follows */
|
||
2114:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2115:Middlewares/Third_Party/FatFs/src/ff.c **** dirb[XDIR_NumName] = nc; /* Set name length */
|
||
2116:Middlewares/Third_Party/FatFs/src/ff.c **** dirb[XDIR_NumSec] = nb; /* Set block length */
|
||
2117:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dirb + XDIR_NameHash, xname_sum(lfn)); /* Set name hash */
|
||
2118:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2119:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2120:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
2121:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_EXFAT */
|
||
2122:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2123:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2124:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 59
|
||
|
||
|
||
2125:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 1 || _FS_RPATH >= 2 || _USE_LABEL || _FS_EXFAT
|
||
2126:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2127:Middlewares/Third_Party/FatFs/src/ff.c **** /* Read an object from the directory */
|
||
2128:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2129:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2130:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2131:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_read (
|
||
2132:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the directory object */
|
||
2133:Middlewares/Third_Party/FatFs/src/ff.c **** int vol /* Filtered by 0:file/directory or 1:volume label */
|
||
2134:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2135:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2136:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_NO_FILE;
|
||
2137:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
2138:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE a, c;
|
||
2139:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
2140:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE ord = 0xFF, sum = 0xFF;
|
||
2141:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2142:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2143:Middlewares/Third_Party/FatFs/src/ff.c **** while (dp->sect) {
|
||
2144:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
2145:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2146:Middlewares/Third_Party/FatFs/src/ff.c **** c = dp->dir[DIR_Name]; /* Test for the entry type */
|
||
2147:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) {
|
||
2148:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE; break; /* Reached to end of the directory */
|
||
2149:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2150:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2151:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
2152:Middlewares/Third_Party/FatFs/src/ff.c **** if (_USE_LABEL && vol) {
|
||
2153:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0x83) break; /* Volume label entry? */
|
||
2154:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2155:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0x85) { /* Start of the file entry block? */
|
||
2156:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = dp->dptr; /* Get location of the block */
|
||
2157:Middlewares/Third_Party/FatFs/src/ff.c **** res = load_xdir(dp); /* Load the entry block */
|
||
2158:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2159:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.attr = fs->dirbuf[XDIR_Attr] & AM_MASK; /* Get attribute */
|
||
2160:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2161:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2162:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2163:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2164:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
2165:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2166:Middlewares/Third_Party/FatFs/src/ff.c **** { /* On the FAT12/16/32 volume */
|
||
2167:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.attr = a = dp->dir[DIR_Attr] & AM_MASK; /* Get attribute */
|
||
2168:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
2169:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == DDEM || c == '.' || (int)((a & ~AM_ARC) == AM_VOL) != vol) { /* An entry without valid
|
||
2170:Middlewares/Third_Party/FatFs/src/ff.c **** ord = 0xFF;
|
||
2171:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2172:Middlewares/Third_Party/FatFs/src/ff.c **** if (a == AM_LFN) { /* An LFN entry is found */
|
||
2173:Middlewares/Third_Party/FatFs/src/ff.c **** if (c & LLEF) { /* Is it start of an LFN sequence? */
|
||
2174:Middlewares/Third_Party/FatFs/src/ff.c **** sum = dp->dir[LDIR_Chksum];
|
||
2175:Middlewares/Third_Party/FatFs/src/ff.c **** c &= (BYTE)~LLEF; ord = c;
|
||
2176:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = dp->dptr;
|
||
2177:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2178:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check LFN validity and capture it */
|
||
2179:Middlewares/Third_Party/FatFs/src/ff.c **** ord = (c == ord && sum == dp->dir[LDIR_Chksum] && pick_lfn(fs->lfnbuf, dp->dir)) ? ord - 1 : 0
|
||
2180:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* An SFN entry is found */
|
||
2181:Middlewares/Third_Party/FatFs/src/ff.c **** if (ord || sum != sum_sfn(dp->dir)) { /* Is there a valid LFN? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 60
|
||
|
||
|
||
2182:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = 0xFFFFFFFF; /* It has no LFN. */
|
||
2183:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2184:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2185:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2186:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2187:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Non LFN configuration */
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** if (c != DDEM && c != '.' && a != AM_LFN && (int)((a & ~AM_ARC) == AM_VOL) == vol) { /* Is it a
|
||
2189:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2190:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2191:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2192:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2193:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0); /* Next entry */
|
||
2194:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2195:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2196:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2197:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) dp->sect = 0; /* Terminate the read operation on error or EOT */
|
||
2198:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2199:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2200:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2201:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_MINIMIZE <= 1 || _USE_LABEL || _FS_RPATH >= 2 */
|
||
2202:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2203:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2204:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2205:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2206:Middlewares/Third_Party/FatFs/src/ff.c **** /* Directory handling - Find an object in the directory */
|
||
2207:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2208:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2209:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2210:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_find ( /* FR_OK(0):succeeded, !=0:error */
|
||
2211:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp /* Pointer to the directory object with the file name */
|
||
2212:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2213:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2214:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
2215:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
2216:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE c;
|
||
2217:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
2218:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE a, ord, sum;
|
||
2219:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2220:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2221:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind directory object */
|
||
2222:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2223:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2224:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
2225:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE nc;
|
||
2226:Middlewares/Third_Party/FatFs/src/ff.c **** UINT di, ni;
|
||
2227:Middlewares/Third_Party/FatFs/src/ff.c **** WORD hash = xname_sum(fs->lfnbuf); /* Hash value of the name to find */
|
||
2228:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2229:Middlewares/Third_Party/FatFs/src/ff.c **** while ((res = dir_read(dp, 0)) == FR_OK) { /* Read an item */
|
||
2230:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_LFN < 255
|
||
2231:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->dirbuf[XDIR_NumName] > _MAX_LFN) continue; /* Skip comparison if inaccessible object n
|
||
2232:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2233:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->dirbuf + XDIR_NameHash) != hash) continue; /* Skip comparison if hash mismatched
|
||
2234:Middlewares/Third_Party/FatFs/src/ff.c **** for (nc = fs->dirbuf[XDIR_NumName], di = SZDIRE * 2, ni = 0; nc; nc--, di += 2, ni++) { /* Compa
|
||
2235:Middlewares/Third_Party/FatFs/src/ff.c **** if ((di % SZDIRE) == 0) di += 2;
|
||
2236:Middlewares/Third_Party/FatFs/src/ff.c **** if (ff_wtoupper(ld_word(fs->dirbuf + di)) != ff_wtoupper(fs->lfnbuf[ni])) break;
|
||
2237:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2238:Middlewares/Third_Party/FatFs/src/ff.c **** if (nc == 0 && !fs->lfnbuf[ni]) break; /* Name matched? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 61
|
||
|
||
|
||
2239:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2240:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2241:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2242:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2243:Middlewares/Third_Party/FatFs/src/ff.c **** /* On the FAT12/16/32 volume */
|
||
2244:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
2245:Middlewares/Third_Party/FatFs/src/ff.c **** ord = sum = 0xFF; dp->blk_ofs = 0xFFFFFFFF; /* Reset LFN sequence */
|
||
2246:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2247:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
2248:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
2249:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2250:Middlewares/Third_Party/FatFs/src/ff.c **** c = dp->dir[DIR_Name];
|
||
2251:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) { res = FR_NO_FILE; break; } /* Reached to end of table */
|
||
2252:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
2253:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.attr = a = dp->dir[DIR_Attr] & AM_MASK;
|
||
2254:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == DDEM || ((a & AM_VOL) && a != AM_LFN)) { /* An entry without valid data */
|
||
2255:Middlewares/Third_Party/FatFs/src/ff.c **** ord = 0xFF; dp->blk_ofs = 0xFFFFFFFF; /* Reset LFN sequence */
|
||
2256:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2257:Middlewares/Third_Party/FatFs/src/ff.c **** if (a == AM_LFN) { /* An LFN entry is found */
|
||
2258:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->fn[NSFLAG] & NS_NOLFN)) {
|
||
2259:Middlewares/Third_Party/FatFs/src/ff.c **** if (c & LLEF) { /* Is it start of LFN sequence? */
|
||
2260:Middlewares/Third_Party/FatFs/src/ff.c **** sum = dp->dir[LDIR_Chksum];
|
||
2261:Middlewares/Third_Party/FatFs/src/ff.c **** c &= (BYTE)~LLEF; ord = c; /* LFN start order */
|
||
2262:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = dp->dptr; /* Start offset of LFN */
|
||
2263:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2264:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check validity of the LFN entry and compare it with given name */
|
||
2265:Middlewares/Third_Party/FatFs/src/ff.c **** ord = (c == ord && sum == dp->dir[LDIR_Chksum] && cmp_lfn(fs->lfnbuf, dp->dir)) ? ord - 1 : 0x
|
||
2266:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2267:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* An SFN entry is found */
|
||
2268:Middlewares/Third_Party/FatFs/src/ff.c **** if (!ord && sum == sum_sfn(dp->dir)) break; /* LFN matched? */
|
||
2269:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->fn[NSFLAG] & NS_LOSS) && !mem_cmp(dp->dir, dp->fn, 11)) break; /* SFN matched? */
|
||
2270:Middlewares/Third_Party/FatFs/src/ff.c **** ord = 0xFF; dp->blk_ofs = 0xFFFFFFFF; /* Reset LFN sequence */
|
||
2271:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2272:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2273:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Non LFN configuration */
|
||
2274:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.attr = dp->dir[DIR_Attr] & AM_MASK;
|
||
2275:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->dir[DIR_Attr] & AM_VOL) && !mem_cmp(dp->dir, dp->fn, 11)) break; /* Is it a valid entry
|
||
2276:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2277:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0); /* Next entry */
|
||
2278:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK);
|
||
2279:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2280:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2281:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2282:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2283:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2284:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2285:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2286:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
2287:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2288:Middlewares/Third_Party/FatFs/src/ff.c **** /* Register an object to the directory */
|
||
2289:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2290:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2291:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2292:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_register ( /* FR_OK:succeeded, FR_DENIED:no free entry or too many SFN collision, FR_DI
|
||
2293:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp /* Target directory with object name to be created */
|
||
2294:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2295:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
ARM GAS /tmp/ccH7dUYB.s page 62
|
||
|
||
|
||
2296:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
2297:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
2298:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
2299:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n, nlen, nent;
|
||
2300:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE sn[12], sum;
|
||
2301:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2302:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2303:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->fn[NSFLAG] & (NS_DOT | NS_NONAME)) return FR_INVALID_NAME; /* Check name validity */
|
||
2304:Middlewares/Third_Party/FatFs/src/ff.c **** for (nlen = 0; fs->lfnbuf[nlen]; nlen++) ; /* Get lfn length */
|
||
2305:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2306:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2307:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
2308:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
2309:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2310:Middlewares/Third_Party/FatFs/src/ff.c **** nent = (nlen + 14) / 15 + 2; /* Number of entries to allocate (85+C0+C1s) */
|
||
2311:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_alloc(dp, nent); /* Allocate entries */
|
||
2312:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2313:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = dp->dptr - SZDIRE * (nent - 1); /* Set the allocated entry block offset */
|
||
2314:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2315:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->obj.sclust != 0 && (dp->obj.stat & 4)) { /* Has the sub-directory been stretched? */
|
||
2316:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.objsize += (DWORD)fs->csize * SS(fs); /* Increase the directory size by cluster size */
|
||
2317:Middlewares/Third_Party/FatFs/src/ff.c **** res = fill_first_frag(&dp->obj); /* Fill first fragment on the FAT if needed */
|
||
2318:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2319:Middlewares/Third_Party/FatFs/src/ff.c **** res = fill_last_frag(&dp->obj, dp->clust, 0xFFFFFFFF); /* Fill last fragment on the FAT if neede
|
||
2320:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2321:Middlewares/Third_Party/FatFs/src/ff.c **** res = load_obj_dir(&dj, &dp->obj); /* Load the object status */
|
||
2322:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2323:Middlewares/Third_Party/FatFs/src/ff.c **** st_qword(fs->dirbuf + XDIR_FileSize, dp->obj.objsize); /* Update the allocation status */
|
||
2324:Middlewares/Third_Party/FatFs/src/ff.c **** st_qword(fs->dirbuf + XDIR_ValidFileSize, dp->obj.objsize);
|
||
2325:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_GenFlags] = dp->obj.stat | 1;
|
||
2326:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj); /* Store the object status */
|
||
2327:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2328:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2329:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2330:Middlewares/Third_Party/FatFs/src/ff.c **** create_xdir(fs->dirbuf, fs->lfnbuf); /* Create on-memory directory block to be written later */
|
||
2331:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
2332:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2333:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2334:Middlewares/Third_Party/FatFs/src/ff.c **** /* On the FAT12/16/32 volume */
|
||
2335:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(sn, dp->fn, 12);
|
||
2336:Middlewares/Third_Party/FatFs/src/ff.c **** if (sn[NSFLAG] & NS_LOSS) { /* When LFN is out of 8.3 format, generate a numbered name */
|
||
2337:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = NS_NOLFN; /* Find only SFN */
|
||
2338:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 1; n < 100; n++) {
|
||
2339:Middlewares/Third_Party/FatFs/src/ff.c **** gen_numname(dp->fn, sn, fs->lfnbuf, n); /* Generate a numbered name */
|
||
2340:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_find(dp); /* Check if the name collides with existing SFN */
|
||
2341:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2342:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2343:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 100) return FR_DENIED; /* Abort if too many collisions */
|
||
2344:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_NO_FILE) return res; /* Abort if the result is other than 'not collided' */
|
||
2345:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = sn[NSFLAG];
|
||
2346:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2347:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2348:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create an SFN with/without LFNs. */
|
||
2349:Middlewares/Third_Party/FatFs/src/ff.c **** nent = (sn[NSFLAG] & NS_LFN) ? (nlen + 12) / 13 + 1 : 1; /* Number of entries to allocate */
|
||
2350:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_alloc(dp, nent); /* Allocate entries */
|
||
2351:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && --nent) { /* Set LFN entry if needed */
|
||
2352:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, dp->dptr - nent * SZDIRE);
|
||
ARM GAS /tmp/ccH7dUYB.s page 63
|
||
|
||
|
||
2353:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2354:Middlewares/Third_Party/FatFs/src/ff.c **** sum = sum_sfn(dp->fn); /* Checksum value of the SFN tied to the LFN */
|
||
2355:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Store LFN entries in bottom first */
|
||
2356:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
2357:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2358:Middlewares/Third_Party/FatFs/src/ff.c **** put_lfn(fs->lfnbuf, dp->dir, (BYTE)nent, sum);
|
||
2359:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2360:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0); /* Next entry */
|
||
2361:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK && --nent);
|
||
2362:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2364:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2365:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Non LFN configuration */
|
||
2366:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_alloc(dp, 1); /* Allocate an entry for SFN */
|
||
2367:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2368:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2369:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2370:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set SFN entry */
|
||
2371:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2372:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
2373:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2374:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dp->dir, 0, SZDIRE); /* Clean the entry */
|
||
2375:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dp->dir + DIR_Name, dp->fn, 11); /* Put SFN */
|
||
2376:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
2377:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir[DIR_NTres] = dp->fn[NSFLAG] & (NS_BODY | NS_EXT); /* Put NT flag */
|
||
2378:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2379:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2380:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2381:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2382:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2383:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2384:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2385:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2386:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
2387:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2388:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2389:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2390:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE == 0
|
||
2391:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2392:Middlewares/Third_Party/FatFs/src/ff.c **** /* Remove an object from the directory */
|
||
2393:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2394:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2395:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2396:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT dir_remove ( /* FR_OK:Succeeded, FR_DISK_ERR:A disk error */
|
||
2397:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp /* Directory object pointing the entry to be removed */
|
||
2398:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2399:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2400:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
2401:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
2402:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
2403:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD last = dp->dptr;
|
||
2404:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2405:Middlewares/Third_Party/FatFs/src/ff.c **** res = (dp->blk_ofs == 0xFFFFFFFF) ? FR_OK : dir_sdi(dp, dp->blk_ofs); /* Goto top of the entry blo
|
||
2406:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2407:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
2408:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
2409:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
ARM GAS /tmp/ccH7dUYB.s page 64
|
||
|
||
|
||
2410:Middlewares/Third_Party/FatFs/src/ff.c **** /* Mark an entry 'deleted' */
|
||
2411:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
2412:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir[XDIR_Type] &= 0x7F;
|
||
2413:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* On the FAT12/16/32 volume */
|
||
2414:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir[DIR_Name] = DDEM;
|
||
2415:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2416:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2417:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->dptr >= last) break; /* If reached last entry then all entries of the object has been de
|
||
2418:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0); /* Next entry */
|
||
2419:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK);
|
||
2420:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_INT_ERR;
|
||
2421:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2422:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Non LFN configuration */
|
||
2423:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2424:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
2425:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
2426:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir[DIR_Name] = DDEM;
|
||
2427:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2428:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2429:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2430:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2431:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2432:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2433:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2434:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY && _FS_MINIMIZE == 0 */
|
||
2435:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2436:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2437:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2438:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 1 || _FS_RPATH >= 2
|
||
2439:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2440:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get file information from directory entry */
|
||
2441:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2442:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2443:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2444:Middlewares/Third_Party/FatFs/src/ff.c **** void get_fileinfo ( /* No return code */
|
||
2445:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the directory object */
|
||
2446:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO* fno /* Pointer to the file information to be filled */
|
||
2447:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2448:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1138 .loc 1 2448 1 is_stmt 1 view -0
|
||
1139 .cfi_startproc
|
||
1140 @ args = 0, pretend = 0, frame = 0
|
||
1141 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1142 .loc 1 2448 1 is_stmt 0 view .LVU323
|
||
1143 0000 38B5 push {r3, r4, r5, lr}
|
||
1144 .LCFI12:
|
||
1145 .cfi_def_cfa_offset 16
|
||
1146 .cfi_offset 3, -16
|
||
1147 .cfi_offset 4, -12
|
||
1148 .cfi_offset 5, -8
|
||
1149 .cfi_offset 14, -4
|
||
2449:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, j;
|
||
1150 .loc 1 2449 2 is_stmt 1 view .LVU324
|
||
2450:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c;
|
||
1151 .loc 1 2450 2 view .LVU325
|
||
2451:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD tm;
|
||
1152 .loc 1 2451 2 view .LVU326
|
||
ARM GAS /tmp/ccH7dUYB.s page 65
|
||
|
||
|
||
2452:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
2453:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR w, lfv;
|
||
2454:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
2455:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2456:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2457:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2458:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[0] = 0; /* Invaidate file info */
|
||
1153 .loc 1 2458 2 view .LVU327
|
||
1154 .loc 1 2458 16 is_stmt 0 view .LVU328
|
||
1155 0002 0023 movs r3, #0
|
||
1156 0004 4B72 strb r3, [r1, #9]
|
||
2459:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect) return; /* Exit if read pointer has reached end of directory */
|
||
1157 .loc 1 2459 2 is_stmt 1 view .LVU329
|
||
1158 .loc 1 2459 9 is_stmt 0 view .LVU330
|
||
1159 0006 C369 ldr r3, [r0, #28]
|
||
1160 .loc 1 2459 5 view .LVU331
|
||
1161 0008 73B3 cbz r3, .L99
|
||
1162 000a 0546 mov r5, r0
|
||
1163 000c 0C46 mov r4, r1
|
||
2460:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2461:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
2462:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2463:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
2464:Middlewares/Third_Party/FatFs/src/ff.c **** get_xdir_info(fs->dirbuf, fno);
|
||
2465:Middlewares/Third_Party/FatFs/src/ff.c **** return;
|
||
2466:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
2467:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2468:Middlewares/Third_Party/FatFs/src/ff.c **** { /* On the FAT12/16/32 volume */
|
||
2469:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->blk_ofs != 0xFFFFFFFF) { /* Get LFN if available */
|
||
2470:Middlewares/Third_Party/FatFs/src/ff.c **** i = j = 0;
|
||
2471:Middlewares/Third_Party/FatFs/src/ff.c **** while ((w = fs->lfnbuf[j++]) != 0) { /* Get an LFN character */
|
||
2472:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_LFN_UNICODE
|
||
2473:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(w, 0); /* Unicode -> OEM */
|
||
2474:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == 0) { i = 0; break; } /* No LFN if it could not be converted */
|
||
2475:Middlewares/Third_Party/FatFs/src/ff.c **** if (_DF1S && w >= 0x100) { /* Put 1st byte if it is a DBC (always false at SBCS cfg) */
|
||
2476:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[i++] = (char)(w >> 8);
|
||
2477:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2478:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2479:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= _MAX_LFN) { i = 0; break; } /* No LFN if buffer overflow */
|
||
2480:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[i++] = (TCHAR)w;
|
||
2481:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2482:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[i] = 0; /* Terminate the LFN */
|
||
2483:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2484:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2485:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2486:Middlewares/Third_Party/FatFs/src/ff.c **** i = j = 0;
|
||
2487:Middlewares/Third_Party/FatFs/src/ff.c **** lfv = fno->fname[i]; /* LFN is exist if non-zero */
|
||
2488:Middlewares/Third_Party/FatFs/src/ff.c **** while (i < 11) { /* Copy name body and extension */
|
||
2489:Middlewares/Third_Party/FatFs/src/ff.c **** c = (TCHAR)dp->dir[i++];
|
||
2490:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == ' ') continue; /* Skip padding spaces */
|
||
2491:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == RDDEM) c = (TCHAR)DDEM; /* Restore replaced DDEM character */
|
||
2492:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 9) { /* Insert a . if extension is exist */
|
||
2493:Middlewares/Third_Party/FatFs/src/ff.c **** if (!lfv) fno->fname[j] = '.';
|
||
2494:Middlewares/Third_Party/FatFs/src/ff.c **** fno->altname[j++] = '.';
|
||
2495:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2496:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
2497:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(c) && i != 8 && i != 11 && IsDBCS2(dp->dir[i])) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 66
|
||
|
||
|
||
2498:Middlewares/Third_Party/FatFs/src/ff.c **** c = c << 8 | dp->dir[i++];
|
||
2499:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2500:Middlewares/Third_Party/FatFs/src/ff.c **** c = ff_convert(c, 1); /* OEM -> Unicode */
|
||
2501:Middlewares/Third_Party/FatFs/src/ff.c **** if (!c) c = '?';
|
||
2502:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2503:Middlewares/Third_Party/FatFs/src/ff.c **** fno->altname[j] = c;
|
||
2504:Middlewares/Third_Party/FatFs/src/ff.c **** if (!lfv) {
|
||
2505:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsUpper(c) && (dp->dir[DIR_NTres] & ((i >= 9) ? NS_EXT : NS_BODY))) {
|
||
2506:Middlewares/Third_Party/FatFs/src/ff.c **** c += 0x20; /* To lower */
|
||
2507:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2508:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j] = c;
|
||
2509:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2510:Middlewares/Third_Party/FatFs/src/ff.c **** j++;
|
||
2511:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2512:Middlewares/Third_Party/FatFs/src/ff.c **** if (!lfv) {
|
||
2513:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j] = 0;
|
||
2514:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->dir[DIR_NTres]) j = 0; /* Altname is no longer needed if neither LFN nor case info is ex
|
||
2515:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2516:Middlewares/Third_Party/FatFs/src/ff.c **** fno->altname[j] = 0; /* Terminate the SFN */
|
||
2517:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2518:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Non-LFN configuration */
|
||
2519:Middlewares/Third_Party/FatFs/src/ff.c **** i = j = 0;
|
||
1164 .loc 1 2519 8 view .LVU332
|
||
1165 000e 0022 movs r2, #0
|
||
1166 .loc 1 2519 4 view .LVU333
|
||
1167 0010 1346 mov r3, r2
|
||
1168 0012 06E0 b .L101
|
||
1169 .LVL116:
|
||
1170 .L103:
|
||
2520:Middlewares/Third_Party/FatFs/src/ff.c **** while (i < 11) { /* Copy name body and extension */
|
||
2521:Middlewares/Third_Party/FatFs/src/ff.c **** c = (TCHAR)dp->dir[i++];
|
||
2522:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == ' ') continue; /* Skip padding spaces */
|
||
2523:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == RDDEM) c = (TCHAR)DDEM; /* Restore replaced DDEM character */
|
||
2524:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 9) fno->fname[j++] = '.'; /* Insert a . if extension is exist */
|
||
1171 .loc 1 2524 3 is_stmt 1 view .LVU334
|
||
1172 .loc 1 2524 6 is_stmt 0 view .LVU335
|
||
1173 0014 BCF1090F cmp ip, #9
|
||
1174 0018 0FD0 beq .L108
|
||
1175 .L104:
|
||
2525:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j++] = c;
|
||
1176 .loc 1 2525 3 is_stmt 1 view .LVU336
|
||
1177 .LVL117:
|
||
1178 .loc 1 2525 19 is_stmt 0 view .LVU337
|
||
1179 001a A118 adds r1, r4, r2
|
||
1180 001c 4B72 strb r3, [r1, #9]
|
||
1181 .loc 1 2525 15 view .LVU338
|
||
1182 001e 0132 adds r2, r2, #1
|
||
1183 .LVL118:
|
||
1184 .L102:
|
||
1185 .loc 1 2525 15 view .LVU339
|
||
1186 0020 6346 mov r3, ip
|
||
1187 .LVL119:
|
||
1188 .L101:
|
||
2520:Middlewares/Third_Party/FatFs/src/ff.c **** while (i < 11) { /* Copy name body and extension */
|
||
1189 .loc 1 2520 11 is_stmt 1 view .LVU340
|
||
1190 0022 0A2B cmp r3, #10
|
||
1191 0024 0ED8 bhi .L109
|
||
ARM GAS /tmp/ccH7dUYB.s page 67
|
||
|
||
|
||
2521:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == ' ') continue; /* Skip padding spaces */
|
||
1192 .loc 1 2521 3 view .LVU341
|
||
2521:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == ' ') continue; /* Skip padding spaces */
|
||
1193 .loc 1 2521 23 is_stmt 0 view .LVU342
|
||
1194 0026 03F1010C add ip, r3, #1
|
||
1195 .LVL120:
|
||
2521:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == ' ') continue; /* Skip padding spaces */
|
||
1196 .loc 1 2521 5 view .LVU343
|
||
1197 002a 296A ldr r1, [r5, #32]
|
||
1198 002c CB5C ldrb r3, [r1, r3] @ zero_extendqisi2
|
||
1199 .LVL121:
|
||
2522:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == RDDEM) c = (TCHAR)DDEM; /* Restore replaced DDEM character */
|
||
1200 .loc 1 2522 3 is_stmt 1 view .LVU344
|
||
2522:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == RDDEM) c = (TCHAR)DDEM; /* Restore replaced DDEM character */
|
||
1201 .loc 1 2522 6 is_stmt 0 view .LVU345
|
||
1202 002e 202B cmp r3, #32
|
||
1203 0030 F6D0 beq .L102
|
||
2523:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 9) fno->fname[j++] = '.'; /* Insert a . if extension is exist */
|
||
1204 .loc 1 2523 3 is_stmt 1 view .LVU346
|
||
2523:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 9) fno->fname[j++] = '.'; /* Insert a . if extension is exist */
|
||
1205 .loc 1 2523 6 is_stmt 0 view .LVU347
|
||
1206 0032 052B cmp r3, #5
|
||
1207 0034 EED1 bne .L103
|
||
2523:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 9) fno->fname[j++] = '.'; /* Insert a . if extension is exist */
|
||
1208 .loc 1 2523 21 discriminator 1 view .LVU348
|
||
1209 0036 E523 movs r3, #229
|
||
1210 .LVL122:
|
||
2523:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 9) fno->fname[j++] = '.'; /* Insert a . if extension is exist */
|
||
1211 .loc 1 2523 21 discriminator 1 view .LVU349
|
||
1212 0038 ECE7 b .L103
|
||
1213 .LVL123:
|
||
1214 .L108:
|
||
2524:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j++] = c;
|
||
1215 .loc 1 2524 15 is_stmt 1 discriminator 1 view .LVU350
|
||
2524:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j++] = c;
|
||
1216 .loc 1 2524 31 is_stmt 0 discriminator 1 view .LVU351
|
||
1217 003a A118 adds r1, r4, r2
|
||
1218 003c 2E20 movs r0, #46
|
||
1219 003e 4872 strb r0, [r1, #9]
|
||
2524:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j++] = c;
|
||
1220 .loc 1 2524 27 discriminator 1 view .LVU352
|
||
1221 0040 0132 adds r2, r2, #1
|
||
1222 .LVL124:
|
||
2524:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j++] = c;
|
||
1223 .loc 1 2524 27 discriminator 1 view .LVU353
|
||
1224 0042 EAE7 b .L104
|
||
1225 .LVL125:
|
||
1226 .L109:
|
||
2526:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2527:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[j] = 0;
|
||
1227 .loc 1 2527 2 is_stmt 1 view .LVU354
|
||
1228 .loc 1 2527 16 is_stmt 0 view .LVU355
|
||
1229 0044 2244 add r2, r2, r4
|
||
1230 .LVL126:
|
||
1231 .loc 1 2527 16 view .LVU356
|
||
1232 0046 0023 movs r3, #0
|
||
1233 .LVL127:
|
||
ARM GAS /tmp/ccH7dUYB.s page 68
|
||
|
||
|
||
1234 .loc 1 2527 16 view .LVU357
|
||
1235 0048 5372 strb r3, [r2, #9]
|
||
2528:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2529:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2530:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fattrib = dp->dir[DIR_Attr]; /* Attribute */
|
||
1236 .loc 1 2530 2 is_stmt 1 view .LVU358
|
||
1237 .loc 1 2530 19 is_stmt 0 view .LVU359
|
||
1238 004a 2B6A ldr r3, [r5, #32]
|
||
1239 .loc 1 2530 15 view .LVU360
|
||
1240 004c DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
|
||
1241 004e 2372 strb r3, [r4, #8]
|
||
2531:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fsize = ld_dword(dp->dir + DIR_FileSize); /* Size */
|
||
1242 .loc 1 2531 2 is_stmt 1 view .LVU361
|
||
1243 .loc 1 2531 26 is_stmt 0 view .LVU362
|
||
1244 0050 286A ldr r0, [r5, #32]
|
||
1245 .loc 1 2531 15 view .LVU363
|
||
1246 0052 1C30 adds r0, r0, #28
|
||
1247 0054 FFF7FEFF bl ld_dword
|
||
1248 .LVL128:
|
||
1249 .loc 1 2531 13 discriminator 1 view .LVU364
|
||
1250 0058 2060 str r0, [r4]
|
||
2532:Middlewares/Third_Party/FatFs/src/ff.c **** tm = ld_dword(dp->dir + DIR_ModTime); /* Timestamp */
|
||
1251 .loc 1 2532 2 is_stmt 1 view .LVU365
|
||
1252 .loc 1 2532 18 is_stmt 0 view .LVU366
|
||
1253 005a 286A ldr r0, [r5, #32]
|
||
1254 .loc 1 2532 7 view .LVU367
|
||
1255 005c 1630 adds r0, r0, #22
|
||
1256 005e FFF7FEFF bl ld_dword
|
||
1257 .LVL129:
|
||
2533:Middlewares/Third_Party/FatFs/src/ff.c **** fno->ftime = (WORD)tm; fno->fdate = (WORD)(tm >> 16);
|
||
1258 .loc 1 2533 2 is_stmt 1 view .LVU368
|
||
1259 .loc 1 2533 13 is_stmt 0 view .LVU369
|
||
1260 0062 E080 strh r0, [r4, #6] @ movhi
|
||
1261 .loc 1 2533 25 is_stmt 1 view .LVU370
|
||
1262 .loc 1 2533 38 is_stmt 0 view .LVU371
|
||
1263 0064 000C lsrs r0, r0, #16
|
||
1264 .LVL130:
|
||
1265 .loc 1 2533 36 view .LVU372
|
||
1266 0066 A080 strh r0, [r4, #4] @ movhi
|
||
1267 .LVL131:
|
||
1268 .L99:
|
||
2534:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1269 .loc 1 2534 1 view .LVU373
|
||
1270 0068 38BD pop {r3, r4, r5, pc}
|
||
1271 .cfi_endproc
|
||
1272 .LFE1214:
|
||
1274 .section .rodata.create_name.str1.4,"aMS",%progbits,1
|
||
1275 .align 2
|
||
1276 .LC0:
|
||
1277 0000 222A2B2C .ascii "\"*+,:;<=>?[]|\177\000"
|
||
1277 3A3B3C3D
|
||
1277 3E3F5B5D
|
||
1277 7C7F00
|
||
1278 .section .text.create_name,"ax",%progbits
|
||
1279 .align 1
|
||
1280 .syntax unified
|
||
1281 .thumb
|
||
ARM GAS /tmp/ccH7dUYB.s page 69
|
||
|
||
|
||
1282 .thumb_func
|
||
1284 create_name:
|
||
1285 .LVL132:
|
||
1286 .LFB1215:
|
||
2535:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2536:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_MINIMIZE <= 1 || _FS_RPATH >= 2 */
|
||
2537:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2538:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2539:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2540:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FIND && _FS_MINIMIZE <= 1
|
||
2541:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2542:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pattern matching */
|
||
2543:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2544:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2545:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2546:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR get_achar ( /* Get a character and advances ptr 1 or 2 */
|
||
2547:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR** ptr /* Pointer to pointer to the SBCS/DBCS/Unicode string */
|
||
2548:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2549:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2550:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_LFN_UNICODE
|
||
2551:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR chr;
|
||
2552:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2553:Middlewares/Third_Party/FatFs/src/ff.c **** chr = (BYTE)*(*ptr)++; /* Get a byte */
|
||
2554:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(chr)) chr -= 0x20; /* To upper ASCII char */
|
||
2555:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
2556:Middlewares/Third_Party/FatFs/src/ff.c **** if (chr >= 0x80) chr = ExCvt[chr - 0x80]; /* To upper SBCS extended char */
|
||
2557:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
2558:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(chr) && IsDBCS2(**ptr)) { /* Get DBC 2nd byte if needed */
|
||
2559:Middlewares/Third_Party/FatFs/src/ff.c **** chr = chr << 8 | (BYTE)*(*ptr)++;
|
||
2560:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2561:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2562:Middlewares/Third_Party/FatFs/src/ff.c **** return chr;
|
||
2563:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
2564:Middlewares/Third_Party/FatFs/src/ff.c **** return ff_wtoupper(*(*ptr)++); /* Get a word and to upper */
|
||
2565:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2566:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2567:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2568:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2569:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2570:Middlewares/Third_Party/FatFs/src/ff.c **** int pattern_matching ( /* 0:not matched, 1:matched */
|
||
2571:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* pat, /* Matching pattern */
|
||
2572:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* nam, /* String to be tested */
|
||
2573:Middlewares/Third_Party/FatFs/src/ff.c **** int skip, /* Number of pre-skip chars (number of ?s) */
|
||
2574:Middlewares/Third_Party/FatFs/src/ff.c **** int inf /* Infinite search (* specified) */
|
||
2575:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2576:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2577:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR *pp, *np;
|
||
2578:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR pc, nc;
|
||
2579:Middlewares/Third_Party/FatFs/src/ff.c **** int nm, nx;
|
||
2580:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2581:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2582:Middlewares/Third_Party/FatFs/src/ff.c **** while (skip--) { /* Pre-skip name chars */
|
||
2583:Middlewares/Third_Party/FatFs/src/ff.c **** if (!get_achar(&nam)) return 0; /* Branch mismatched if less name chars */
|
||
2584:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2585:Middlewares/Third_Party/FatFs/src/ff.c **** if (!*pat && inf) return 1; /* (short circuit) */
|
||
2586:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2587:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
ARM GAS /tmp/ccH7dUYB.s page 70
|
||
|
||
|
||
2588:Middlewares/Third_Party/FatFs/src/ff.c **** pp = pat; np = nam; /* Top of pattern and name to match */
|
||
2589:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
2590:Middlewares/Third_Party/FatFs/src/ff.c **** if (*pp == '?' || *pp == '*') { /* Wildcard? */
|
||
2591:Middlewares/Third_Party/FatFs/src/ff.c **** nm = nx = 0;
|
||
2592:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Analyze the wildcard chars */
|
||
2593:Middlewares/Third_Party/FatFs/src/ff.c **** if (*pp++ == '?') nm++; else nx = 1;
|
||
2594:Middlewares/Third_Party/FatFs/src/ff.c **** } while (*pp == '?' || *pp == '*');
|
||
2595:Middlewares/Third_Party/FatFs/src/ff.c **** if (pattern_matching(pp, np, nm, nx)) return 1; /* Test new branch (recurs upto number of wildc
|
||
2596:Middlewares/Third_Party/FatFs/src/ff.c **** nc = *np; break; /* Branch mismatched */
|
||
2597:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2598:Middlewares/Third_Party/FatFs/src/ff.c **** pc = get_achar(&pp); /* Get a pattern char */
|
||
2599:Middlewares/Third_Party/FatFs/src/ff.c **** nc = get_achar(&np); /* Get a name char */
|
||
2600:Middlewares/Third_Party/FatFs/src/ff.c **** if (pc != nc) break; /* Branch mismatched? */
|
||
2601:Middlewares/Third_Party/FatFs/src/ff.c **** if (pc == 0) return 1; /* Branch matched? (matched at end of both strings) */
|
||
2602:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2603:Middlewares/Third_Party/FatFs/src/ff.c **** get_achar(&nam); /* nam++ */
|
||
2604:Middlewares/Third_Party/FatFs/src/ff.c **** } while (inf && nc); /* Retry until end of name if infinite search is specified */
|
||
2605:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2606:Middlewares/Third_Party/FatFs/src/ff.c **** return 0;
|
||
2607:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2608:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2609:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_FIND && _FS_MINIMIZE <= 1 */
|
||
2610:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2611:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2612:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2613:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2614:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pick a top segment and create the object name in directory form */
|
||
2615:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2616:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2617:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2618:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT create_name ( /* FR_OK: successful, FR_INVALID_NAME: could not create */
|
||
2619:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the directory object */
|
||
2620:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR** path /* Pointer to pointer to the segment in the path string */
|
||
2621:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2622:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1287 .loc 1 2622 1 is_stmt 1 view -0
|
||
1288 .cfi_startproc
|
||
1289 @ args = 0, pretend = 0, frame = 0
|
||
1290 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1291 .loc 1 2622 1 is_stmt 0 view .LVU375
|
||
1292 0000 2DE9F84F push {r3, r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
1293 .LCFI13:
|
||
1294 .cfi_def_cfa_offset 40
|
||
1295 .cfi_offset 3, -40
|
||
1296 .cfi_offset 4, -36
|
||
1297 .cfi_offset 5, -32
|
||
1298 .cfi_offset 6, -28
|
||
1299 .cfi_offset 7, -24
|
||
1300 .cfi_offset 8, -20
|
||
1301 .cfi_offset 9, -16
|
||
1302 .cfi_offset 10, -12
|
||
1303 .cfi_offset 11, -8
|
||
1304 .cfi_offset 14, -4
|
||
1305 0004 8146 mov r9, r0
|
||
1306 0006 8A46 mov r10, r1
|
||
2623:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
2624:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE b, cf;
|
||
ARM GAS /tmp/ccH7dUYB.s page 71
|
||
|
||
|
||
2625:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR w, *lfn;
|
||
2626:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, ni, si, di;
|
||
2627:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR *p;
|
||
2628:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2629:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create LFN in Unicode */
|
||
2630:Middlewares/Third_Party/FatFs/src/ff.c **** p = *path; lfn = dp->obj.fs->lfnbuf; si = di = 0;
|
||
2631:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
2632:Middlewares/Third_Party/FatFs/src/ff.c **** w = p[si++]; /* Get a character */
|
||
2633:Middlewares/Third_Party/FatFs/src/ff.c **** if (w < ' ') break; /* Break if end of the path name */
|
||
2634:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == '/' || w == '\\') { /* Break if a separator is found */
|
||
2635:Middlewares/Third_Party/FatFs/src/ff.c **** while (p[si] == '/' || p[si] == '\\') si++; /* Skip duplicated separator if exist */
|
||
2636:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2637:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2638:Middlewares/Third_Party/FatFs/src/ff.c **** if (di >= _MAX_LFN) return FR_INVALID_NAME; /* Reject too long name */
|
||
2639:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_LFN_UNICODE
|
||
2640:Middlewares/Third_Party/FatFs/src/ff.c **** w &= 0xFF;
|
||
2641:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(w)) { /* Check if it is a DBC 1st byte (always false on SBCS cfg) */
|
||
2642:Middlewares/Third_Party/FatFs/src/ff.c **** b = (BYTE)p[si++]; /* Get 2nd byte */
|
||
2643:Middlewares/Third_Party/FatFs/src/ff.c **** w = (w << 8) + b; /* Create a DBC */
|
||
2644:Middlewares/Third_Party/FatFs/src/ff.c **** if (!IsDBCS2(b)) return FR_INVALID_NAME; /* Reject invalid sequence */
|
||
2645:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2646:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(w, 1); /* Convert ANSI/OEM to Unicode */
|
||
2647:Middlewares/Third_Party/FatFs/src/ff.c **** if (!w) return FR_INVALID_NAME; /* Reject invalid code */
|
||
2648:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2649:Middlewares/Third_Party/FatFs/src/ff.c **** if (w < 0x80 && chk_chr("\"*:<>\?|\x7F", w)) return FR_INVALID_NAME; /* Reject illegal characters
|
||
2650:Middlewares/Third_Party/FatFs/src/ff.c **** lfn[di++] = w; /* Store the Unicode character */
|
||
2651:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2652:Middlewares/Third_Party/FatFs/src/ff.c **** *path = &p[si]; /* Return pointer to the next segment */
|
||
2653:Middlewares/Third_Party/FatFs/src/ff.c **** cf = (w < ' ') ? NS_LAST : 0; /* Set last segment flag if end of the path */
|
||
2654:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
2655:Middlewares/Third_Party/FatFs/src/ff.c **** if ((di == 1 && lfn[di - 1] == '.') ||
|
||
2656:Middlewares/Third_Party/FatFs/src/ff.c **** (di == 2 && lfn[di - 1] == '.' && lfn[di - 2] == '.')) { /* Is this segment a dot name? */
|
||
2657:Middlewares/Third_Party/FatFs/src/ff.c **** lfn[di] = 0;
|
||
2658:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < 11; i++) /* Create dot name for SFN entry */
|
||
2659:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[i] = (i < di) ? '.' : ' ';
|
||
2660:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[i] = cf | NS_DOT; /* This is a dot entry */
|
||
2661:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
2662:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2663:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2664:Middlewares/Third_Party/FatFs/src/ff.c **** while (di) { /* Snip off trailing spaces and dots if exist */
|
||
2665:Middlewares/Third_Party/FatFs/src/ff.c **** w = lfn[di - 1];
|
||
2666:Middlewares/Third_Party/FatFs/src/ff.c **** if (w != ' ' && w != '.') break;
|
||
2667:Middlewares/Third_Party/FatFs/src/ff.c **** di--;
|
||
2668:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2669:Middlewares/Third_Party/FatFs/src/ff.c **** lfn[di] = 0; /* LFN is created */
|
||
2670:Middlewares/Third_Party/FatFs/src/ff.c **** if (di == 0) return FR_INVALID_NAME; /* Reject nul name */
|
||
2671:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2672:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create SFN in directory form */
|
||
2673:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dp->fn, ' ', 11);
|
||
2674:Middlewares/Third_Party/FatFs/src/ff.c **** for (si = 0; lfn[si] == ' ' || lfn[si] == '.'; si++) ; /* Strip leading spaces and dots */
|
||
2675:Middlewares/Third_Party/FatFs/src/ff.c **** if (si) cf |= NS_LOSS | NS_LFN;
|
||
2676:Middlewares/Third_Party/FatFs/src/ff.c **** while (di && lfn[di - 1] != '.') di--; /* Find extension (di<=si: no extension) */
|
||
2677:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2678:Middlewares/Third_Party/FatFs/src/ff.c **** i = b = 0; ni = 8;
|
||
2679:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
2680:Middlewares/Third_Party/FatFs/src/ff.c **** w = lfn[si++]; /* Get an LFN character */
|
||
2681:Middlewares/Third_Party/FatFs/src/ff.c **** if (!w) break; /* Break on end of the LFN */
|
||
ARM GAS /tmp/ccH7dUYB.s page 72
|
||
|
||
|
||
2682:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == ' ' || (w == '.' && si != di)) { /* Remove spaces and dots */
|
||
2683:Middlewares/Third_Party/FatFs/src/ff.c **** cf |= NS_LOSS | NS_LFN; continue;
|
||
2684:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2685:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2686:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= ni || si == di) { /* Extension or end of SFN */
|
||
2687:Middlewares/Third_Party/FatFs/src/ff.c **** if (ni == 11) { /* Long extension */
|
||
2688:Middlewares/Third_Party/FatFs/src/ff.c **** cf |= NS_LOSS | NS_LFN; break;
|
||
2689:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2690:Middlewares/Third_Party/FatFs/src/ff.c **** if (si != di) cf |= NS_LOSS | NS_LFN; /* Out of 8.3 format */
|
||
2691:Middlewares/Third_Party/FatFs/src/ff.c **** if (si > di) break; /* No extension */
|
||
2692:Middlewares/Third_Party/FatFs/src/ff.c **** si = di; i = 8; ni = 11; /* Enter extension section */
|
||
2693:Middlewares/Third_Party/FatFs/src/ff.c **** b <<= 2; continue;
|
||
2694:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2695:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2696:Middlewares/Third_Party/FatFs/src/ff.c **** if (w >= 0x80) { /* Non ASCII character */
|
||
2697:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
2698:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(w, 0); /* Unicode -> OEM code */
|
||
2699:Middlewares/Third_Party/FatFs/src/ff.c **** if (w) w = ExCvt[w - 0x80]; /* Convert extended character to upper (SBCS) */
|
||
2700:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
2701:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(ff_wtoupper(w), 0); /* Upper converted Unicode -> OEM code */
|
||
2702:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2703:Middlewares/Third_Party/FatFs/src/ff.c **** cf |= NS_LFN; /* Force create LFN entry */
|
||
2704:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2705:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2706:Middlewares/Third_Party/FatFs/src/ff.c **** if (_DF1S && w >= 0x100) { /* Is this DBC? (always false at SBCS cfg) */
|
||
2707:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= ni - 1) {
|
||
2708:Middlewares/Third_Party/FatFs/src/ff.c **** cf |= NS_LOSS | NS_LFN; i = ni; continue;
|
||
2709:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2710:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[i++] = (BYTE)(w >> 8);
|
||
2711:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* SBC */
|
||
2712:Middlewares/Third_Party/FatFs/src/ff.c **** if (!w || chk_chr("+,;=[]", w)) { /* Replace illegal characters for SFN */
|
||
2713:Middlewares/Third_Party/FatFs/src/ff.c **** w = '_'; cf |= NS_LOSS | NS_LFN;/* Lossy conversion */
|
||
2714:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2715:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsUpper(w)) { /* ASCII large capital */
|
||
2716:Middlewares/Third_Party/FatFs/src/ff.c **** b |= 2;
|
||
2717:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2718:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(w)) { /* ASCII small capital */
|
||
2719:Middlewares/Third_Party/FatFs/src/ff.c **** b |= 1; w -= 0x20;
|
||
2720:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2721:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2722:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2723:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2724:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[i++] = (BYTE)w;
|
||
2725:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2726:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2727:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->fn[0] == DDEM) dp->fn[0] = RDDEM; /* If the first character collides with DDEM, replace it
|
||
2728:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2729:Middlewares/Third_Party/FatFs/src/ff.c **** if (ni == 8) b <<= 2;
|
||
2730:Middlewares/Third_Party/FatFs/src/ff.c **** if ((b & 0x0C) == 0x0C || (b & 0x03) == 0x03) cf |= NS_LFN; /* Create LFN entry when there are com
|
||
2731:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(cf & NS_LFN)) { /* When LFN is in 8.3 format without extended character, NT flags are c
|
||
2732:Middlewares/Third_Party/FatFs/src/ff.c **** if ((b & 0x03) == 0x01) cf |= NS_EXT; /* NT flag (Extension has only small capital) */
|
||
2733:Middlewares/Third_Party/FatFs/src/ff.c **** if ((b & 0x0C) == 0x04) cf |= NS_BODY; /* NT flag (Filename has only small capital) */
|
||
2734:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2735:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2736:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = cf; /* SFN is created */
|
||
2737:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2738:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
ARM GAS /tmp/ccH7dUYB.s page 73
|
||
|
||
|
||
2739:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2740:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2741:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* _USE_LFN != 0 : Non-LFN configuration */
|
||
2742:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE c, d, *sfn;
|
||
1307 .loc 1 2742 2 is_stmt 1 view .LVU376
|
||
2743:Middlewares/Third_Party/FatFs/src/ff.c **** UINT ni, si, i;
|
||
1308 .loc 1 2743 2 view .LVU377
|
||
2744:Middlewares/Third_Party/FatFs/src/ff.c **** const char *p;
|
||
1309 .loc 1 2744 2 view .LVU378
|
||
2745:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2746:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create file name in directory form */
|
||
2747:Middlewares/Third_Party/FatFs/src/ff.c **** p = *path; sfn = dp->fn;
|
||
1310 .loc 1 2747 2 view .LVU379
|
||
1311 .loc 1 2747 4 is_stmt 0 view .LVU380
|
||
1312 0008 D1F80080 ldr r8, [r1]
|
||
1313 .LVL133:
|
||
1314 .loc 1 2747 13 is_stmt 1 view .LVU381
|
||
1315 .loc 1 2747 17 is_stmt 0 view .LVU382
|
||
1316 000c 00F1240B add fp, r0, #36
|
||
1317 .LVL134:
|
||
2748:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(sfn, ' ', 11);
|
||
1318 .loc 1 2748 2 is_stmt 1 view .LVU383
|
||
1319 0010 0B22 movs r2, #11
|
||
1320 0012 2021 movs r1, #32
|
||
1321 .LVL135:
|
||
1322 .loc 1 2748 2 is_stmt 0 view .LVU384
|
||
1323 0014 5846 mov r0, fp
|
||
1324 .LVL136:
|
||
1325 .loc 1 2748 2 view .LVU385
|
||
1326 0016 FFF7FEFF bl mem_set
|
||
1327 .LVL137:
|
||
2749:Middlewares/Third_Party/FatFs/src/ff.c **** si = i = 0; ni = 8;
|
||
1328 .loc 1 2749 2 is_stmt 1 view .LVU386
|
||
1329 .loc 1 2749 14 view .LVU387
|
||
1330 .loc 1 2749 9 is_stmt 0 view .LVU388
|
||
1331 001a 0025 movs r5, #0
|
||
1332 .loc 1 2749 5 view .LVU389
|
||
1333 001c 2B46 mov r3, r5
|
||
1334 .loc 1 2749 17 view .LVU390
|
||
1335 001e 0827 movs r7, #8
|
||
1336 0020 29E0 b .L111
|
||
1337 .LVL138:
|
||
1338 .L115:
|
||
2750:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
2751:Middlewares/Third_Party/FatFs/src/ff.c **** if (p[si] == '.') { /* Is this a dot entry? */
|
||
2752:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
2753:Middlewares/Third_Party/FatFs/src/ff.c **** c = (BYTE)p[si++];
|
||
2754:Middlewares/Third_Party/FatFs/src/ff.c **** if (c != '.' || si >= 3) break;
|
||
2755:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
2756:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2757:Middlewares/Third_Party/FatFs/src/ff.c **** if (c != '/' && c != '\\' && c > ' ') return FR_INVALID_NAME;
|
||
2758:Middlewares/Third_Party/FatFs/src/ff.c **** *path = p + si; /* Return pointer to the next segment */
|
||
2759:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[NSFLAG] = (c <= ' ') ? NS_LAST | NS_DOT : NS_DOT; /* Set last segment flag if end of the path
|
||
2760:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
2761:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2762:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2763:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 74
|
||
|
||
|
||
2764:Middlewares/Third_Party/FatFs/src/ff.c **** c = (BYTE)p[si++];
|
||
2765:Middlewares/Third_Party/FatFs/src/ff.c **** if (c <= ' ') break; /* Break if end of the path name */
|
||
2766:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '/' || c == '\\') { /* Break if a separator is found */
|
||
2767:Middlewares/Third_Party/FatFs/src/ff.c **** while (p[si] == '/' || p[si] == '\\') si++; /* Skip duplicated separator if exist */
|
||
1339 .loc 1 2767 42 is_stmt 1 discriminator 2 view .LVU391
|
||
1340 .loc 1 2767 44 is_stmt 0 discriminator 2 view .LVU392
|
||
1341 0022 0136 adds r6, r6, #1
|
||
1342 .LVL139:
|
||
1343 .L113:
|
||
1344 .loc 1 2767 24 is_stmt 1 discriminator 1 view .LVU393
|
||
1345 .loc 1 2767 12 is_stmt 0 discriminator 1 view .LVU394
|
||
1346 0024 18F80630 ldrb r3, [r8, r6] @ zero_extendqisi2
|
||
1347 .loc 1 2767 24 discriminator 1 view .LVU395
|
||
1348 0028 2F2B cmp r3, #47
|
||
1349 002a FAD0 beq .L115
|
||
1350 .loc 1 2767 24 discriminator 1 view .LVU396
|
||
1351 002c 5C2B cmp r3, #92
|
||
1352 002e F8D0 beq .L115
|
||
1353 .L112:
|
||
2768:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2769:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2770:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '.' || i >= ni) { /* End of body or over size? */
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** if (ni == 11 || c != '.') return FR_INVALID_NAME; /* Over size or invalid dot */
|
||
2772:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
2773:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
2774:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2775:Middlewares/Third_Party/FatFs/src/ff.c **** if (c >= 0x80) { /* Extended character? */
|
||
2776:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
2777:Middlewares/Third_Party/FatFs/src/ff.c **** c = ExCvt[c - 0x80]; /* To upper extended characters (SBCS cfg) */
|
||
2778:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
2779:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_DF1S
|
||
2780:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_INVALID_NAME; /* Reject extended characters (ASCII only cfg) */
|
||
2781:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2782:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2783:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2784:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(c)) { /* Check if it is a DBC 1st byte (always false at SBCS cfg.) */
|
||
2785:Middlewares/Third_Party/FatFs/src/ff.c **** d = (BYTE)p[si++]; /* Get 2nd byte */
|
||
2786:Middlewares/Third_Party/FatFs/src/ff.c **** if (!IsDBCS2(d) || i >= ni - 1) return FR_INVALID_NAME; /* Reject invalid DBC */
|
||
2787:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
2788:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = d;
|
||
2789:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* SBC */
|
||
2790:Middlewares/Third_Party/FatFs/src/ff.c **** if (chk_chr("\"*+,:;<=>\?[]|\x7F", c)) return FR_INVALID_NAME; /* Reject illegal chrs for SFN */
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(c)) c -= 0x20; /* To upper */
|
||
2792:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
2793:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2794:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2795:Middlewares/Third_Party/FatFs/src/ff.c **** *path = p + si; /* Return pointer to the next segment */
|
||
1354 .loc 1 2795 2 is_stmt 1 view .LVU397
|
||
1355 .loc 1 2795 12 is_stmt 0 view .LVU398
|
||
1356 0030 4644 add r6, r6, r8
|
||
1357 .LVL140:
|
||
1358 .loc 1 2795 8 view .LVU399
|
||
1359 0032 CAF80060 str r6, [r10]
|
||
2796:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 0) return FR_INVALID_NAME; /* Reject nul string */
|
||
1360 .loc 1 2796 2 is_stmt 1 view .LVU400
|
||
1361 .loc 1 2796 5 is_stmt 0 view .LVU401
|
||
1362 0036 002D cmp r5, #0
|
||
ARM GAS /tmp/ccH7dUYB.s page 75
|
||
|
||
|
||
1363 0038 44D0 beq .L125
|
||
2797:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2798:Middlewares/Third_Party/FatFs/src/ff.c **** if (sfn[0] == DDEM) sfn[0] = RDDEM; /* If the first character collides with DDEM, replace it with
|
||
1364 .loc 1 2798 2 is_stmt 1 view .LVU402
|
||
1365 .loc 1 2798 9 is_stmt 0 view .LVU403
|
||
1366 003a 99F82430 ldrb r3, [r9, #36] @ zero_extendqisi2
|
||
1367 .loc 1 2798 5 view .LVU404
|
||
1368 003e E52B cmp r3, #229
|
||
1369 0040 35D0 beq .L129
|
||
1370 .L121:
|
||
2799:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[NSFLAG] = (c <= ' ') ? NS_LAST : 0; /* Set last segment flag if end of the path */
|
||
1371 .loc 1 2799 2 is_stmt 1 view .LVU405
|
||
1372 .loc 1 2799 14 is_stmt 0 view .LVU406
|
||
1373 0042 202C cmp r4, #32
|
||
1374 0044 37D8 bhi .L126
|
||
1375 .loc 1 2799 14 discriminator 1 view .LVU407
|
||
1376 0046 0423 movs r3, #4
|
||
1377 .L122:
|
||
1378 .loc 1 2799 14 discriminator 4 view .LVU408
|
||
1379 0048 89F82F30 strb r3, [r9, #47]
|
||
2800:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2801:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
1380 .loc 1 2801 2 is_stmt 1 view .LVU409
|
||
1381 .loc 1 2801 9 is_stmt 0 view .LVU410
|
||
1382 004c 0020 movs r0, #0
|
||
1383 004e 35E0 b .L117
|
||
1384 .LVL141:
|
||
1385 .L116:
|
||
2775:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
1386 .loc 1 2775 3 is_stmt 1 view .LVU411
|
||
2775:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
1387 .loc 1 2775 6 is_stmt 0 view .LVU412
|
||
1388 0050 14F0800F tst r4, #128
|
||
1389 0054 27D1 bne .L130
|
||
1390 .L119:
|
||
2784:Middlewares/Third_Party/FatFs/src/ff.c **** d = (BYTE)p[si++]; /* Get 2nd byte */
|
||
1391 .loc 1 2784 3 is_stmt 1 view .LVU413
|
||
2790:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(c)) c -= 0x20; /* To upper */
|
||
1392 .loc 1 2790 4 view .LVU414
|
||
2790:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(c)) c -= 0x20; /* To upper */
|
||
1393 .loc 1 2790 8 is_stmt 0 view .LVU415
|
||
1394 0056 2146 mov r1, r4
|
||
1395 0058 1B48 ldr r0, .L131
|
||
1396 005a FFF7FEFF bl chk_chr
|
||
1397 .LVL142:
|
||
2790:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(c)) c -= 0x20; /* To upper */
|
||
1398 .loc 1 2790 7 discriminator 1 view .LVU416
|
||
1399 005e 78BB cbnz r0, .L124
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
1400 .loc 1 2791 4 is_stmt 1 view .LVU417
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
1401 .loc 1 2791 8 is_stmt 0 view .LVU418
|
||
1402 0060 A4F16103 sub r3, r4, #97
|
||
1403 0064 DBB2 uxtb r3, r3
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
1404 .loc 1 2791 7 view .LVU419
|
||
1405 0066 192B cmp r3, #25
|
||
ARM GAS /tmp/ccH7dUYB.s page 76
|
||
|
||
|
||
1406 0068 01D8 bhi .L120
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
1407 .loc 1 2791 20 is_stmt 1 discriminator 1 view .LVU420
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
1408 .loc 1 2791 22 is_stmt 0 discriminator 1 view .LVU421
|
||
1409 006a 203C subs r4, r4, #32
|
||
1410 .LVL143:
|
||
2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c;
|
||
1411 .loc 1 2791 22 discriminator 1 view .LVU422
|
||
1412 006c E4B2 uxtb r4, r4
|
||
1413 .LVL144:
|
||
1414 .L120:
|
||
2792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1415 .loc 1 2792 4 is_stmt 1 view .LVU423
|
||
2792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1416 .loc 1 2792 13 is_stmt 0 view .LVU424
|
||
1417 006e 0BF80540 strb r4, [fp, r5]
|
||
2792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1418 .loc 1 2792 9 view .LVU425
|
||
1419 0072 0135 adds r5, r5, #1
|
||
1420 .LVL145:
|
||
1421 .L118:
|
||
2792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1422 .loc 1 2792 9 view .LVU426
|
||
1423 0074 3346 mov r3, r6
|
||
1424 .LVL146:
|
||
1425 .L111:
|
||
2763:Middlewares/Third_Party/FatFs/src/ff.c **** c = (BYTE)p[si++];
|
||
1426 .loc 1 2763 2 is_stmt 1 view .LVU427
|
||
2764:Middlewares/Third_Party/FatFs/src/ff.c **** if (c <= ' ') break; /* Break if end of the path name */
|
||
1427 .loc 1 2764 3 view .LVU428
|
||
2764:Middlewares/Third_Party/FatFs/src/ff.c **** if (c <= ' ') break; /* Break if end of the path name */
|
||
1428 .loc 1 2764 17 is_stmt 0 view .LVU429
|
||
1429 0076 5E1C adds r6, r3, #1
|
||
1430 .LVL147:
|
||
2764:Middlewares/Third_Party/FatFs/src/ff.c **** if (c <= ' ') break; /* Break if end of the path name */
|
||
1431 .loc 1 2764 5 view .LVU430
|
||
1432 0078 18F80340 ldrb r4, [r8, r3] @ zero_extendqisi2
|
||
1433 .LVL148:
|
||
2765:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '/' || c == '\\') { /* Break if a separator is found */
|
||
1434 .loc 1 2765 3 is_stmt 1 view .LVU431
|
||
2765:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '/' || c == '\\') { /* Break if a separator is found */
|
||
1435 .loc 1 2765 6 is_stmt 0 view .LVU432
|
||
1436 007c 202C cmp r4, #32
|
||
1437 007e D7D9 bls .L112
|
||
2766:Middlewares/Third_Party/FatFs/src/ff.c **** while (p[si] == '/' || p[si] == '\\') si++; /* Skip duplicated separator if exist */
|
||
1438 .loc 1 2766 3 is_stmt 1 view .LVU433
|
||
2766:Middlewares/Third_Party/FatFs/src/ff.c **** while (p[si] == '/' || p[si] == '\\') si++; /* Skip duplicated separator if exist */
|
||
1439 .loc 1 2766 6 is_stmt 0 view .LVU434
|
||
1440 0080 5C2C cmp r4, #92
|
||
1441 0082 18BF it ne
|
||
1442 0084 2F2C cmpne r4, #47
|
||
1443 0086 CDD0 beq .L113
|
||
2770:Middlewares/Third_Party/FatFs/src/ff.c **** if (ni == 11 || c != '.') return FR_INVALID_NAME; /* Over size or invalid dot */
|
||
1444 .loc 1 2770 3 is_stmt 1 view .LVU435
|
||
2770:Middlewares/Third_Party/FatFs/src/ff.c **** if (ni == 11 || c != '.') return FR_INVALID_NAME; /* Over size or invalid dot */
|
||
1445 .loc 1 2770 6 is_stmt 0 view .LVU436
|
||
ARM GAS /tmp/ccH7dUYB.s page 77
|
||
|
||
|
||
1446 0088 2E2C cmp r4, #46
|
||
1447 008a 18BF it ne
|
||
1448 008c AF42 cmpne r7, r5
|
||
1449 008e DFD8 bhi .L116
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
1450 .loc 1 2771 4 is_stmt 1 view .LVU437
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
1451 .loc 1 2771 22 is_stmt 0 view .LVU438
|
||
1452 0090 2E3C subs r4, r4, #46
|
||
1453 .LVL149:
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
1454 .loc 1 2771 22 view .LVU439
|
||
1455 0092 18BF it ne
|
||
1456 0094 0124 movne r4, #1
|
||
1457 .LVL150:
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
1458 .loc 1 2771 17 view .LVU440
|
||
1459 0096 0B2F cmp r7, #11
|
||
1460 0098 08BF it eq
|
||
1461 009a 44F00104 orreq r4, r4, #1
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
1462 .loc 1 2771 7 view .LVU441
|
||
1463 009e 64B9 cbnz r4, .L123
|
||
2772:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
1464 .loc 1 2772 6 view .LVU442
|
||
1465 00a0 0825 movs r5, #8
|
||
1466 .LVL151:
|
||
2772:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
1467 .loc 1 2772 14 view .LVU443
|
||
1468 00a2 0B27 movs r7, #11
|
||
1469 .LVL152:
|
||
2772:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
1470 .loc 1 2772 14 view .LVU444
|
||
1471 00a4 E6E7 b .L118
|
||
1472 .LVL153:
|
||
1473 .L130:
|
||
2777:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1474 .loc 1 2777 4 is_stmt 1 view .LVU445
|
||
2777:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1475 .loc 1 2777 16 is_stmt 0 view .LVU446
|
||
1476 00a6 803C subs r4, r4, #128
|
||
1477 .LVL154:
|
||
2777:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1478 .loc 1 2777 6 view .LVU447
|
||
1479 00a8 084B ldr r3, .L131+4
|
||
1480 00aa 1C5D ldrb r4, [r3, r4] @ zero_extendqisi2
|
||
1481 .LVL155:
|
||
2777:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
1482 .loc 1 2777 6 view .LVU448
|
||
1483 00ac D3E7 b .L119
|
||
1484 .LVL156:
|
||
1485 .L129:
|
||
2798:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[NSFLAG] = (c <= ' ') ? NS_LAST : 0; /* Set last segment flag if end of the path */
|
||
1486 .loc 1 2798 22 is_stmt 1 discriminator 1 view .LVU449
|
||
2798:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[NSFLAG] = (c <= ' ') ? NS_LAST : 0; /* Set last segment flag if end of the path */
|
||
1487 .loc 1 2798 29 is_stmt 0 discriminator 1 view .LVU450
|
||
1488 00ae 0523 movs r3, #5
|
||
ARM GAS /tmp/ccH7dUYB.s page 78
|
||
|
||
|
||
1489 00b0 89F82430 strb r3, [r9, #36]
|
||
1490 00b4 C5E7 b .L121
|
||
1491 .L126:
|
||
2799:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1492 .loc 1 2799 14 discriminator 2 view .LVU451
|
||
1493 00b6 0023 movs r3, #0
|
||
1494 00b8 C6E7 b .L122
|
||
1495 .LVL157:
|
||
1496 .L123:
|
||
2771:Middlewares/Third_Party/FatFs/src/ff.c **** i = 8; ni = 11; /* Goto extension */
|
||
1497 .loc 1 2771 37 discriminator 1 view .LVU452
|
||
1498 00ba 0620 movs r0, #6
|
||
1499 .LVL158:
|
||
1500 .L117:
|
||
2802:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_LFN != 0 */
|
||
2803:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1501 .loc 1 2803 1 view .LVU453
|
||
1502 00bc BDE8F88F pop {r3, r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
1503 .LVL159:
|
||
1504 .L124:
|
||
2790:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(c)) c -= 0x20; /* To upper */
|
||
1505 .loc 1 2790 50 discriminator 1 view .LVU454
|
||
1506 00c0 0620 movs r0, #6
|
||
1507 00c2 FBE7 b .L117
|
||
1508 .LVL160:
|
||
1509 .L125:
|
||
2796:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1510 .loc 1 2796 21 discriminator 1 view .LVU455
|
||
1511 00c4 0620 movs r0, #6
|
||
1512 00c6 F9E7 b .L117
|
||
1513 .L132:
|
||
1514 .align 2
|
||
1515 .L131:
|
||
1516 00c8 00000000 .word .LC0
|
||
1517 00cc 00000000 .word ExCvt
|
||
1518 .cfi_endproc
|
||
1519 .LFE1215:
|
||
1521 .section .text.get_ldnumber,"ax",%progbits
|
||
1522 .align 1
|
||
1523 .syntax unified
|
||
1524 .thumb
|
||
1525 .thumb_func
|
||
1527 get_ldnumber:
|
||
1528 .LVL161:
|
||
1529 .LFB1217:
|
||
2804:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2805:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2806:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2807:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2808:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2809:Middlewares/Third_Party/FatFs/src/ff.c **** /* Follow a file path */
|
||
2810:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2811:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2812:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2813:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT follow_path ( /* FR_OK(0): successful, !=0: error code */
|
||
2814:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Directory object to return last directory and found object */
|
||
2815:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Full-path string to find a file or directory */
|
||
ARM GAS /tmp/ccH7dUYB.s page 79
|
||
|
||
|
||
2816:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2817:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2818:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
2819:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE ns;
|
||
2820:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID *obj = &dp->obj;
|
||
2821:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
2822:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2823:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2824:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
2825:Middlewares/Third_Party/FatFs/src/ff.c **** if (*path != '/' && *path != '\\') { /* Without heading separator */
|
||
2826:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = fs->cdir; /* Start from current directory */
|
||
2827:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
2828:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2829:Middlewares/Third_Party/FatFs/src/ff.c **** { /* With heading separator */
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** while (*path == '/' || *path == '\\') path++; /* Strip heading separator */
|
||
2831:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
2832:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2833:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2834:Middlewares/Third_Party/FatFs/src/ff.c **** obj->n_frag = 0; /* Invalidate last fragment counter of the object */
|
||
2835:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
2836:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT && obj->sclust) { /* Retrieve the sub-directory status if needed */
|
||
2837:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
2838:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2839:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_scl = fs->cdc_scl;
|
||
2840:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_size = fs->cdc_size;
|
||
2841:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_ofs = fs->cdc_ofs;
|
||
2842:Middlewares/Third_Party/FatFs/src/ff.c **** res = load_obj_dir(&dj, obj);
|
||
2843:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
2844:Middlewares/Third_Party/FatFs/src/ff.c **** obj->objsize = ld_dword(fs->dirbuf + XDIR_FileSize);
|
||
2845:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = fs->dirbuf[XDIR_GenFlags] & 2;
|
||
2846:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2847:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2848:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2849:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2850:Middlewares/Third_Party/FatFs/src/ff.c **** if ((UINT)*path < ' ') { /* Null path name is the origin directory itself */
|
||
2851:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = NS_NONAME;
|
||
2852:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0);
|
||
2853:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2854:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Follow path */
|
||
2855:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
2856:Middlewares/Third_Party/FatFs/src/ff.c **** res = create_name(dp, &path); /* Get a segment name of the path */
|
||
2857:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2858:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_find(dp); /* Find an object with the segment name */
|
||
2859:Middlewares/Third_Party/FatFs/src/ff.c **** ns = dp->fn[NSFLAG];
|
||
2860:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) { /* Failed to find the object */
|
||
2861:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* Object is not found */
|
||
2862:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && (ns & NS_DOT)) { /* If dot entry is not exist, stay there */
|
||
2863:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(ns & NS_LAST)) continue; /* Continue to follow if not last segment */
|
||
2864:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = NS_NONAME;
|
||
2865:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
2866:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Could not find the object */
|
||
2867:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(ns & NS_LAST)) res = FR_NO_PATH; /* Adjust error code if not last segment */
|
||
2868:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2869:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2870:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2871:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2872:Middlewares/Third_Party/FatFs/src/ff.c **** if (ns & NS_LAST) break; /* Last segment matched. Function completed. */
|
||
ARM GAS /tmp/ccH7dUYB.s page 80
|
||
|
||
|
||
2873:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get into the sub-directory */
|
||
2874:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(obj->attr & AM_DIR)) { /* It is not a sub-directory and cannot follow */
|
||
2875:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_PATH; break;
|
||
2876:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2877:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2878:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* Save containing directory information for next dir */
|
||
2879:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_scl = obj->sclust;
|
||
2880:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_size = ((DWORD)obj->objsize & 0xFFFFFF00) | obj->stat;
|
||
2881:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_ofs = dp->blk_ofs;
|
||
2882:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = ld_dword(fs->dirbuf + XDIR_FstClus); /* Open next directory */
|
||
2883:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = fs->dirbuf[XDIR_GenFlags] & 2;
|
||
2884:Middlewares/Third_Party/FatFs/src/ff.c **** obj->objsize = ld_qword(fs->dirbuf + XDIR_FileSize);
|
||
2885:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
2886:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2887:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = ld_clust(fs, fs->win + dp->dptr % SS(fs)); /* Open next directory */
|
||
2889:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2890:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2891:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2892:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2893:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
2894:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2895:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2896:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2897:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2898:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2899:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2900:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive number from path name */
|
||
2901:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2902:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2903:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2904:Middlewares/Third_Party/FatFs/src/ff.c **** int get_ldnumber ( /* Returns logical drive number (-1:invalid drive) */
|
||
2905:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR** path /* Pointer to pointer to the path name */
|
||
2906:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2907:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1530 .loc 1 2907 1 is_stmt 1 view -0
|
||
1531 .cfi_startproc
|
||
1532 @ args = 0, pretend = 0, frame = 0
|
||
1533 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1534 @ link register save eliminated.
|
||
1535 .loc 1 2907 1 is_stmt 0 view .LVU457
|
||
1536 0000 0146 mov r1, r0
|
||
2908:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR *tp, *tt;
|
||
1537 .loc 1 2908 2 is_stmt 1 view .LVU458
|
||
2909:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
1538 .loc 1 2909 2 view .LVU459
|
||
2910:Middlewares/Third_Party/FatFs/src/ff.c **** int vol = -1;
|
||
1539 .loc 1 2910 2 view .LVU460
|
||
1540 .LVL162:
|
||
2911:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STR_VOLUME_ID /* Find string drive id */
|
||
2912:Middlewares/Third_Party/FatFs/src/ff.c **** static const char* const volid[] = {_VOLUME_STRS};
|
||
2913:Middlewares/Third_Party/FatFs/src/ff.c **** const char *sp;
|
||
2914:Middlewares/Third_Party/FatFs/src/ff.c **** char c;
|
||
2915:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR tc;
|
||
2916:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2917:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2918:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 81
|
||
|
||
|
||
2919:Middlewares/Third_Party/FatFs/src/ff.c **** if (*path) { /* If the pointer is not a null */
|
||
1541 .loc 1 2919 2 view .LVU461
|
||
1542 .loc 1 2919 6 is_stmt 0 view .LVU462
|
||
1543 0002 0068 ldr r0, [r0]
|
||
1544 .LVL163:
|
||
1545 .loc 1 2919 5 view .LVU463
|
||
1546 0004 08B1 cbz r0, .L144
|
||
2920:Middlewares/Third_Party/FatFs/src/ff.c **** for (tt = *path; (UINT)*tt >= (_USE_LFN ? ' ' : '!') && *tt != ':'; tt++) ; /* Find ':' in the pa
|
||
1547 .loc 1 2920 11 view .LVU464
|
||
1548 0006 0246 mov r2, r0
|
||
1549 0008 03E0 b .L134
|
||
1550 .L144:
|
||
2910:Middlewares/Third_Party/FatFs/src/ff.c **** int vol = -1;
|
||
1551 .loc 1 2910 6 view .LVU465
|
||
1552 000a 4FF0FF30 mov r0, #-1
|
||
1553 000e 7047 bx lr
|
||
1554 .LVL164:
|
||
1555 .L136:
|
||
1556 .loc 1 2920 73 is_stmt 1 discriminator 3 view .LVU466
|
||
1557 0010 0132 adds r2, r2, #1
|
||
1558 .LVL165:
|
||
1559 .L134:
|
||
1560 .loc 1 2920 56 discriminator 1 view .LVU467
|
||
1561 .loc 1 2920 26 is_stmt 0 discriminator 1 view .LVU468
|
||
1562 0012 1378 ldrb r3, [r2] @ zero_extendqisi2
|
||
1563 .loc 1 2920 56 discriminator 1 view .LVU469
|
||
1564 0014 202B cmp r3, #32
|
||
1565 0016 01D9 bls .L143
|
||
1566 0018 3A2B cmp r3, #58
|
||
1567 001a F9D1 bne .L136
|
||
1568 .L143:
|
||
2921:Middlewares/Third_Party/FatFs/src/ff.c **** if (*tt == ':') { /* If a ':' is exist in the path name */
|
||
1569 .loc 1 2921 3 is_stmt 1 view .LVU470
|
||
1570 .loc 1 2921 6 is_stmt 0 view .LVU471
|
||
1571 001c 3A2B cmp r3, #58
|
||
1572 001e 01D0 beq .L145
|
||
2922:Middlewares/Third_Party/FatFs/src/ff.c **** tp = *path;
|
||
2923:Middlewares/Third_Party/FatFs/src/ff.c **** i = *tp++ - '0';
|
||
2924:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 10 && tp == tt) { /* Is there a numeric drive id? */
|
||
2925:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < _VOLUMES) { /* If a drive id is found, get the value and strip it */
|
||
2926:Middlewares/Third_Party/FatFs/src/ff.c **** vol = (int)i;
|
||
2927:Middlewares/Third_Party/FatFs/src/ff.c **** *path = ++tt;
|
||
2928:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2929:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2930:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STR_VOLUME_ID
|
||
2931:Middlewares/Third_Party/FatFs/src/ff.c **** else { /* No numeric drive number, find string drive id */
|
||
2932:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0; tt++;
|
||
2933:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
2934:Middlewares/Third_Party/FatFs/src/ff.c **** sp = volid[i]; tp = *path;
|
||
2935:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Compare a string drive id with path name */
|
||
2936:Middlewares/Third_Party/FatFs/src/ff.c **** c = *sp++; tc = *tp++;
|
||
2937:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(tc)) tc -= 0x20;
|
||
2938:Middlewares/Third_Party/FatFs/src/ff.c **** } while (c && (TCHAR)c == tc);
|
||
2939:Middlewares/Third_Party/FatFs/src/ff.c **** } while ((c || tp != tt) && ++i < _VOLUMES); /* Repeat for each id until pattern match */
|
||
2940:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < _VOLUMES) { /* If a drive id is found, get the value and strip it */
|
||
2941:Middlewares/Third_Party/FatFs/src/ff.c **** vol = (int)i;
|
||
2942:Middlewares/Third_Party/FatFs/src/ff.c **** *path = tt;
|
||
ARM GAS /tmp/ccH7dUYB.s page 82
|
||
|
||
|
||
2943:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2944:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2945:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2946:Middlewares/Third_Party/FatFs/src/ff.c **** return vol;
|
||
2947:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2948:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0 && _VOLUMES >= 2
|
||
2949:Middlewares/Third_Party/FatFs/src/ff.c **** vol = CurrVol; /* Current drive */
|
||
2950:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
2951:Middlewares/Third_Party/FatFs/src/ff.c **** vol = 0; /* Drive 0 */
|
||
1573 .loc 1 2951 7 view .LVU472
|
||
1574 0020 0020 movs r0, #0
|
||
1575 .LVL166:
|
||
2952:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2953:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2954:Middlewares/Third_Party/FatFs/src/ff.c **** return vol;
|
||
2955:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1576 .loc 1 2955 1 view .LVU473
|
||
1577 0022 7047 bx lr
|
||
1578 .LVL167:
|
||
1579 .L145:
|
||
2922:Middlewares/Third_Party/FatFs/src/ff.c **** tp = *path;
|
||
1580 .loc 1 2922 4 is_stmt 1 view .LVU474
|
||
2923:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 10 && tp == tt) { /* Is there a numeric drive id? */
|
||
1581 .loc 1 2923 4 view .LVU475
|
||
2923:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 10 && tp == tt) { /* Is there a numeric drive id? */
|
||
1582 .loc 1 2923 11 is_stmt 0 view .LVU476
|
||
1583 0024 0346 mov r3, r0
|
||
1584 .LVL168:
|
||
2923:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 10 && tp == tt) { /* Is there a numeric drive id? */
|
||
1585 .loc 1 2923 8 view .LVU477
|
||
1586 0026 13F8010B ldrb r0, [r3], #1 @ zero_extendqisi2
|
||
1587 .LVL169:
|
||
2923:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 10 && tp == tt) { /* Is there a numeric drive id? */
|
||
1588 .loc 1 2923 14 view .LVU478
|
||
1589 002a 3038 subs r0, r0, #48
|
||
1590 .LVL170:
|
||
2924:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < _VOLUMES) { /* If a drive id is found, get the value and strip it */
|
||
1591 .loc 1 2924 4 is_stmt 1 view .LVU479
|
||
2924:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < _VOLUMES) { /* If a drive id is found, get the value and strip it */
|
||
1592 .loc 1 2924 7 is_stmt 0 view .LVU480
|
||
1593 002c 0928 cmp r0, #9
|
||
1594 002e 98BF it ls
|
||
1595 0030 9A42 cmpls r2, r3
|
||
1596 0032 03D1 bne .L141
|
||
2925:Middlewares/Third_Party/FatFs/src/ff.c **** vol = (int)i;
|
||
1597 .loc 1 2925 5 is_stmt 1 view .LVU481
|
||
2925:Middlewares/Third_Party/FatFs/src/ff.c **** vol = (int)i;
|
||
1598 .loc 1 2925 8 is_stmt 0 view .LVU482
|
||
1599 0034 28B9 cbnz r0, .L142
|
||
2926:Middlewares/Third_Party/FatFs/src/ff.c **** *path = ++tt;
|
||
1600 .loc 1 2926 6 is_stmt 1 view .LVU483
|
||
1601 .LVL171:
|
||
2927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1602 .loc 1 2927 6 view .LVU484
|
||
2927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1603 .loc 1 2927 12 is_stmt 0 view .LVU485
|
||
1604 0036 0132 adds r2, r2, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 83
|
||
|
||
|
||
1605 .LVL172:
|
||
2927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1606 .loc 1 2927 12 view .LVU486
|
||
1607 0038 0A60 str r2, [r1]
|
||
1608 003a 7047 bx lr
|
||
1609 .LVL173:
|
||
1610 .L141:
|
||
2910:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STR_VOLUME_ID /* Find string drive id */
|
||
1611 .loc 1 2910 6 view .LVU487
|
||
1612 003c 4FF0FF30 mov r0, #-1
|
||
1613 .LVL174:
|
||
2910:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STR_VOLUME_ID /* Find string drive id */
|
||
1614 .loc 1 2910 6 view .LVU488
|
||
1615 0040 7047 bx lr
|
||
1616 .LVL175:
|
||
1617 .L142:
|
||
2910:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STR_VOLUME_ID /* Find string drive id */
|
||
1618 .loc 1 2910 6 view .LVU489
|
||
1619 0042 4FF0FF30 mov r0, #-1
|
||
1620 .LVL176:
|
||
2946:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1621 .loc 1 2946 4 is_stmt 1 view .LVU490
|
||
2946:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1622 .loc 1 2946 11 is_stmt 0 view .LVU491
|
||
1623 0046 7047 bx lr
|
||
1624 .cfi_endproc
|
||
1625 .LFE1217:
|
||
1627 .section .text.putc_init,"ax",%progbits
|
||
1628 .align 1
|
||
1629 .syntax unified
|
||
1630 .thumb
|
||
1631 .thumb_func
|
||
1633 putc_init:
|
||
1634 .LVL177:
|
||
1635 .LFB1241:
|
||
2956:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2957:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2958:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2959:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2960:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2961:Middlewares/Third_Party/FatFs/src/ff.c **** /* Load a sector and check if it is an FAT boot sector */
|
||
2962:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2963:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2964:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2965:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE check_fs ( /* 0:FAT, 1:exFAT, 2:Valid BS but not FAT, 3:Not a BS, 4:Disk error */
|
||
2966:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* File system object */
|
||
2967:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sect /* Sector# (lba) to load and check if it is an FAT-VBR or not */
|
||
2968:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2969:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2970:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 0; fs->winsect = 0xFFFFFFFF; /* Invaidate window */
|
||
2971:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect) != FR_OK) return 4; /* Load boot record */
|
||
2972:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2973:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BS_55AA) != 0xAA55) return 3; /* Check boot record signature (always placed
|
||
2974:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2975:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->win[BS_JmpBoot] == 0xE9 || (fs->win[BS_JmpBoot] == 0xEB && fs->win[BS_JmpBoot + 2] == 0x90
|
||
2976:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string *
|
||
2977:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_dword(fs->win + BS_FilSysType32) == 0x33544146) return 0; /* Check "FAT3" string */
|
||
ARM GAS /tmp/ccH7dUYB.s page 84
|
||
|
||
|
||
2978:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2979:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
2980:Middlewares/Third_Party/FatFs/src/ff.c **** if (!mem_cmp(fs->win + BS_JmpBoot, "\xEB\x76\x90" "EXFAT ", 11)) return 1;
|
||
2981:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2982:Middlewares/Third_Party/FatFs/src/ff.c **** return 2;
|
||
2983:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2984:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2985:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2986:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2987:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2988:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2989:Middlewares/Third_Party/FatFs/src/ff.c **** /* Find logical drive and check if the volume is mounted */
|
||
2990:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
2991:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2992:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
2993:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT find_volume ( /* FR_OK(0): successful, !=0: any error occurred */
|
||
2994:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR** path, /* Pointer to pointer to the path name (drive number) */
|
||
2995:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS** rfs, /* Pointer to pointer to the found file system object */
|
||
2996:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE mode /* !=0: Check write protection for write access */
|
||
2997:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
2998:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2999:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE fmt, *pt;
|
||
3000:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
3001:Middlewares/Third_Party/FatFs/src/ff.c **** DSTATUS stat;
|
||
3002:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD bsect, fasize, tsect, sysect, nclst, szbfat, br[4];
|
||
3003:Middlewares/Third_Party/FatFs/src/ff.c **** WORD nrsv;
|
||
3004:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3005:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
3006:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3007:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3008:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive number */
|
||
3009:Middlewares/Third_Party/FatFs/src/ff.c **** *rfs = 0;
|
||
3010:Middlewares/Third_Party/FatFs/src/ff.c **** vol = get_ldnumber(path);
|
||
3011:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
3012:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3013:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check if the file system object is valid or not */
|
||
3014:Middlewares/Third_Party/FatFs/src/ff.c **** fs = FatFs[vol]; /* Get pointer to the file system object */
|
||
3015:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fs) return FR_NOT_ENABLED; /* Is the file system object available? */
|
||
3016:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3017:Middlewares/Third_Party/FatFs/src/ff.c **** ENTER_FF(fs); /* Lock the volume */
|
||
3018:Middlewares/Third_Party/FatFs/src/ff.c **** *rfs = fs; /* Return pointer to the file system object */
|
||
3019:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3020:Middlewares/Third_Party/FatFs/src/ff.c **** mode &= (BYTE)~FA_READ; /* Desired access mode, write access or not */
|
||
3021:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type) { /* If the volume has been mounted */
|
||
3022:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_status(fs->drv);
|
||
3023:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(stat & STA_NOINIT)) { /* and the physical drive is kept initialized */
|
||
3024:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_READONLY && mode && (stat & STA_PROTECT)) { /* Check write protection if needed */
|
||
3025:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
3026:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3027:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK; /* The file system object is valid */
|
||
3028:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3029:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3030:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3031:Middlewares/Third_Party/FatFs/src/ff.c **** /* The file system object is not valid. */
|
||
3032:Middlewares/Third_Party/FatFs/src/ff.c **** /* Following code attempts to mount the volume. (analyze BPB and initialize the fs object) */
|
||
3033:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3034:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = 0; /* Clear the file system object */
|
||
ARM GAS /tmp/ccH7dUYB.s page 85
|
||
|
||
|
||
3035:Middlewares/Third_Party/FatFs/src/ff.c **** fs->drv = LD2PD(vol); /* Bind the logical drive and a physical drive */
|
||
3036:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(fs->drv); /* Initialize the physical drive */
|
||
3037:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) { /* Check if the initialization succeeded */
|
||
3038:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_NOT_READY; /* Failed to initialize due to no medium or hard error */
|
||
3039:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3040:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_READONLY && mode && (stat & STA_PROTECT)) { /* Check disk write protection if needed */
|
||
3041:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
3042:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3043:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size (multiple sector size cfg only) */
|
||
3044:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(fs->drv, GET_SECTOR_SIZE, &SS(fs)) != RES_OK) return FR_DISK_ERR;
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** if (SS(fs) > _MAX_SS || SS(fs) < _MIN_SS || (SS(fs) & (SS(fs) - 1))) return FR_DISK_ERR;
|
||
3046:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3047:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3048:Middlewares/Third_Party/FatFs/src/ff.c **** /* Find an FAT partition on the drive. Supports only generic partitioning rules, FDISK and SFD. */
|
||
3049:Middlewares/Third_Party/FatFs/src/ff.c **** bsect = 0;
|
||
3050:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = check_fs(fs, bsect); /* Load sector 0 and check if it is an FAT-VBR as SFD */
|
||
3051:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == 2 || (fmt < 2 && LD2PT(vol) != 0)) { /* Not an FAT-VBR or forced partition number */
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < 4; i++) { /* Get partition offset */
|
||
3053:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** br[i] = pt[PTE_System] ? ld_dword(pt + PTE_StLba) : 0;
|
||
3055:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3056:Middlewares/Third_Party/FatFs/src/ff.c **** i = LD2PT(vol); /* Partition number: 0:auto, 1-4:forced */
|
||
3057:Middlewares/Third_Party/FatFs/src/ff.c **** if (i) i--;
|
||
3058:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Find an FAT volume */
|
||
3059:Middlewares/Third_Party/FatFs/src/ff.c **** bsect = br[i];
|
||
3060:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = bsect ? check_fs(fs, bsect) : 3; /* Check the partition */
|
||
3061:Middlewares/Third_Party/FatFs/src/ff.c **** } while (LD2PT(vol) == 0 && fmt >= 2 && ++i < 4);
|
||
3062:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3063:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == 4) return FR_DISK_ERR; /* An error occured in the disk I/O layer */
|
||
3064:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt >= 2) return FR_NO_FILESYSTEM; /* No FAT volume is found */
|
||
3065:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3066:Middlewares/Third_Party/FatFs/src/ff.c **** /* An FAT volume is found (bsect). Following code initializes the file system object */
|
||
3067:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3068:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3069:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == 1) {
|
||
3070:Middlewares/Third_Party/FatFs/src/ff.c **** QWORD maxlba;
|
||
3071:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3072:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = BPB_ZeroedEx; i < BPB_ZeroedEx + 53 && fs->win[i] == 0; i++) ; /* Check zero filler */
|
||
3073:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < BPB_ZeroedEx + 53) return FR_NO_FILESYSTEM;
|
||
3074:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3075:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BPB_FSVerEx) != 0x100) return FR_NO_FILESYSTEM; /* Check exFAT revision (Mu
|
||
3076:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3077:Middlewares/Third_Party/FatFs/src/ff.c **** if (1 << fs->win[BPB_BytsPerSecEx] != SS(fs)) { /* (BPB_BytsPerSecEx must be equal to the physica
|
||
3078:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_NO_FILESYSTEM;
|
||
3079:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3080:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3081:Middlewares/Third_Party/FatFs/src/ff.c **** maxlba = ld_qword(fs->win + BPB_TotSecEx) + bsect; /* Last LBA + 1 of the volume */
|
||
3082:Middlewares/Third_Party/FatFs/src/ff.c **** if (maxlba >= 0x100000000) return FR_NO_FILESYSTEM; /* (It cannot be handled in 32-bit LBA) */
|
||
3083:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3084:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = ld_dword(fs->win + BPB_FatSzEx); /* Number of sectors per FAT */
|
||
3085:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3086:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fats = fs->win[BPB_NumFATsEx]; /* Number of FATs */
|
||
3087:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_fats != 1) return FR_NO_FILESYSTEM; /* (Supports only 1 FAT) */
|
||
3088:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3089:Middlewares/Third_Party/FatFs/src/ff.c **** fs->csize = 1 << fs->win[BPB_SecPerClusEx]; /* Cluster size */
|
||
3090:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->csize == 0) return FR_NO_FILESYSTEM; /* (Must be 1..32768) */
|
||
3091:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 86
|
||
|
||
|
||
3092:Middlewares/Third_Party/FatFs/src/ff.c **** nclst = ld_dword(fs->win + BPB_NumClusEx); /* Number of clusters */
|
||
3093:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst > MAX_EXFAT) return FR_NO_FILESYSTEM; /* (Too many clusters) */
|
||
3094:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fatent = nclst + 2;
|
||
3095:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3096:Middlewares/Third_Party/FatFs/src/ff.c **** /* Boundaries and Limits */
|
||
3097:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect;
|
||
3098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->database = bsect + ld_dword(fs->win + BPB_DataOfsEx);
|
||
3099:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fatbase = bsect + ld_dword(fs->win + BPB_FatOfsEx);
|
||
3100:Middlewares/Third_Party/FatFs/src/ff.c **** if (maxlba < (QWORD)fs->database + nclst * fs->csize) return FR_NO_FILESYSTEM; /* (Volume size mu
|
||
3101:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = ld_dword(fs->win + BPB_RootClusEx);
|
||
3102:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3103:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check if bitmap location is in assumption (at the first cluster) */
|
||
3104:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, clust2sect(fs, fs->dirbase)) != FR_OK) return FR_DISK_ERR;
|
||
3105:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < SS(fs); i += SZDIRE) {
|
||
3106:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->win[i] == 0x81 && ld_dword(fs->win + i + 20) == 2) break; /* 81 entry with cluster #2? *
|
||
3107:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3108:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == SS(fs)) return FR_NO_FILESYSTEM;
|
||
3109:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = fs->free_clst = 0xFFFFFFFF; /* Initialize cluster allocation information */
|
||
3111:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3112:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_EXFAT; /* FAT sub-type */
|
||
3113:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3114:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_EXFAT */
|
||
3115:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BPB_BytsPerSec) != SS(fs)) return FR_NO_FILESYSTEM; /* (BPB_BytsPerSec must
|
||
3117:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3118:Middlewares/Third_Party/FatFs/src/ff.c **** fasize = ld_word(fs->win + BPB_FATSz16); /* Number of sectors per FAT */
|
||
3119:Middlewares/Third_Party/FatFs/src/ff.c **** if (fasize == 0) fasize = ld_dword(fs->win + BPB_FATSz32);
|
||
3120:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = fasize;
|
||
3121:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3122:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fats = fs->win[BPB_NumFATs]; /* Number of FATs */
|
||
3123:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_fats != 1 && fs->n_fats != 2) return FR_NO_FILESYSTEM; /* (Must be 1 or 2) */
|
||
3124:Middlewares/Third_Party/FatFs/src/ff.c **** fasize *= fs->n_fats; /* Number of sectors for FAT area */
|
||
3125:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3126:Middlewares/Third_Party/FatFs/src/ff.c **** fs->csize = fs->win[BPB_SecPerClus]; /* Cluster size */
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->csize == 0 || (fs->csize & (fs->csize - 1))) return FR_NO_FILESYSTEM; /* (Must be power o
|
||
3128:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3129:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_rootdir = ld_word(fs->win + BPB_RootEntCnt); /* Number of root directory entries */
|
||
3130:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir % (SS(fs) / SZDIRE)) return FR_NO_FILESYSTEM; /* (Must be sector aligned) */
|
||
3131:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3132:Middlewares/Third_Party/FatFs/src/ff.c **** tsect = ld_word(fs->win + BPB_TotSec16); /* Number of sectors on the volume */
|
||
3133:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect == 0) tsect = ld_dword(fs->win + BPB_TotSec32);
|
||
3134:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3135:Middlewares/Third_Party/FatFs/src/ff.c **** nrsv = ld_word(fs->win + BPB_RsvdSecCnt); /* Number of reserved sectors */
|
||
3136:Middlewares/Third_Party/FatFs/src/ff.c **** if (nrsv == 0) return FR_NO_FILESYSTEM; /* (Must not be 0) */
|
||
3137:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3138:Middlewares/Third_Party/FatFs/src/ff.c **** /* Determine the FAT sub type */
|
||
3139:Middlewares/Third_Party/FatFs/src/ff.c **** sysect = nrsv + fasize + fs->n_rootdir / (SS(fs) / SZDIRE); /* RSV + FAT + DIR */
|
||
3140:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect < sysect) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
3141:Middlewares/Third_Party/FatFs/src/ff.c **** nclst = (tsect - sysect) / fs->csize; /* Number of clusters */
|
||
3142:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst == 0) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
3143:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32;
|
||
3144:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT16) fmt = FS_FAT16;
|
||
3145:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT12) fmt = FS_FAT12;
|
||
3146:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3147:Middlewares/Third_Party/FatFs/src/ff.c **** /* Boundaries and Limits */
|
||
3148:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fatent = nclst + 2; /* Number of FAT entries */
|
||
ARM GAS /tmp/ccH7dUYB.s page 87
|
||
|
||
|
||
3149:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect; /* Volume start sector */
|
||
3150:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fatbase = bsect + nrsv; /* FAT start sector */
|
||
3151:Middlewares/Third_Party/FatFs/src/ff.c **** fs->database = bsect + sysect; /* Data start sector */
|
||
3152:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
3153:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BPB_FSVer32) != 0) return FR_NO_FILESYSTEM; /* (Must be FAT32 revision 0.0
|
||
3154:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
|
||
3155:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = ld_dword(fs->win + BPB_RootClus32); /* Root directory start cluster */
|
||
3156:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = fs->n_fatent * 4; /* (Needed FAT size) */
|
||
3157:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3158:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir == 0) return FR_NO_FILESYSTEM;/* (BPB_RootEntCnt must not be 0) */
|
||
3159:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = fs->fatbase + fasize; /* Root directory start sector */
|
||
3160:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = (fmt == FS_FAT16) ? /* (Needed FAT size) */
|
||
3161:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fatent * 2 : fs->n_fatent * 3 / 2 + (fs->n_fatent & 1);
|
||
3162:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fsize < (szbfat + (SS(fs) - 1)) / SS(fs)) return FR_NO_FILESYSTEM; /* (BPB_FATSz must not
|
||
3164:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3165:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3166:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get FSINFO if available */
|
||
3167:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = fs->free_clst = 0xFFFFFFFF; /* Initialize cluster allocation information */
|
||
3168:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0x80;
|
||
3169:Middlewares/Third_Party/FatFs/src/ff.c **** #if (_FS_NOFSINFO & 3) != 3
|
||
3170:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32 /* Enable FSINFO only if FAT32 and BPB_FSInfo32 == 1 */
|
||
3171:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_word(fs->win + BPB_FSInfo32) == 1
|
||
3172:Middlewares/Third_Party/FatFs/src/ff.c **** && move_window(fs, bsect + 1) == FR_OK)
|
||
3173:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3174:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0;
|
||
3175:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BS_55AA) == 0xAA55 /* Load FSINFO data if available */
|
||
3176:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_LeadSig) == 0x41615252
|
||
3177:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_StrucSig) == 0x61417272)
|
||
3178:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3179:Middlewares/Third_Party/FatFs/src/ff.c **** #if (_FS_NOFSINFO & 1) == 0
|
||
3180:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst = ld_dword(fs->win + FSI_Free_Count);
|
||
3181:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3182:Middlewares/Third_Party/FatFs/src/ff.c **** #if (_FS_NOFSINFO & 2) == 0
|
||
3183:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = ld_dword(fs->win + FSI_Nxt_Free);
|
||
3184:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3185:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3186:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3187:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* (_FS_NOFSINFO & 3) != 3 */
|
||
3188:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
3189:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3190:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3191:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = fmt; /* FAT sub-type */
|
||
3192:Middlewares/Third_Party/FatFs/src/ff.c **** fs->id = ++Fsid; /* File system mount ID */
|
||
3193:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1
|
||
3194:Middlewares/Third_Party/FatFs/src/ff.c **** fs->lfnbuf = LfnBuf; /* Static LFN working buffer */
|
||
3195:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3196:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf = DirBuf; /* Static directory block scratchpad buuffer */
|
||
3197:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3198:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3199:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
3200:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdir = 0; /* Initialize current directory */
|
||
3201:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3202:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0 /* Clear file lock semaphores */
|
||
3203:Middlewares/Third_Party/FatFs/src/ff.c **** clear_lock(fs);
|
||
3204:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3205:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
ARM GAS /tmp/ccH7dUYB.s page 88
|
||
|
||
|
||
3206:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3207:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3208:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3209:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3210:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3211:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3212:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check if the file/directory object is valid or not */
|
||
3213:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3214:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3215:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
3216:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT validate ( /* Returns FR_OK or FR_INVALID_OBJECT */
|
||
3217:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID* obj, /* Pointer to the _OBJ, the 1st member in the FIL/DIR object, to check validity */
|
||
3218:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS** fs /* Pointer to pointer to the owner file system object to return */
|
||
3219:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3220:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_INVALID_OBJECT;
|
||
3222:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3223:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj && obj->fs && obj->fs->fs_type && obj->id == obj->fs->id) { /* Test if the object is valid
|
||
3225:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
3226:Middlewares/Third_Party/FatFs/src/ff.c **** if (lock_fs(obj->fs)) { /* Obtain the filesystem object */
|
||
3227:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(disk_status(obj->fs->drv) & STA_NOINIT)) { /* Test if the phsical drive is kept initialize
|
||
3228:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
3229:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3230:Middlewares/Third_Party/FatFs/src/ff.c **** unlock_fs(obj->fs, FR_OK);
|
||
3231:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3232:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3233:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_TIMEOUT;
|
||
3234:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3235:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3236:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(disk_status(obj->fs->drv) & STA_NOINIT)) { /* Test if the phsical drive is kept initialized
|
||
3237:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
3238:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3239:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3240:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** *fs = (res == FR_OK) ? obj->fs : 0; /* Corresponding filesystem object */
|
||
3242:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
3243:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3244:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3245:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3246:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3247:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3248:Middlewares/Third_Party/FatFs/src/ff.c **** /*---------------------------------------------------------------------------
|
||
3249:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3250:Middlewares/Third_Party/FatFs/src/ff.c **** Public Functions (FatFs API)
|
||
3251:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3252:Middlewares/Third_Party/FatFs/src/ff.c **** ----------------------------------------------------------------------------*/
|
||
3253:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3254:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3255:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3256:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3257:Middlewares/Third_Party/FatFs/src/ff.c **** /* Mount/Unmount a Logical Drive */
|
||
3258:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3259:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3260:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_mount (
|
||
3261:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* Pointer to the file system object (NULL:unmount)*/
|
||
3262:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Logical drive number to be mounted/unmounted */
|
||
ARM GAS /tmp/ccH7dUYB.s page 89
|
||
|
||
|
||
3263:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE opt /* Mode option 0:Do not mount (delayed mount), 1:Mount immediately */
|
||
3264:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3265:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3266:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *cfs;
|
||
3267:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
3268:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3269:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR *rp = path;
|
||
3270:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3271:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3272:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive number */
|
||
3273:Middlewares/Third_Party/FatFs/src/ff.c **** vol = get_ldnumber(&rp);
|
||
3274:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
3275:Middlewares/Third_Party/FatFs/src/ff.c **** cfs = FatFs[vol]; /* Pointer to fs object */
|
||
3276:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3277:Middlewares/Third_Party/FatFs/src/ff.c **** if (cfs) {
|
||
3278:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
3279:Middlewares/Third_Party/FatFs/src/ff.c **** clear_lock(cfs);
|
||
3280:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3281:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT /* Discard sync object of the current volume */
|
||
3282:Middlewares/Third_Party/FatFs/src/ff.c **** if (!ff_del_syncobj(cfs->sobj)) return FR_INT_ERR;
|
||
3283:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3284:Middlewares/Third_Party/FatFs/src/ff.c **** cfs->fs_type = 0; /* Clear old fs object */
|
||
3285:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3286:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3287:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs) {
|
||
3288:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = 0; /* Clear new fs object */
|
||
3289:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT /* Create sync object for the new volume */
|
||
3290:Middlewares/Third_Party/FatFs/src/ff.c **** if (!ff_cre_syncobj((BYTE)vol, &fs->sobj)) return FR_INT_ERR;
|
||
3291:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3292:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3293:Middlewares/Third_Party/FatFs/src/ff.c **** FatFs[vol] = fs; /* Register new fs object */
|
||
3294:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3295:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fs || opt != 1) return FR_OK; /* Do not mount now, it will be mounted later */
|
||
3296:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3297:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0); /* Force mounted the volume */
|
||
3298:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
3299:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3300:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3301:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3302:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3303:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3304:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3305:Middlewares/Third_Party/FatFs/src/ff.c **** /* Open or Create a File */
|
||
3306:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3307:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3308:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_open (
|
||
3309:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the blank file object */
|
||
3310:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Pointer to the file name */
|
||
3311:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE mode /* Access mode and file open mode flags */
|
||
3312:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3313:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3314:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3315:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
3316:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3317:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3318:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dw, cl, bcs, clst, sc;
|
||
3319:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ofs;
|
||
ARM GAS /tmp/ccH7dUYB.s page 90
|
||
|
||
|
||
3320:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3321:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
3322:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3323:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3324:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fp) return FR_INVALID_OBJECT;
|
||
3325:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3326:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
3327:Middlewares/Third_Party/FatFs/src/ff.c **** mode &= _FS_READONLY ? FA_READ : FA_READ | FA_WRITE | FA_CREATE_ALWAYS | FA_CREATE_NEW | FA_OPEN_A
|
||
3328:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, mode);
|
||
3329:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3330:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
3331:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
3332:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
3333:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY /* R/W configuration */
|
||
3334:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3335:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* Origin directory itself? */
|
||
3336:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
3337:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3338:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
3339:Middlewares/Third_Party/FatFs/src/ff.c **** else {
|
||
3340:Middlewares/Third_Party/FatFs/src/ff.c **** res = chk_lock(&dj, (mode & ~FA_READ) ? 1 : 0);
|
||
3341:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3342:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3343:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3344:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create or Open a file */
|
||
3345:Middlewares/Third_Party/FatFs/src/ff.c **** if (mode & (FA_CREATE_ALWAYS | FA_OPEN_ALWAYS | FA_CREATE_NEW)) {
|
||
3346:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) { /* No file, create new */
|
||
3347:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* There is no file to open, create a new entry */
|
||
3348:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** res = enq_lock() ? dir_register(&dj) : FR_TOO_MANY_OPEN_FILES;
|
||
3350:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3351:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&dj);
|
||
3352:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3353:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3354:Middlewares/Third_Party/FatFs/src/ff.c **** mode |= FA_CREATE_ALWAYS; /* File is created */
|
||
3355:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3356:Middlewares/Third_Party/FatFs/src/ff.c **** else { /* Any object is already existing */
|
||
3357:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & (AM_RDO | AM_DIR)) { /* Cannot overwrite it (R/O or DIR) */
|
||
3358:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
3359:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3360:Middlewares/Third_Party/FatFs/src/ff.c **** if (mode & FA_CREATE_NEW) res = FR_EXIST; /* Cannot create as new file */
|
||
3361:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3362:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3363:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (mode & FA_CREATE_ALWAYS)) { /* Truncate it if overwrite mode */
|
||
3364:Middlewares/Third_Party/FatFs/src/ff.c **** dw = GET_FATTIME();
|
||
3365:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3366:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
3367:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get current allocation info */
|
||
3368:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.fs = fs;
|
||
3369:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = ld_dword(fs->dirbuf + XDIR_FstClus);
|
||
3370:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_qword(fs->dirbuf + XDIR_FileSize);
|
||
3371:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.stat = fs->dirbuf[XDIR_GenFlags] & 2;
|
||
3372:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.n_frag = 0;
|
||
3373:Middlewares/Third_Party/FatFs/src/ff.c **** /* Initialize directory entry block */
|
||
3374:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_CrtTime, dw); /* Set created time */
|
||
3375:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_CrtTime10] = 0;
|
||
3376:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_ModTime, dw); /* Set modified time */
|
||
ARM GAS /tmp/ccH7dUYB.s page 91
|
||
|
||
|
||
3377:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_ModTime10] = 0;
|
||
3378:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_Attr] = AM_ARC; /* Reset attribute */
|
||
3379:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_FstClus, 0); /* Reset file allocation info */
|
||
3380:Middlewares/Third_Party/FatFs/src/ff.c **** st_qword(fs->dirbuf + XDIR_FileSize, 0);
|
||
3381:Middlewares/Third_Party/FatFs/src/ff.c **** st_qword(fs->dirbuf + XDIR_ValidFileSize, 0);
|
||
3382:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_GenFlags] = 1;
|
||
3383:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj);
|
||
3384:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && fp->obj.sclust) { /* Remove the cluster chain if exist */
|
||
3385:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, fp->obj.sclust, 0);
|
||
3386:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = fp->obj.sclust - 1; /* Reuse the cluster hole */
|
||
3387:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3388:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3389:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3390:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3391:Middlewares/Third_Party/FatFs/src/ff.c **** /* Clean directory info */
|
||
3392:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_CrtTime, dw); /* Set created time */
|
||
3393:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_ModTime, dw); /* Set modified time */
|
||
3394:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[DIR_Attr] = AM_ARC; /* Reset attribute */
|
||
3395:Middlewares/Third_Party/FatFs/src/ff.c **** cl = ld_clust(fs, dj.dir); /* Get cluster chain */
|
||
3396:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dj.dir, 0); /* Reset file allocation info */
|
||
3397:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_FileSize, 0);
|
||
3398:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
3399:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3400:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl) { /* Remove the cluster chain if exist */
|
||
3401:Middlewares/Third_Party/FatFs/src/ff.c **** dw = fs->winsect;
|
||
3402:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&dj.obj, cl, 0);
|
||
3403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3404:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dw);
|
||
3405:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = cl - 1; /* Reuse the cluster hole */
|
||
3406:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3407:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3408:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3409:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3410:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3411:Middlewares/Third_Party/FatFs/src/ff.c **** else { /* Open an existing file */
|
||
3412:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Following succeeded */
|
||
3413:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* It is a directory */
|
||
3414:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE;
|
||
3415:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3416:Middlewares/Third_Party/FatFs/src/ff.c **** if ((mode & FA_WRITE) && (dj.obj.attr & AM_RDO)) { /* R/O violation */
|
||
3417:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
3418:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3419:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3420:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3421:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3422:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3423:Middlewares/Third_Party/FatFs/src/ff.c **** if (mode & FA_CREATE_ALWAYS) /* Set file change flag if created or overwritten */
|
||
3424:Middlewares/Third_Party/FatFs/src/ff.c **** mode |= FA_MODIFIED;
|
||
3425:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_sect = fs->winsect; /* Pointer to the directory entry */
|
||
3426:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_ptr = dj.dir;
|
||
3427:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
3428:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.lockid = inc_lock(&dj, (mode & ~FA_READ) ? 1 : 0);
|
||
3429:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fp->obj.lockid) res = FR_INT_ERR;
|
||
3430:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3431:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3432:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* R/O configuration */
|
||
3433:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 92
|
||
|
||
|
||
3434:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* Origin directory itself? */
|
||
3435:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
3436:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3437:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* It is a directory */
|
||
3438:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE;
|
||
3439:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3440:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3441:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3442:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3443:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3444:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3445:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3446:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
3447:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.c_scl = dj.obj.sclust; /* Get containing directory info */
|
||
3448:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.c_size = ((DWORD)dj.obj.objsize & 0xFFFFFF00) | dj.obj.stat;
|
||
3449:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.c_ofs = dj.blk_ofs;
|
||
3450:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = ld_dword(fs->dirbuf + XDIR_FstClus); /* Get object allocation info */
|
||
3451:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_qword(fs->dirbuf + XDIR_FileSize);
|
||
3452:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.stat = fs->dirbuf[XDIR_GenFlags] & 2;
|
||
3453:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3454:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3455:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = ld_clust(fs, dj.dir); /* Get object allocation info */
|
||
3457:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize);
|
||
3458:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3459:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
3460:Middlewares/Third_Party/FatFs/src/ff.c **** fp->cltbl = 0; /* Disable fast seek mode */
|
||
3461:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3462:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.fs = fs; /* Validate the file object */
|
||
3463:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.id = fs->id;
|
||
3464:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag = mode; /* Set file access mode */
|
||
3465:Middlewares/Third_Party/FatFs/src/ff.c **** fp->err = 0; /* Clear error flag */
|
||
3466:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = 0; /* Invalidate current data sector */
|
||
3467:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = 0; /* Set file pointer top of the file */
|
||
3468:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3469:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
3470:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fp->buf, 0, _MAX_SS); /* Clear sector buffer */
|
||
3471:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3472:Middlewares/Third_Party/FatFs/src/ff.c **** if ((mode & FA_SEEKEND) && fp->obj.objsize > 0) { /* Seek to end of file if FA_OPEN_APPEND is sp
|
||
3473:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = fp->obj.objsize; /* Offset to seek */
|
||
3474:Middlewares/Third_Party/FatFs/src/ff.c **** bcs = (DWORD)fs->csize * SS(fs); /* Cluster size in byte */
|
||
3475:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow the cluster chain */
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** for (ofs = fp->obj.objsize; res == FR_OK && ofs > bcs; ofs -= bcs) {
|
||
3477:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
3478:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) res = FR_INT_ERR;
|
||
3479:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
3480:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3481:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ofs % SS(fs)) { /* Fill sector buffer if not on the sector boundary */
|
||
3483:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
3484:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
3485:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3486:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = sc + (DWORD)(ofs / SS(fs));
|
||
3487:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fp->buf, fp->sect, 1) != RES_OK) res = FR_DISK_ERR;
|
||
3489:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3490:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 93
|
||
|
||
|
||
3491:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3492:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3493:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3494:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3495:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3496:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
3497:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3498:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3499:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) fp->obj.fs = 0; /* Invalidate file object on error */
|
||
3500:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3501:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
3502:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3503:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3504:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3505:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3507:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3508:Middlewares/Third_Party/FatFs/src/ff.c **** /* Read File */
|
||
3509:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3510:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3511:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_read (
|
||
3512:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
3513:Middlewares/Third_Party/FatFs/src/ff.c **** void* buff, /* Pointer to data buffer */
|
||
3514:Middlewares/Third_Party/FatFs/src/ff.c **** UINT btr, /* Number of bytes to read */
|
||
3515:Middlewares/Third_Party/FatFs/src/ff.c **** UINT* br /* Pointer to number of bytes read */
|
||
3516:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3517:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3518:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3519:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3520:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, sect;
|
||
3521:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t remain;
|
||
3522:Middlewares/Third_Party/FatFs/src/ff.c **** UINT rcnt, cc, csect;
|
||
3523:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *rbuff = (BYTE*)buff;
|
||
3524:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3525:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3526:Middlewares/Third_Party/FatFs/src/ff.c **** *br = 0; /* Clear read byte counter */
|
||
3527:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
3528:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
3529:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_READ)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
3530:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
3531:Middlewares/Third_Party/FatFs/src/ff.c **** if (btr > remain) btr = (UINT)remain; /* Truncate btr by remaining bytes */
|
||
3532:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3533:Middlewares/Third_Party/FatFs/src/ff.c **** for ( ; btr; /* Repeat until all data read */
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** rbuff += rcnt, fp->fptr += rcnt, *br += rcnt, btr -= rcnt) {
|
||
3535:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
3536:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
3537:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
3538:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
3539:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow cluster chain from the origin */
|
||
3540:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Middle or end of the file */
|
||
3541:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
3542:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->cltbl) {
|
||
3543:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
3544:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3545:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3546:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3547:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, fp->clust); /* Follow cluster chain on the FAT */
|
||
ARM GAS /tmp/ccH7dUYB.s page 94
|
||
|
||
|
||
3548:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3549:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2) ABORT(fs, FR_INT_ERR);
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
3552:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
3553:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3554:Middlewares/Third_Party/FatFs/src/ff.c **** sect = clust2sect(fs, fp->clust); /* Get current sector */
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
3556:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
3557:Middlewares/Third_Party/FatFs/src/ff.c **** cc = btr / SS(fs); /* When remaining bytes >= sector size, */
|
||
3558:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Read maximum contiguous sectors directly */
|
||
3559:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect + cc > fs->csize) { /* Clip at cluster boundary */
|
||
3560:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
3561:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, rbuff, sect, cc) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
3563:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
3564:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
3565:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->wflag && fs->winsect - sect < cc) {
|
||
3566:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fs->winsect - sect) * SS(fs)), fs->win, SS(fs));
|
||
3567:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3568:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** if ((fp->flag & FA_DIRTY) && fp->sect - sect < cc) {
|
||
3570:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
3571:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3572:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3573:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3574:Middlewares/Third_Party/FatFs/src/ff.c **** rcnt = SS(fs) * cc; /* Number of bytes transferred */
|
||
3575:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
3576:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3577:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
3578:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->sect != sect) { /* Load data sector if not in cache */
|
||
3579:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3580:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back dirty sector cache */
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
3582:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
3583:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3584:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR); /* Fill sector cach
|
||
3586:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3587:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3588:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = sect;
|
||
3589:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3590:Middlewares/Third_Party/FatFs/src/ff.c **** rcnt = SS(fs) - (UINT)fp->fptr % SS(fs); /* Number of bytes left in the sector */
|
||
3591:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */
|
||
3592:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
3593:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fp->sect) != FR_OK) ABORT(fs, FR_DISK_ERR); /* Move sector window */
|
||
3594:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff, fs->win + fp->fptr % SS(fs), rcnt); /* Extract partial sector */
|
||
3595:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3596:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff, fp->buf + fp->fptr % SS(fs), rcnt); /* Extract partial sector */
|
||
3597:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3598:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3599:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3600:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, FR_OK);
|
||
3601:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3602:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3603:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3604:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 95
|
||
|
||
|
||
3605:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3606:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3607:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3608:Middlewares/Third_Party/FatFs/src/ff.c **** /* Write File */
|
||
3609:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3610:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3611:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_write (
|
||
3612:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
3613:Middlewares/Third_Party/FatFs/src/ff.c **** const void* buff, /* Pointer to the data to be written */
|
||
3614:Middlewares/Third_Party/FatFs/src/ff.c **** UINT btw, /* Number of bytes to write */
|
||
3615:Middlewares/Third_Party/FatFs/src/ff.c **** UINT* bw /* Pointer to number of bytes written */
|
||
3616:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3617:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3618:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3619:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3620:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, sect;
|
||
3621:Middlewares/Third_Party/FatFs/src/ff.c **** UINT wcnt, cc, csect;
|
||
3622:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE *wbuff = (const BYTE*)buff;
|
||
3623:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3624:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3625:Middlewares/Third_Party/FatFs/src/ff.c **** *bw = 0; /* Clear write byte counter */
|
||
3626:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
3627:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
3628:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
3629:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3630:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check fptr wrap-around (file size cannot reach 4GiB on FATxx) */
|
||
3631:Middlewares/Third_Party/FatFs/src/ff.c **** if ((!_FS_EXFAT || fs->fs_type != FS_EXFAT) && (DWORD)(fp->fptr + btw) < (DWORD)fp->fptr) {
|
||
3632:Middlewares/Third_Party/FatFs/src/ff.c **** btw = (UINT)(0xFFFFFFFF - (DWORD)fp->fptr);
|
||
3633:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3634:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3635:Middlewares/Third_Party/FatFs/src/ff.c **** for ( ; btw; /* Repeat until all data written */
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** wbuff += wcnt, fp->fptr += wcnt, fp->obj.objsize = (fp->fptr > fp->obj.objsize) ? fp->fptr : fp->
|
||
3637:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
3638:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
|
||
3639:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
3640:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
3641:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow from the origin */
|
||
3642:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* If no cluster is allocated, */
|
||
3643:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, 0); /* create a new cluster chain */
|
||
3644:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3645:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* On the middle or end of the file */
|
||
3646:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
3647:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->cltbl) {
|
||
3648:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
3649:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3650:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3651:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3652:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, fp->clust); /* Follow or stretch cluster chain on the FAT */
|
||
3653:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3654:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3655:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) break; /* Could not allocate a new cluster (disk full) */
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
3658:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
3659:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->obj.sclust == 0) fp->obj.sclust = clst; /* Set start cluster if the first write */
|
||
3660:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3661:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
ARM GAS /tmp/ccH7dUYB.s page 96
|
||
|
||
|
||
3662:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->winsect == fp->sect && sync_window(fs) != FR_OK) ABORT(fs, FR_DISK_ERR); /* Write-back s
|
||
3663:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3664:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back sector cache */
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
3666:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
3667:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3668:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3669:Middlewares/Third_Party/FatFs/src/ff.c **** sect = clust2sect(fs, fp->clust); /* Get current sector */
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
3671:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
3672:Middlewares/Third_Party/FatFs/src/ff.c **** cc = btw / SS(fs); /* When remaining bytes >= sector size, */
|
||
3673:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Write maximum contiguous sectors directly */
|
||
3674:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect + cc > fs->csize) { /* Clip at cluster boundary */
|
||
3675:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
3676:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, wbuff, sect, cc) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
3678:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
3679:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
3680:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->winsect - sect < cc) { /* Refill sector cache if it gets invalidated by the direct writ
|
||
3681:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fs->win, wbuff + ((fs->winsect - sect) * SS(fs)), SS(fs));
|
||
3682:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 0;
|
||
3683:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3684:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3685:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->sect - sect < cc) { /* Refill sector cache if it gets invalidated by the direct write *
|
||
3686:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs));
|
||
3687:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
3688:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3689:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3690:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3691:Middlewares/Third_Party/FatFs/src/ff.c **** wcnt = SS(fs) * cc; /* Number of bytes transferred */
|
||
3692:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
3693:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3694:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
3695:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr >= fp->obj.objsize) { /* Avoid silly cache filling on the growing edge */
|
||
3696:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) ABORT(fs, FR_DISK_ERR);
|
||
3697:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = sect;
|
||
3698:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3699:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3700:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->sect != sect && /* Fill sector cache with file data */
|
||
3701:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr < fp->obj.objsize &&
|
||
3702:Middlewares/Third_Party/FatFs/src/ff.c **** disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) {
|
||
3703:Middlewares/Third_Party/FatFs/src/ff.c **** ABORT(fs, FR_DISK_ERR);
|
||
3704:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3705:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3706:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = sect;
|
||
3707:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3708:Middlewares/Third_Party/FatFs/src/ff.c **** wcnt = SS(fs) - (UINT)fp->fptr % SS(fs); /* Number of bytes left in the sector */
|
||
3709:Middlewares/Third_Party/FatFs/src/ff.c **** if (wcnt > btw) wcnt = btw; /* Clip it by btw if needed */
|
||
3710:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
3711:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fp->sect) != FR_OK) ABORT(fs, FR_DISK_ERR); /* Move sector window */
|
||
3712:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fs->win + fp->fptr % SS(fs), wbuff, wcnt); /* Fit data to the sector */
|
||
3713:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
3714:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
3715:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf + fp->fptr % SS(fs), wbuff, wcnt); /* Fit data to the sector */
|
||
3716:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_DIRTY;
|
||
3717:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3718:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 97
|
||
|
||
|
||
3719:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3720:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED; /* Set file change flag */
|
||
3721:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3722:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, FR_OK);
|
||
3723:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3724:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3725:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3726:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3727:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3728:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3729:Middlewares/Third_Party/FatFs/src/ff.c **** /* Synchronize the File */
|
||
3730:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3731:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3732:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_sync (
|
||
3733:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp /* Pointer to the file object */
|
||
3734:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3735:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3736:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3737:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3738:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD tm;
|
||
3739:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *dir;
|
||
3740:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3741:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
3742:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
3743:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3744:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3745:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
3746:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3747:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_MODIFIED) { /* Is there any change to the file? */
|
||
3748:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
3749:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back cached data if needed */
|
||
3750:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) LEAVE_FF(fs, FR_DISK_ERR);
|
||
3751:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
3752:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3753:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3754:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update the directory entry */
|
||
3755:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME(); /* Modified time */
|
||
3756:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3757:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
3758:Middlewares/Third_Party/FatFs/src/ff.c **** res = fill_first_frag(&fp->obj); /* Fill first fragment on the FAT if needed */
|
||
3759:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3760:Middlewares/Third_Party/FatFs/src/ff.c **** res = fill_last_frag(&fp->obj, fp->clust, 0xFFFFFFFF); /* Fill last fragment on the FAT if nee
|
||
3761:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3762:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3763:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
3764:Middlewares/Third_Party/FatFs/src/ff.c **** res = load_obj_dir(&dj, &fp->obj); /* Load directory entry block */
|
||
3765:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3766:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_Attr] |= AM_ARC; /* Set archive bit */
|
||
3767:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_GenFlags] = fp->obj.stat | 1; /* Update file allocation info */
|
||
3768:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_FstClus, fp->obj.sclust);
|
||
3769:Middlewares/Third_Party/FatFs/src/ff.c **** st_qword(fs->dirbuf + XDIR_FileSize, fp->obj.objsize);
|
||
3770:Middlewares/Third_Party/FatFs/src/ff.c **** st_qword(fs->dirbuf + XDIR_ValidFileSize, fp->obj.objsize);
|
||
3771:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_ModTime, tm); /* Update modified time */
|
||
3772:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_ModTime10] = 0;
|
||
3773:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_AccTime, 0);
|
||
3774:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj); /* Restore it to the directory */
|
||
3775:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 98
|
||
|
||
|
||
3776:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
3777:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_MODIFIED;
|
||
3778:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3779:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3780:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
3781:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3782:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3783:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3784:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3785:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fp->dir_sect);
|
||
3786:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3787:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fp->dir_ptr;
|
||
3788:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] |= AM_ARC; /* Set archive bit */
|
||
3789:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fp->obj.fs, dir, fp->obj.sclust); /* Update file allocation info */
|
||
3790:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_FileSize, (DWORD)fp->obj.objsize); /* Update file size */
|
||
3791:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm); /* Update modified time */
|
||
3792:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + DIR_LstAccDate, 0);
|
||
3793:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
3794:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs); /* Restore it to the directory */
|
||
3795:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_MODIFIED;
|
||
3796:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3797:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3798:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3799:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3800:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3801:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
3802:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3803:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3804:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
3805:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3806:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3807:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3808:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3809:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3810:Middlewares/Third_Party/FatFs/src/ff.c **** /* Close File */
|
||
3811:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3812:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3813:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_close (
|
||
3814:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp /* Pointer to the file object to be closed */
|
||
3815:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3816:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3817:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3818:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3819:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3820:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
3821:Middlewares/Third_Party/FatFs/src/ff.c **** res = f_sync(fp); /* Flush cached data */
|
||
3822:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
3823:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3824:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3825:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Lock volume */
|
||
3826:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3827:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
3828:Middlewares/Third_Party/FatFs/src/ff.c **** res = dec_lock(fp->obj.lockid); /* Decrement file open counter */
|
||
3829:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
3830:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3831:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3832:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.fs = 0; /* Invalidate file object */
|
||
ARM GAS /tmp/ccH7dUYB.s page 99
|
||
|
||
|
||
3833:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3834:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
3835:Middlewares/Third_Party/FatFs/src/ff.c **** unlock_fs(fs, FR_OK); /* Unlock volume */
|
||
3836:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3837:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3838:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3839:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
3840:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3841:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3842:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3843:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3844:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3845:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH >= 1
|
||
3846:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3847:Middlewares/Third_Party/FatFs/src/ff.c **** /* Change Current Directory or Current Drive, Get Current Directory */
|
||
3848:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3849:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3850:Middlewares/Third_Party/FatFs/src/ff.c **** #if _VOLUMES >= 2
|
||
3851:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_chdrive (
|
||
3852:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Drive number */
|
||
3853:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3854:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3855:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
3856:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3857:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3858:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive number */
|
||
3859:Middlewares/Third_Party/FatFs/src/ff.c **** vol = get_ldnumber(&path);
|
||
3860:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
3861:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3862:Middlewares/Third_Party/FatFs/src/ff.c **** CurrVol = (BYTE)vol; /* Set it as current volume */
|
||
3863:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3864:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
3865:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3866:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3867:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3868:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3869:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_chdir (
|
||
3870:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Pointer to the directory path */
|
||
3871:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3872:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3873:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3874:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
3875:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3876:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
3877:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3878:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
3879:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0);
|
||
3880:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3881:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
3882:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
3883:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the path */
|
||
3884:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
3885:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) {
|
||
3886:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdir = dj.obj.sclust; /* It is the start directory itself */
|
||
3887:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3888:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
3889:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_scl = dj.obj.c_scl;
|
||
ARM GAS /tmp/ccH7dUYB.s page 100
|
||
|
||
|
||
3890:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_size = dj.obj.c_size;
|
||
3891:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_ofs = dj.obj.c_ofs;
|
||
3892:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3893:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3894:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3895:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* It is a sub-directory */
|
||
3896:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3897:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
3898:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdir = ld_dword(fs->dirbuf + XDIR_FstClus); /* Sub-directory cluster */
|
||
3899:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_scl = dj.obj.sclust; /* Save containing directory information */
|
||
3900:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_size = ((DWORD)dj.obj.objsize & 0xFFFFFF00) | dj.obj.stat;
|
||
3901:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_ofs = dj.blk_ofs;
|
||
3902:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
3903:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3904:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3905:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdir = ld_clust(fs, dj.dir); /* Sub-directory cluster */
|
||
3906:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3907:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3908:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_PATH; /* Reached but a file */
|
||
3909:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3910:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3911:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3912:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
3913:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_NO_PATH;
|
||
3914:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3915:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3916:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
3917:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3918:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3919:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3920:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH >= 2
|
||
3921:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_getcwd (
|
||
3922:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR* buff, /* Pointer to the directory path */
|
||
3923:Middlewares/Third_Party/FatFs/src/ff.c **** UINT len /* Size of path */
|
||
3924:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
3925:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
3926:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3927:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
3928:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
3929:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, n;
|
||
3930:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ccl;
|
||
3931:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR *tp;
|
||
3932:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO fno;
|
||
3933:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
3934:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3935:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3936:Middlewares/Third_Party/FatFs/src/ff.c **** *buff = 0;
|
||
3937:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
3938:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume((const TCHAR**)&buff, &fs, 0); /* Get current volume */
|
||
3939:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3940:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
3941:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
3942:Middlewares/Third_Party/FatFs/src/ff.c **** i = len; /* Bottom of buffer (directory stack base) */
|
||
3943:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) { /* (Cannot do getcwd on exFAT and returns root path)
|
||
3944:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.sclust = fs->cdir; /* Start to follow upper directory from current directory */
|
||
3945:Middlewares/Third_Party/FatFs/src/ff.c **** while ((ccl = dj.obj.sclust) != 0) { /* Repeat while current directory is a sub-directory */
|
||
3946:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(&dj, 1 * SZDIRE); /* Get parent directory */
|
||
ARM GAS /tmp/ccH7dUYB.s page 101
|
||
|
||
|
||
3947:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3948:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dj.sect);
|
||
3949:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3950:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.sclust = ld_clust(fs, dj.dir); /* Goto parent directory */
|
||
3951:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(&dj, 0);
|
||
3952:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3953:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Find the entry links to the child directory */
|
||
3954:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(&dj, 0);
|
||
3955:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3956:Middlewares/Third_Party/FatFs/src/ff.c **** if (ccl == ld_clust(fs, dj.dir)) break; /* Found the entry */
|
||
3957:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(&dj, 0);
|
||
3958:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK);
|
||
3959:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_INT_ERR;/* It cannot be 'not found'. */
|
||
3960:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3961:Middlewares/Third_Party/FatFs/src/ff.c **** get_fileinfo(&dj, &fno); /* Get the directory name and push it to the buffer */
|
||
3962:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 0; fno.fname[n]; n++) ;
|
||
3963:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < n + 3) {
|
||
3964:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NOT_ENOUGH_CORE; break;
|
||
3965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3966:Middlewares/Third_Party/FatFs/src/ff.c **** while (n) buff[--i] = fno.fname[--n];
|
||
3967:Middlewares/Third_Party/FatFs/src/ff.c **** buff[--i] = '/';
|
||
3968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3969:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3970:Middlewares/Third_Party/FatFs/src/ff.c **** tp = buff;
|
||
3971:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3972:Middlewares/Third_Party/FatFs/src/ff.c **** #if _VOLUMES >= 2
|
||
3973:Middlewares/Third_Party/FatFs/src/ff.c **** *tp++ = '0' + CurrVol; /* Put drive number */
|
||
3974:Middlewares/Third_Party/FatFs/src/ff.c **** *tp++ = ':';
|
||
3975:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
3976:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == len) { /* Root-directory */
|
||
3977:Middlewares/Third_Party/FatFs/src/ff.c **** *tp++ = '/';
|
||
3978:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Sub-directroy */
|
||
3979:Middlewares/Third_Party/FatFs/src/ff.c **** do /* Add stacked path str */
|
||
3980:Middlewares/Third_Party/FatFs/src/ff.c **** *tp++ = buff[i++];
|
||
3981:Middlewares/Third_Party/FatFs/src/ff.c **** while (i < len);
|
||
3982:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3983:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3984:Middlewares/Third_Party/FatFs/src/ff.c **** *tp = 0;
|
||
3985:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
3986:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3987:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3988:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
3989:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3990:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3991:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_RPATH >= 2 */
|
||
3992:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_RPATH >= 1 */
|
||
3993:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3994:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3995:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3996:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
3997:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
3998:Middlewares/Third_Party/FatFs/src/ff.c **** /* Seek File R/W Pointer */
|
||
3999:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4000:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4001:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_lseek (
|
||
4002:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
4003:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ofs /* File pointer from top of file */
|
||
ARM GAS /tmp/ccH7dUYB.s page 102
|
||
|
||
|
||
4004:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4005:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4006:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4007:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4008:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, bcs, nsect;
|
||
4009:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ifptr;
|
||
4010:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
4011:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cl, pcl, ncl, tcl, dsc, tlen, ulen, *tbl;
|
||
4012:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4013:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4014:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
4015:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = (FRESULT)fp->err;
|
||
4016:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT && !_FS_READONLY
|
||
4017:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && fs->fs_type == FS_EXFAT) {
|
||
4018:Middlewares/Third_Party/FatFs/src/ff.c **** res = fill_last_frag(&fp->obj, fp->clust, 0xFFFFFFFF); /* Fill last fragment on the FAT if needed
|
||
4019:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4020:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4021:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) LEAVE_FF(fs, res);
|
||
4022:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4023:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
4024:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->cltbl) { /* Fast seek */
|
||
4025:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs == CREATE_LINKMAP) { /* Create CLMT */
|
||
4026:Middlewares/Third_Party/FatFs/src/ff.c **** tbl = fp->cltbl;
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** tlen = *tbl++; ulen = 2; /* Given table size and required table size */
|
||
4028:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
4029:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl) {
|
||
4030:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4031:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get a fragment */
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** tcl = cl; ncl = 0; ulen += 2; /* Top, length and used items */
|
||
4033:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4034:Middlewares/Third_Party/FatFs/src/ff.c **** pcl = cl; ncl++;
|
||
4035:Middlewares/Third_Party/FatFs/src/ff.c **** cl = get_fat(&fp->obj, cl);
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR);
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
4038:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
4039:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) { /* Store the length and top of the fragment */
|
||
4040:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl++ = ncl; *tbl++ = tcl;
|
||
4041:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4042:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl < fs->n_fatent); /* Repeat until end of chain */
|
||
4043:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4044:Middlewares/Third_Party/FatFs/src/ff.c **** *fp->cltbl = ulen; /* Number of items used */
|
||
4045:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) {
|
||
4046:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl = 0; /* Terminate table */
|
||
4047:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4048:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NOT_ENOUGH_CORE; /* Given table size is smaller than required */
|
||
4049:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4050:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Fast seek */
|
||
4051:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs > fp->obj.objsize) ofs = fp->obj.objsize; /* Clip offset at the file size */
|
||
4052:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = ofs; /* Set file pointer */
|
||
4053:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
4054:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clmt_clust(fp, ofs - 1);
|
||
4055:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, fp->clust);
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dsc) ABORT(fs, FR_INT_ERR);
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
4058:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
4059:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
4060:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
ARM GAS /tmp/ccH7dUYB.s page 103
|
||
|
||
|
||
4061:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back dirty sector cache */
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
4063:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
4064:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4065:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fp->buf, dsc, 1) != RES_OK) ABORT(fs, FR_DISK_ERR); /* Load current sec
|
||
4067:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4068:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = dsc;
|
||
4069:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4070:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4071:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4072:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4073:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4074:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4075:Middlewares/Third_Party/FatFs/src/ff.c **** /* Normal Seek */
|
||
4076:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4077:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4078:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type != FS_EXFAT && ofs >= 0x100000000) ofs = 0xFFFFFFFF; /* Clip at 4GiB-1 if at FATx
|
||
4079:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4080:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs > fp->obj.objsize && (_FS_READONLY || !(fp->flag & FA_WRITE))) { /* In read-only mode, cl
|
||
4081:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = fp->obj.objsize;
|
||
4082:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4083:Middlewares/Third_Party/FatFs/src/ff.c **** ifptr = fp->fptr;
|
||
4084:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = nsect = 0;
|
||
4085:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
4086:Middlewares/Third_Party/FatFs/src/ff.c **** bcs = (DWORD)fs->csize * SS(fs); /* Cluster size (byte) */
|
||
4087:Middlewares/Third_Party/FatFs/src/ff.c **** if (ifptr > 0 &&
|
||
4088:Middlewares/Third_Party/FatFs/src/ff.c **** (ofs - 1) / bcs >= (ifptr - 1) / bcs) { /* When seek to same or following cluster, */
|
||
4089:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = (ifptr - 1) & ~(FSIZE_t)(bcs - 1); /* start from the current cluster */
|
||
4090:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= fp->fptr;
|
||
4091:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->clust;
|
||
4092:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When seek to back cluster, */
|
||
4093:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* start from the first cluster */
|
||
4094:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4095:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* If no cluster chain, create a new chain */
|
||
4096:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, 0);
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
4099:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
4100:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4101:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4102:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
4103:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4104:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst != 0) {
|
||
4105:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs > bcs) { /* Cluster following loop */
|
||
4106:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= bcs; fp->fptr += bcs;
|
||
4107:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4108:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_WRITE) { /* Check if in write mode or not */
|
||
4109:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fp->fptr > fp->obj.objsize) { /* No FAT chain object needs correct objsize t
|
||
4110:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
4111:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
4112:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4113:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, clst); /* Follow chain with forceed stretch */
|
||
4114:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* Clip file size in case of disk full */
|
||
4115:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = 0; break;
|
||
4116:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4117:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
ARM GAS /tmp/ccH7dUYB.s page 104
|
||
|
||
|
||
4118:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4119:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4120:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst); /* Follow cluster chain if not in write mode */
|
||
4121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
4124:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
4125:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4126:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr += ofs;
|
||
4127:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs % SS(fs)) {
|
||
4128:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = clust2sect(fs, clst); /* Current sector */
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** if (!nsect) ABORT(fs, FR_INT_ERR);
|
||
4130:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
4131:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4132:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4133:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4134:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_READONLY && fp->fptr > fp->obj.objsize) { /* Set file change flag if the file size is e
|
||
4135:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
4136:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
4137:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && nsect != fp->sect) { /* Fill sector cache if needed */
|
||
4139:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
4140:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4141:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back dirty sector cache */
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
4143:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
4144:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4145:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fp->buf, nsect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR); /* Fill sector cach
|
||
4147:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4148:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = nsect;
|
||
4149:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4150:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4151:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4152:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4153:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4154:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4155:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4156:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4157:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 1
|
||
4158:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4159:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create a Directory Object */
|
||
4160:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4161:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4162:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_opendir (
|
||
4163:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to directory object to create */
|
||
4164:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Pointer to the directory path */
|
||
4165:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4166:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4167:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4168:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4169:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID *obj;
|
||
4170:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4171:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4172:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4173:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp) return FR_INVALID_OBJECT;
|
||
4174:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 105
|
||
|
||
|
||
4175:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
4176:Middlewares/Third_Party/FatFs/src/ff.c **** obj = &dp->obj;
|
||
4177:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0);
|
||
4178:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4179:Middlewares/Third_Party/FatFs/src/ff.c **** obj->fs = fs;
|
||
4180:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4181:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(dp, path); /* Follow the path to the directory */
|
||
4182:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
4183:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->fn[NSFLAG] & NS_NONAME)) { /* It is not the origin directory itself */
|
||
4184:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->attr & AM_DIR) { /* This object is a sub-directory */
|
||
4185:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4186:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
4187:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_scl = obj->sclust; /* Get containing directory inforamation */
|
||
4188:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_size = ((DWORD)obj->objsize & 0xFFFFFF00) | obj->stat;
|
||
4189:Middlewares/Third_Party/FatFs/src/ff.c **** obj->c_ofs = dp->blk_ofs;
|
||
4190:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = ld_dword(fs->dirbuf + XDIR_FstClus); /* Get object allocation info */
|
||
4191:Middlewares/Third_Party/FatFs/src/ff.c **** obj->objsize = ld_qword(fs->dirbuf + XDIR_FileSize);
|
||
4192:Middlewares/Third_Party/FatFs/src/ff.c **** obj->stat = fs->dirbuf[XDIR_GenFlags] & 2;
|
||
4193:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4194:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4195:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4196:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = ld_clust(fs, dp->dir); /* Get object allocation info */
|
||
4197:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4198:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* This object is a file */
|
||
4199:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_PATH;
|
||
4200:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4201:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4202:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4203:Middlewares/Third_Party/FatFs/src/ff.c **** obj->id = fs->id;
|
||
4204:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind directory */
|
||
4205:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
4206:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4207:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->sclust) {
|
||
4208:Middlewares/Third_Party/FatFs/src/ff.c **** obj->lockid = inc_lock(dp, 0); /* Lock the sub directory */
|
||
4209:Middlewares/Third_Party/FatFs/src/ff.c **** if (!obj->lockid) res = FR_TOO_MANY_OPEN_FILES;
|
||
4210:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4211:Middlewares/Third_Party/FatFs/src/ff.c **** obj->lockid = 0; /* Root directory need not to be locked */
|
||
4212:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4213:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4214:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4215:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4216:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4217:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4218:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_NO_PATH;
|
||
4219:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4220:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) obj->fs = 0; /* Invalidate the directory object if function faild */
|
||
4221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4222:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4223:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4224:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4225:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4226:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4227:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4228:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4229:Middlewares/Third_Party/FatFs/src/ff.c **** /* Close Directory */
|
||
4230:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4231:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 106
|
||
|
||
|
||
4232:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_closedir (
|
||
4233:Middlewares/Third_Party/FatFs/src/ff.c **** DIR *dp /* Pointer to the directory object to be closed */
|
||
4234:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4235:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4236:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4237:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4238:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4239:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4240:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&dp->obj, &fs); /* Check validity of the file object */
|
||
4241:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4242:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
4243:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->obj.lockid) { /* Decrement sub-directory open counter */
|
||
4244:Middlewares/Third_Party/FatFs/src/ff.c **** res = dec_lock(dp->obj.lockid);
|
||
4245:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4246:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
4247:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4248:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4249:Middlewares/Third_Party/FatFs/src/ff.c **** dp->obj.fs = 0; /* Invalidate directory object */
|
||
4250:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4251:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
4252:Middlewares/Third_Party/FatFs/src/ff.c **** unlock_fs(fs, FR_OK); /* Unlock volume */
|
||
4253:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4254:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4255:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4256:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4257:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4258:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4259:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4260:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4261:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4262:Middlewares/Third_Party/FatFs/src/ff.c **** /* Read Directory Entries in Sequence */
|
||
4263:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4264:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4265:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_readdir (
|
||
4266:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the open directory object */
|
||
4267:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO* fno /* Pointer to file information to return */
|
||
4268:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4269:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4270:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4271:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4272:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4273:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4274:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4275:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&dp->obj, &fs); /* Check validity of the directory object */
|
||
4276:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4277:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fno) {
|
||
4278:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind the directory object */
|
||
4279:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4280:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4281:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(dp, 0); /* Read an item */
|
||
4282:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory */
|
||
4283:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* A valid entry is found */
|
||
4284:Middlewares/Third_Party/FatFs/src/ff.c **** get_fileinfo(dp, fno); /* Get the object information */
|
||
4285:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0); /* Increment index for next */
|
||
4286:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory now */
|
||
4287:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4288:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
ARM GAS /tmp/ccH7dUYB.s page 107
|
||
|
||
|
||
4289:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4290:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4291:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4292:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4293:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4294:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4296:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FIND
|
||
4297:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4298:Middlewares/Third_Party/FatFs/src/ff.c **** /* Find Next File */
|
||
4299:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4300:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4301:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_findnext (
|
||
4302:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the open directory object */
|
||
4303:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO* fno /* Pointer to the file information structure */
|
||
4304:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4305:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4306:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4307:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4308:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4309:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
4310:Middlewares/Third_Party/FatFs/src/ff.c **** res = f_readdir(dp, fno); /* Get a directory item */
|
||
4311:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || !fno || !fno->fname[0]) break; /* Terminate if any error or end of directory
|
||
4312:Middlewares/Third_Party/FatFs/src/ff.c **** if (pattern_matching(dp->pat, fno->fname, 0, 0)) break; /* Test for the file name */
|
||
4313:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 && _USE_FIND == 2
|
||
4314:Middlewares/Third_Party/FatFs/src/ff.c **** if (pattern_matching(dp->pat, fno->altname, 0, 0)) break; /* Test for alternative name if exist *
|
||
4315:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4316:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4317:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4318:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4319:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4320:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4321:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4322:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4323:Middlewares/Third_Party/FatFs/src/ff.c **** /* Find First File */
|
||
4324:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4325:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4326:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_findfirst (
|
||
4327:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Pointer to the blank directory object */
|
||
4328:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO* fno, /* Pointer to the file information structure */
|
||
4329:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Pointer to the directory to open */
|
||
4330:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* pattern /* Pointer to the matching pattern */
|
||
4331:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4332:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4333:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4334:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4335:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4336:Middlewares/Third_Party/FatFs/src/ff.c **** dp->pat = pattern; /* Save pointer to pattern string */
|
||
4337:Middlewares/Third_Party/FatFs/src/ff.c **** res = f_opendir(dp, path); /* Open the target directory */
|
||
4338:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4339:Middlewares/Third_Party/FatFs/src/ff.c **** res = f_findnext(dp, fno); /* Find the first item */
|
||
4340:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4341:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4342:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4343:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4344:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_FIND */
|
||
4345:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 108
|
||
|
||
|
||
4346:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4347:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4348:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE == 0
|
||
4349:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4350:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get File Status */
|
||
4351:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4352:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4353:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_stat (
|
||
4354:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Pointer to the file path */
|
||
4355:Middlewares/Third_Party/FatFs/src/ff.c **** FILINFO* fno /* Pointer to file information to return */
|
||
4356:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4357:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4358:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4359:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
4360:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4361:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4362:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4363:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
4364:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &dj.obj.fs, 0);
|
||
4365:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4366:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(dj.obj.fs);
|
||
4367:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
4368:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
4369:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* It is origin directory */
|
||
4370:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
4371:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Found an object */
|
||
4372:Middlewares/Third_Party/FatFs/src/ff.c **** if (fno) get_fileinfo(&dj, fno);
|
||
4373:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4374:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4375:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4376:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4377:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4378:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(dj.obj.fs, res);
|
||
4379:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4380:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4381:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4382:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4383:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4384:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4385:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get Number of Free Clusters */
|
||
4386:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4387:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4388:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_getfree (
|
||
4389:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Path name of the logical drive number */
|
||
4390:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD* nclst, /* Pointer to a variable to return number of free clusters */
|
||
4391:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS** fatfs /* Pointer to return pointer to corresponding file system object */
|
||
4392:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4393:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4394:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4395:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4396:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD nfree, clst, sect, stat;
|
||
4397:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
4398:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *p;
|
||
4399:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID obj;
|
||
4400:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4401:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4402:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
ARM GAS /tmp/ccH7dUYB.s page 109
|
||
|
||
|
||
4403:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0);
|
||
4404:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4405:Middlewares/Third_Party/FatFs/src/ff.c **** *fatfs = fs; /* Return ptr to the fs object */
|
||
4406:Middlewares/Third_Party/FatFs/src/ff.c **** /* If free_clst is valid, return it without full cluster scan */
|
||
4407:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->free_clst <= fs->n_fatent - 2) {
|
||
4408:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = fs->free_clst;
|
||
4409:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4410:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get number of free clusters */
|
||
4411:Middlewares/Third_Party/FatFs/src/ff.c **** nfree = 0;
|
||
4412:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT12) { /* FAT12: Sector unalighed FAT entries */
|
||
4413:Middlewares/Third_Party/FatFs/src/ff.c **** clst = 2; obj.fs = fs;
|
||
4414:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4415:Middlewares/Third_Party/FatFs/src/ff.c **** stat = get_fat(&obj, clst);
|
||
4416:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0xFFFFFFFF) { res = FR_DISK_ERR; break; }
|
||
4417:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 1) { res = FR_INT_ERR; break; }
|
||
4418:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0) nfree++;
|
||
4419:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++clst < fs->n_fatent);
|
||
4420:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4421:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4422:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* exFAT: Scan bitmap table */
|
||
4423:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE bm;
|
||
4424:Middlewares/Third_Party/FatFs/src/ff.c **** UINT b;
|
||
4425:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4426:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->n_fatent - 2;
|
||
4427:Middlewares/Third_Party/FatFs/src/ff.c **** sect = fs->database;
|
||
4428:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0;
|
||
4429:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4430:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 0 && (res = move_window(fs, sect++)) != FR_OK) break;
|
||
4431:Middlewares/Third_Party/FatFs/src/ff.c **** for (b = 8, bm = fs->win[i]; b && clst; b--, clst--) {
|
||
4432:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(bm & 1)) nfree++;
|
||
4433:Middlewares/Third_Party/FatFs/src/ff.c **** bm >>= 1;
|
||
4434:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4435:Middlewares/Third_Party/FatFs/src/ff.c **** i = (i + 1) % SS(fs);
|
||
4436:Middlewares/Third_Party/FatFs/src/ff.c **** } while (clst);
|
||
4437:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4438:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4439:Middlewares/Third_Party/FatFs/src/ff.c **** { /* FAT16/32: Sector alighed FAT entries */
|
||
4440:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->n_fatent; sect = fs->fatbase;
|
||
4441:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0; p = 0;
|
||
4442:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4443:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 0) {
|
||
4444:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, sect++);
|
||
4445:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4446:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win;
|
||
4447:Middlewares/Third_Party/FatFs/src/ff.c **** i = SS(fs);
|
||
4448:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4449:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT16) {
|
||
4450:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(p) == 0) nfree++;
|
||
4451:Middlewares/Third_Party/FatFs/src/ff.c **** p += 2; i -= 2;
|
||
4452:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(p) & 0x0FFFFFFF) == 0) nfree++;
|
||
4454:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
4455:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4456:Middlewares/Third_Party/FatFs/src/ff.c **** } while (--clst);
|
||
4457:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4458:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4459:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = nfree; /* Return the free clusters */
|
||
ARM GAS /tmp/ccH7dUYB.s page 110
|
||
|
||
|
||
4460:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst = nfree; /* Now free_clst is valid */
|
||
4461:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1; /* FSInfo is to be updated */
|
||
4462:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4463:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4464:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4465:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4466:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4467:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4468:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4469:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4470:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4471:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4472:Middlewares/Third_Party/FatFs/src/ff.c **** /* Truncate File */
|
||
4473:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4474:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4475:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_truncate (
|
||
4476:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp /* Pointer to the file object */
|
||
4477:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4478:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4479:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4480:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4481:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ncl;
|
||
4482:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4483:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4484:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
4485:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res);
|
||
4486:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
4487:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4488:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr < fp->obj.objsize) { /* Process when fptr is not on the eof */
|
||
4489:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */
|
||
4490:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, fp->obj.sclust, 0);
|
||
4491:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = 0;
|
||
4492:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When truncate a part of the file, remove remaining clusters */
|
||
4493:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = get_fat(&fp->obj, fp->clust);
|
||
4494:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
4495:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
4496:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 1) res = FR_INT_ERR;
|
||
4497:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ncl < fs->n_fatent) {
|
||
4498:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, ncl, fp->clust);
|
||
4499:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4500:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4501:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr; /* Set file size to current R/W point */
|
||
4502:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
4503:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
4504:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (fp->flag & FA_DIRTY)) {
|
||
4505:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) {
|
||
4506:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
4507:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4508:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
4509:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4510:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4511:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4512:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) ABORT(fs, res);
|
||
4513:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4514:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4515:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4516:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 111
|
||
|
||
|
||
4517:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4518:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4519:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4520:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4521:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4522:Middlewares/Third_Party/FatFs/src/ff.c **** /* Delete a File/Directory */
|
||
4523:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4524:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4525:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_unlink (
|
||
4526:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Pointer to the file or directory path */
|
||
4527:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4528:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4529:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4530:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj, sdj;
|
||
4531:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dclst = 0;
|
||
4532:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4533:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4534:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID obj;
|
||
4535:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4536:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4537:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4538:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4539:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
4540:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, FA_WRITE);
|
||
4541:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
4542:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4543:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4544:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
4545:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_OK && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
4546:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME; /* Cannot remove dot entry */
|
||
4547:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4548:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
4549:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = chk_lock(&dj, 2); /* Check if it is an open object */
|
||
4550:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4551:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* The object is accessible */
|
||
4552:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) {
|
||
4553:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME; /* Cannot remove the origin directory */
|
||
4554:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4555:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_RDO) {
|
||
4556:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED; /* Cannot remove R/O object */
|
||
4557:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4559:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4560:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4561:Middlewares/Third_Party/FatFs/src/ff.c **** obj.fs = fs;
|
||
4562:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
4563:Middlewares/Third_Party/FatFs/src/ff.c **** obj.sclust = dclst = ld_dword(fs->dirbuf + XDIR_FstClus);
|
||
4564:Middlewares/Third_Party/FatFs/src/ff.c **** obj.objsize = ld_qword(fs->dirbuf + XDIR_FileSize);
|
||
4565:Middlewares/Third_Party/FatFs/src/ff.c **** obj.stat = fs->dirbuf[XDIR_GenFlags] & 2;
|
||
4566:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4567:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4568:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4569:Middlewares/Third_Party/FatFs/src/ff.c **** dclst = ld_clust(fs, dj.dir);
|
||
4570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4571:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* Is it a sub-directory? */
|
||
4572:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
4573:Middlewares/Third_Party/FatFs/src/ff.c **** if (dclst == fs->cdir) { /* Is it the current directory? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 112
|
||
|
||
|
||
4574:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
4575:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4576:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4577:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4578:Middlewares/Third_Party/FatFs/src/ff.c **** sdj.obj.fs = fs; /* Open the sub-directory */
|
||
4579:Middlewares/Third_Party/FatFs/src/ff.c **** sdj.obj.sclust = dclst;
|
||
4580:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4581:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
4582:Middlewares/Third_Party/FatFs/src/ff.c **** sdj.obj.objsize = obj.objsize;
|
||
4583:Middlewares/Third_Party/FatFs/src/ff.c **** sdj.obj.stat = obj.stat;
|
||
4584:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4585:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4586:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(&sdj, 0);
|
||
4587:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4588:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(&sdj, 0); /* Read an item */
|
||
4589:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_DENIED; /* Not empty? */
|
||
4590:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Empty? */
|
||
4591:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4592:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4593:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4594:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4595:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4596:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&dj); /* Remove the directory entry */
|
||
4597:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dclst) { /* Remove the cluster chain if exist */
|
||
4598:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4599:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&obj, dclst, 0);
|
||
4600:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
4601:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&dj.obj, dclst, 0);
|
||
4602:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4603:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4604:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = sync_fs(fs);
|
||
4605:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4606:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4607:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4608:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4609:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4610:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4611:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4612:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4613:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4614:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4615:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4616:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4617:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create a Directory */
|
||
4618:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4619:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4620:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_mkdir (
|
||
4621:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Pointer to the directory path */
|
||
4622:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4623:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4624:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4625:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
4626:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4627:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *dir;
|
||
4628:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n;
|
||
4629:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dsc, dcl, pcl, tm;
|
||
4630:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
ARM GAS /tmp/ccH7dUYB.s page 113
|
||
|
||
|
||
4631:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4632:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4633:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
4634:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, FA_WRITE);
|
||
4635:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
4636:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4637:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4638:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
4639:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_EXIST; /* Any object with same name is already existing */
|
||
4640:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_NO_FILE && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
4641:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
4642:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4643:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* Can create a new directory */
|
||
4644:Middlewares/Third_Party/FatFs/src/ff.c **** dcl = create_chain(&dj.obj, 0); /* Allocate a cluster for the new directory table */
|
||
4645:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.objsize = (DWORD)fs->csize * SS(fs);
|
||
4646:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
4647:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 0) res = FR_DENIED; /* No space to allocate a new cluster */
|
||
4648:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 1) res = FR_INT_ERR;
|
||
4649:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = sync_window(fs); /* Flush FAT */
|
||
4651:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
4652:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Initialize the new directory table */
|
||
4653:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, dcl);
|
||
4654:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win;
|
||
4655:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir, 0, SS(fs));
|
||
4656:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
4657:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir + DIR_Name, ' ', 11); /* Create "." entry */
|
||
4658:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Name] = '.';
|
||
4659:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = AM_DIR;
|
||
4660:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm);
|
||
4661:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, dcl);
|
||
4662:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dir + SZDIRE, dir, SZDIRE); /* Create ".." entry */
|
||
4663:Middlewares/Third_Party/FatFs/src/ff.c **** dir[SZDIRE + 1] = '.'; pcl = dj.obj.sclust;
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32 && pcl == fs->dirbase) pcl = 0;
|
||
4665:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
4666:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4667:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = fs->csize; n; n--) { /* Write dot entries and clear following sectors */
|
||
4668:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = dsc++;
|
||
4669:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4670:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_window(fs);
|
||
4671:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4672:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir, 0, SS(fs));
|
||
4673:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4674:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4675:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4676:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&dj); /* Register the object to the directoy */
|
||
4677:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4678:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4679:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4680:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* Initialize directory entry block */
|
||
4681:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_ModTime, tm); /* Created time */
|
||
4682:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_FstClus, dcl); /* Table start cluster */
|
||
4683:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_FileSize, (DWORD)dj.obj.objsize); /* File size needs to be valid */
|
||
4684:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_ValidFileSize, (DWORD)dj.obj.objsize);
|
||
4685:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_GenFlags] = 3; /* Initialize the object flag (contiguous) */
|
||
4686:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_Attr] = AM_DIR; /* Attribute */
|
||
4687:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj);
|
||
ARM GAS /tmp/ccH7dUYB.s page 114
|
||
|
||
|
||
4688:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4689:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4690:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4691:Middlewares/Third_Party/FatFs/src/ff.c **** dir = dj.dir;
|
||
4692:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm); /* Created time */
|
||
4693:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, dcl); /* Table start cluster */
|
||
4694:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = AM_DIR; /* Attribute */
|
||
4695:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4696:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4697:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4698:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
4699:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4700:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4701:Middlewares/Third_Party/FatFs/src/ff.c **** remove_chain(&dj.obj, dcl, 0); /* Could not register, remove cluster chain */
|
||
4702:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4704:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4705:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4706:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4707:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4708:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4709:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4710:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4711:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4712:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4713:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4714:Middlewares/Third_Party/FatFs/src/ff.c **** /* Rename a File/Directory */
|
||
4715:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4716:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4717:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_rename (
|
||
4718:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path_old, /* Pointer to the object name to be renamed */
|
||
4719:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path_new /* Pointer to the new name */
|
||
4720:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4721:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4722:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4723:Middlewares/Third_Party/FatFs/src/ff.c **** DIR djo, djn;
|
||
4724:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4725:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE buf[_FS_EXFAT ? SZDIRE * 2 : 24], *dir;
|
||
4726:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dw;
|
||
4727:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4728:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4729:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4730:Middlewares/Third_Party/FatFs/src/ff.c **** get_ldnumber(&path_new); /* Snip drive number of new name off */
|
||
4731:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path_old, &fs, FA_WRITE); /* Get logical drive of the old object */
|
||
4732:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4733:Middlewares/Third_Party/FatFs/src/ff.c **** djo.obj.fs = fs;
|
||
4734:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4735:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&djo, path_old); /* Check old object */
|
||
4736:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (djo.fn[NSFLAG] & (NS_DOT | NS_NONAME))) res = FR_INVALID_NAME; /* Check vali
|
||
4737:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
4738:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4739:Middlewares/Third_Party/FatFs/src/ff.c **** res = chk_lock(&djo, 2);
|
||
4740:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4741:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4742:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Object to be renamed is found */
|
||
4743:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4744:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* At exFAT */
|
||
ARM GAS /tmp/ccH7dUYB.s page 115
|
||
|
||
|
||
4745:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE nf, nn;
|
||
4746:Middlewares/Third_Party/FatFs/src/ff.c **** WORD nh;
|
||
4747:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4748:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf, fs->dirbuf, SZDIRE * 2); /* Save 85+C0 entry of old object */
|
||
4749:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(&djn, &djo, sizeof djo);
|
||
4750:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&djn, path_new); /* Make sure if new object name is not in use */
|
||
4751:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Is new name already in use by any other object? */
|
||
4752:Middlewares/Third_Party/FatFs/src/ff.c **** res = (djn.obj.sclust == djo.obj.sclust && djn.dptr == djo.dptr) ? FR_NO_FILE : FR_EXIST;
|
||
4753:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4754:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* It is a valid path and no name collision */
|
||
4755:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&djn); /* Register the new entry */
|
||
4756:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4757:Middlewares/Third_Party/FatFs/src/ff.c **** nf = fs->dirbuf[XDIR_NumSec]; nn = fs->dirbuf[XDIR_NumName];
|
||
4758:Middlewares/Third_Party/FatFs/src/ff.c **** nh = ld_word(fs->dirbuf + XDIR_NameHash);
|
||
4759:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fs->dirbuf, buf, SZDIRE * 2);
|
||
4760:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_NumSec] = nf; fs->dirbuf[XDIR_NumName] = nn;
|
||
4761:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->dirbuf + XDIR_NameHash, nh);
|
||
4762:Middlewares/Third_Party/FatFs/src/ff.c **** /* Start of critical section where an interruption can cause a cross-link */
|
||
4763:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&djn);
|
||
4764:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4765:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4766:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4767:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4768:Middlewares/Third_Party/FatFs/src/ff.c **** { /* At FAT12/FAT16/FAT32 */
|
||
4769:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf, djo.dir + DIR_Attr, 21); /* Save information about the object except name */
|
||
4770:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(&djn, &djo, sizeof (DIR)); /* Duplicate the directory object */
|
||
4771:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&djn, path_new); /* Make sure if new object name is not in use */
|
||
4772:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Is new name already in use by any other object? */
|
||
4773:Middlewares/Third_Party/FatFs/src/ff.c **** res = (djn.obj.sclust == djo.obj.sclust && djn.dptr == djo.dptr) ? FR_NO_FILE : FR_EXIST;
|
||
4774:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4775:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* It is a valid path and no name collision */
|
||
4776:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&djn); /* Register the new entry */
|
||
4777:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4778:Middlewares/Third_Party/FatFs/src/ff.c **** dir = djn.dir; /* Copy information about object except name */
|
||
4779:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dir + 13, buf + 2, 19);
|
||
4780:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = buf[0] | AM_ARC;
|
||
4781:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4782:Middlewares/Third_Party/FatFs/src/ff.c **** if ((dir[DIR_Attr] & AM_DIR) && djo.obj.sclust != djn.obj.sclust) { /* Update .. entry in the
|
||
4783:Middlewares/Third_Party/FatFs/src/ff.c **** dw = clust2sect(fs, ld_clust(fs, dir));
|
||
4784:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dw) {
|
||
4785:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
4786:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4787:Middlewares/Third_Party/FatFs/src/ff.c **** /* Start of critical section where an interruption can cause a cross-link */
|
||
4788:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dw);
|
||
4789:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win + SZDIRE * 1; /* Ptr to .. entry */
|
||
4790:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dir[1] == '.') {
|
||
4791:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, djn.obj.sclust);
|
||
4792:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4793:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4794:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4795:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4796:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4797:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4798:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4799:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4800:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&djo); /* Remove old entry */
|
||
4801:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 116
|
||
|
||
|
||
4802:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
4803:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4804:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4805:Middlewares/Third_Party/FatFs/src/ff.c **** /* End of the critical section */
|
||
4806:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4807:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4808:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4809:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4810:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4811:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4812:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4813:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
4814:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_MINIMIZE == 0 */
|
||
4815:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_MINIMIZE <= 1 */
|
||
4816:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_MINIMIZE <= 2 */
|
||
4817:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4818:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4819:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4820:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_CHMOD && !_FS_READONLY
|
||
4821:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4822:Middlewares/Third_Party/FatFs/src/ff.c **** /* Change Attribute */
|
||
4823:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4824:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4825:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_chmod (
|
||
4826:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Pointer to the file path */
|
||
4827:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE attr, /* Attribute bits */
|
||
4828:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE mask /* Attribute mask to change */
|
||
4829:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4830:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4831:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4832:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
4833:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4834:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4835:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4836:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4837:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, FA_WRITE); /* Get logical drive */
|
||
4838:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
4839:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4840:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4841:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
4842:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (dj.fn[NSFLAG] & (NS_DOT | NS_NONAME))) res = FR_INVALID_NAME; /* Check objec
|
||
4843:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4844:Middlewares/Third_Party/FatFs/src/ff.c **** mask &= AM_RDO|AM_HID|AM_SYS|AM_ARC; /* Valid attribute mask */
|
||
4845:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4846:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
4847:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_Attr] = (attr & mask) | (fs->dirbuf[XDIR_Attr] & (BYTE)~mask); /* Apply attribu
|
||
4848:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj);
|
||
4849:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4850:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4851:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4852:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[DIR_Attr] = (attr & mask) | (dj.dir[DIR_Attr] & (BYTE)~mask); /* Apply attribute change
|
||
4853:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4854:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4855:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4856:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
4857:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4858:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 117
|
||
|
||
|
||
4859:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4860:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4861:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4862:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4863:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4864:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4865:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4866:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4867:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4868:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4869:Middlewares/Third_Party/FatFs/src/ff.c **** /* Change Timestamp */
|
||
4870:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4871:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4872:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_utime (
|
||
4873:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Pointer to the file/directory name */
|
||
4874:Middlewares/Third_Party/FatFs/src/ff.c **** const FILINFO* fno /* Pointer to the time stamp to be set */
|
||
4875:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4876:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4877:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4878:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
4879:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4880:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
4881:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4882:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4883:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, FA_WRITE); /* Get logical drive */
|
||
4884:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
4885:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4886:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
4887:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
4888:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (dj.fn[NSFLAG] & (NS_DOT | NS_NONAME))) res = FR_INVALID_NAME; /* Check objec
|
||
4889:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4890:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4891:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
4892:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_ModTime, (DWORD)fno->fdate << 16 | fno->ftime);
|
||
4893:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj);
|
||
4894:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4895:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4896:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4897:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_ModTime, (DWORD)fno->fdate << 16 | fno->ftime);
|
||
4898:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4899:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4900:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4901:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
4902:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4903:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4904:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF();
|
||
4905:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4906:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4907:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
4908:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4909:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4910:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_CHMOD && !_FS_READONLY */
|
||
4911:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4912:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4913:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4914:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LABEL
|
||
4915:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
ARM GAS /tmp/ccH7dUYB.s page 118
|
||
|
||
|
||
4916:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get Volume Label */
|
||
4917:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
4918:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4919:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_getlabel (
|
||
4920:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Path name of the logical drive number */
|
||
4921:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR* label, /* Pointer to a buffer to return the volume label */
|
||
4922:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD* vsn /* Pointer to a variable to return the volume serial number */
|
||
4923:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
4924:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4925:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4926:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
4927:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
4928:Middlewares/Third_Party/FatFs/src/ff.c **** UINT si, di;
|
||
4929:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE || _FS_EXFAT
|
||
4930:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR w;
|
||
4931:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4932:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4933:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
4934:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0);
|
||
4935:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4936:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get volume label */
|
||
4937:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && label) {
|
||
4938:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs; dj.obj.sclust = 0; /* Open root directory */
|
||
4939:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(&dj, 0);
|
||
4940:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4941:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(&dj, 1); /* Find a volume label entry */
|
||
4942:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4943:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4944:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
4945:Middlewares/Third_Party/FatFs/src/ff.c **** for (si = di = 0; si < dj.dir[XDIR_NumLabel]; si++) { /* Extract volume label from 83 entry */
|
||
4946:Middlewares/Third_Party/FatFs/src/ff.c **** w = ld_word(dj.dir + XDIR_Label + si * 2);
|
||
4947:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
4948:Middlewares/Third_Party/FatFs/src/ff.c **** label[di++] = w;
|
||
4949:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
4950:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(w, 0); /* Unicode -> OEM */
|
||
4951:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == 0) w = '?'; /* Replace wrong character */
|
||
4952:Middlewares/Third_Party/FatFs/src/ff.c **** if (_DF1S && w >= 0x100) label[di++] = (char)(w >> 8);
|
||
4953:Middlewares/Third_Party/FatFs/src/ff.c **** label[di++] = (char)w;
|
||
4954:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4955:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4956:Middlewares/Third_Party/FatFs/src/ff.c **** label[di] = 0;
|
||
4957:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
4958:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4959:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
4960:Middlewares/Third_Party/FatFs/src/ff.c **** si = di = 0; /* Extract volume label from AM_VOL entry with code comversion */
|
||
4961:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4962:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
4963:Middlewares/Third_Party/FatFs/src/ff.c **** w = (si < 11) ? dj.dir[si++] : ' ';
|
||
4964:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(w) && si < 11 && IsDBCS2(dj.dir[si])) {
|
||
4965:Middlewares/Third_Party/FatFs/src/ff.c **** w = w << 8 | dj.dir[si++];
|
||
4966:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4967:Middlewares/Third_Party/FatFs/src/ff.c **** label[di++] = ff_convert(w, 1); /* OEM -> Unicode */
|
||
4968:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
4969:Middlewares/Third_Party/FatFs/src/ff.c **** label[di++] = dj.dir[si++];
|
||
4970:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4971:Middlewares/Third_Party/FatFs/src/ff.c **** } while (di < 11);
|
||
4972:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Truncate trailing spaces */
|
||
ARM GAS /tmp/ccH7dUYB.s page 119
|
||
|
||
|
||
4973:Middlewares/Third_Party/FatFs/src/ff.c **** label[di] = 0;
|
||
4974:Middlewares/Third_Party/FatFs/src/ff.c **** if (di == 0) break;
|
||
4975:Middlewares/Third_Party/FatFs/src/ff.c **** } while (label[--di] == ' ');
|
||
4976:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4977:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4978:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4979:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* No label entry and return nul string */
|
||
4980:Middlewares/Third_Party/FatFs/src/ff.c **** label[0] = 0;
|
||
4981:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
4982:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4983:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4984:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4985:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get volume serial number */
|
||
4986:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && vsn) {
|
||
4987:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->volbase);
|
||
4988:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4989:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
4990:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_EXFAT:
|
||
4991:Middlewares/Third_Party/FatFs/src/ff.c **** di = BPB_VolIDEx; break;
|
||
4992:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4993:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT32:
|
||
4994:Middlewares/Third_Party/FatFs/src/ff.c **** di = BS_VolID32; break;
|
||
4995:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4996:Middlewares/Third_Party/FatFs/src/ff.c **** default:
|
||
4997:Middlewares/Third_Party/FatFs/src/ff.c **** di = BS_VolID;
|
||
4998:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4999:Middlewares/Third_Party/FatFs/src/ff.c **** *vsn = ld_dword(fs->win + di);
|
||
5000:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5001:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5002:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5003:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
5004:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5005:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5006:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5007:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5008:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5009:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5010:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set Volume Label */
|
||
5011:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5012:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5013:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_setlabel (
|
||
5014:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* label /* Pointer to the volume label to set */
|
||
5015:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5016:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5017:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5018:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
5019:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
5020:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE dirvn[22];
|
||
5021:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, j, slen;
|
||
5022:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR w;
|
||
5023:Middlewares/Third_Party/FatFs/src/ff.c **** static const char badchr[] = "\"*+,.:;<=>\?[]|\x7F";
|
||
5024:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5025:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5026:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */
|
||
5027:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&label, &fs, FA_WRITE);
|
||
5028:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) LEAVE_FF(fs, res);
|
||
5029:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
ARM GAS /tmp/ccH7dUYB.s page 120
|
||
|
||
|
||
5030:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5031:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get length of given volume label */
|
||
5032:Middlewares/Third_Party/FatFs/src/ff.c **** for (slen = 0; (UINT)label[slen] >= ' '; slen++) ; /* Get name length */
|
||
5033:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5034:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5035:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* On the exFAT volume */
|
||
5036:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = j = 0; i < slen; ) { /* Create volume label in directory form */
|
||
5037:Middlewares/Third_Party/FatFs/src/ff.c **** w = label[i++];
|
||
5038:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_LFN_UNICODE
|
||
5039:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(w)) {
|
||
5040:Middlewares/Third_Party/FatFs/src/ff.c **** w = (i < slen && IsDBCS2(label[i])) ? w << 8 | (BYTE)label[i++] : 0;
|
||
5041:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5042:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(w, 1);
|
||
5043:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5044:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == 0 || chk_chr(badchr, w) || j == 22) { /* Check validity check validity of the volume la
|
||
5045:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, FR_INVALID_NAME);
|
||
5046:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5047:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dirvn + j, w); j += 2;
|
||
5048:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5049:Middlewares/Third_Party/FatFs/src/ff.c **** slen = j;
|
||
5050:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
5051:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5052:Middlewares/Third_Party/FatFs/src/ff.c **** { /* On the FAT12/16/32 volume */
|
||
5053:Middlewares/Third_Party/FatFs/src/ff.c **** for ( ; slen && label[slen - 1] == ' '; slen--) ; /* Remove trailing spaces */
|
||
5054:Middlewares/Third_Party/FatFs/src/ff.c **** if (slen) { /* Is there a volume label to be set? */
|
||
5055:Middlewares/Third_Party/FatFs/src/ff.c **** dirvn[0] = 0; i = j = 0; /* Create volume label in directory form */
|
||
5056:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5057:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
5058:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(ff_wtoupper(label[i++]), 0);
|
||
5059:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5060:Middlewares/Third_Party/FatFs/src/ff.c **** w = (BYTE)label[i++];
|
||
5061:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(w)) {
|
||
5062:Middlewares/Third_Party/FatFs/src/ff.c **** w = (j < 10 && i < slen && IsDBCS2(label[i])) ? w << 8 | (BYTE)label[i++] : 0;
|
||
5063:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5064:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
5065:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(ff_wtoupper(ff_convert(w, 1)), 0);
|
||
5066:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5067:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(w)) w -= 0x20; /* To upper ASCII characters */
|
||
5068:Middlewares/Third_Party/FatFs/src/ff.c **** #ifdef _EXCVT
|
||
5069:Middlewares/Third_Party/FatFs/src/ff.c **** if (w >= 0x80) w = ExCvt[w - 0x80]; /* To upper extended characters (SBCS cfg) */
|
||
5070:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5071:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_DF1S && w >= 0x80) w = 0; /* Reject extended characters (ASCII cfg) */
|
||
5072:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5073:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5074:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5075:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == 0 || chk_chr(badchr, w) || j >= (UINT)((w >= 0x100) ? 10 : 11)) { /* Reject invalid ch
|
||
5076:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, FR_INVALID_NAME);
|
||
5077:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5078:Middlewares/Third_Party/FatFs/src/ff.c **** if (w >= 0x100) dirvn[j++] = (BYTE)(w >> 8);
|
||
5079:Middlewares/Third_Party/FatFs/src/ff.c **** dirvn[j++] = (BYTE)w;
|
||
5080:Middlewares/Third_Party/FatFs/src/ff.c **** } while (i < slen);
|
||
5081:Middlewares/Third_Party/FatFs/src/ff.c **** while (j < 11) dirvn[j++] = ' '; /* Fill remaining name field */
|
||
5082:Middlewares/Third_Party/FatFs/src/ff.c **** if (dirvn[0] == DDEM) LEAVE_FF(fs, FR_INVALID_NAME); /* Reject illegal name (heading DDEM) */
|
||
5083:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5084:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5085:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5086:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set volume label */
|
||
ARM GAS /tmp/ccH7dUYB.s page 121
|
||
|
||
|
||
5087:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.sclust = 0; /* Open root directory */
|
||
5088:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(&dj, 0);
|
||
5089:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5090:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(&dj, 1); /* Get volume label entry */
|
||
5091:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5092:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fs->fs_type == FS_EXFAT) {
|
||
5093:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[XDIR_NumLabel] = (BYTE)(slen / 2); /* Change the volume label */
|
||
5094:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dj.dir + XDIR_Label, dirvn, slen);
|
||
5095:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5096:Middlewares/Third_Party/FatFs/src/ff.c **** if (slen) {
|
||
5097:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dj.dir, dirvn, 11); /* Change the volume label */
|
||
5098:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5099:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[DIR_Name] = DDEM; /* Remove the volume label */
|
||
5100:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5101:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5102:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
5103:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
5104:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* No volume label entry is found or error */
|
||
5105:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) {
|
||
5106:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
5107:Middlewares/Third_Party/FatFs/src/ff.c **** if (slen) { /* Create a volume label entry */
|
||
5108:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_alloc(&dj, 1); /* Allocate an entry */
|
||
5109:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5110:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dj.dir, 0, SZDIRE); /* Clear the entry */
|
||
5111:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fs->fs_type == FS_EXFAT) {
|
||
5112:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[XDIR_Type] = 0x83; /* Create 83 entry */
|
||
5113:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[XDIR_NumLabel] = (BYTE)(slen / 2);
|
||
5114:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dj.dir + XDIR_Label, dirvn, slen);
|
||
5115:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5116:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[DIR_Attr] = AM_VOL; /* Create volume label entry */
|
||
5117:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dj.dir, dirvn, 11);
|
||
5118:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5119:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
5120:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
5121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5122:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5123:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5124:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5125:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5126:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5127:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
5128:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5129:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5130:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* !_FS_READONLY */
|
||
5131:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_LABEL */
|
||
5132:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5134:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5135:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_EXPAND && !_FS_READONLY
|
||
5136:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5137:Middlewares/Third_Party/FatFs/src/ff.c **** /* Allocate a Contiguous Blocks to the File */
|
||
5138:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5139:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5140:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_expand (
|
||
5141:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
5142:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t fsz, /* File size to be expanded to */
|
||
5143:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE opt /* Operation mode 0:Find and prepare or 1:Find and allocate */
|
||
ARM GAS /tmp/ccH7dUYB.s page 122
|
||
|
||
|
||
5144:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5145:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5146:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5147:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
5148:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD n, clst, stcl, scl, ncl, tcl, lclst;
|
||
5149:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5150:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5151:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
5152:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res);
|
||
5153:Middlewares/Third_Party/FatFs/src/ff.c **** if (fsz == 0 || fp->obj.objsize != 0 || !(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED);
|
||
5154:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5155:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type != FS_EXFAT && fsz >= 0x100000000) LEAVE_FF(fs, FR_DENIED); /* Check if in size li
|
||
5156:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5157:Middlewares/Third_Party/FatFs/src/ff.c **** n = (DWORD)fs->csize * SS(fs); /* Cluster size */
|
||
5158:Middlewares/Third_Party/FatFs/src/ff.c **** tcl = (DWORD)(fsz / n) + ((fsz & (n - 1)) ? 1 : 0); /* Number of clusters required */
|
||
5159:Middlewares/Third_Party/FatFs/src/ff.c **** stcl = fs->last_clst; lclst = 0;
|
||
5160:Middlewares/Third_Party/FatFs/src/ff.c **** if (stcl < 2 || stcl >= fs->n_fatent) stcl = 2;
|
||
5161:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5162:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5163:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) {
|
||
5164:Middlewares/Third_Party/FatFs/src/ff.c **** scl = find_bitmap(fs, stcl, tcl); /* Find a contiguous cluster block */
|
||
5165:Middlewares/Third_Party/FatFs/src/ff.c **** if (scl == 0) res = FR_DENIED; /* No contiguous cluster block was found */
|
||
5166:Middlewares/Third_Party/FatFs/src/ff.c **** if (scl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
5167:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* A contiguous free area is found */
|
||
5168:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt) { /* Allocate it now */
|
||
5169:Middlewares/Third_Party/FatFs/src/ff.c **** res = change_bitmap(fs, scl, tcl, 1); /* Mark the cluster block 'in use' */
|
||
5170:Middlewares/Third_Party/FatFs/src/ff.c **** lclst = scl + tcl - 1;
|
||
5171:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Set it as suggested point for next allocation */
|
||
5172:Middlewares/Third_Party/FatFs/src/ff.c **** lclst = scl - 1;
|
||
5173:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5174:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5175:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
5176:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5177:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5178:Middlewares/Third_Party/FatFs/src/ff.c **** scl = clst = stcl; ncl = 0;
|
||
5179:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) { /* Find a contiguous cluster block */
|
||
5180:Middlewares/Third_Party/FatFs/src/ff.c **** n = get_fat(&fp->obj, clst);
|
||
5181:Middlewares/Third_Party/FatFs/src/ff.c **** if (++clst >= fs->n_fatent) clst = 2;
|
||
5182:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 1) { res = FR_INT_ERR; break; }
|
||
5183:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 0xFFFFFFFF) { res = FR_DISK_ERR; break; }
|
||
5184:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 0) { /* Is it a free cluster? */
|
||
5185:Middlewares/Third_Party/FatFs/src/ff.c **** if (++ncl == tcl) break; /* Break if a contiguous cluster block is found */
|
||
5186:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5187:Middlewares/Third_Party/FatFs/src/ff.c **** scl = clst; ncl = 0; /* Not a free cluster */
|
||
5188:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5189:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == stcl) { res = FR_DENIED; break; } /* No contiguous cluster? */
|
||
5190:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5191:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* A contiguous free area is found */
|
||
5192:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt) { /* Allocate it now */
|
||
5193:Middlewares/Third_Party/FatFs/src/ff.c **** for (clst = scl, n = tcl; n; clst++, n--) { /* Create a cluster chain on the FAT */
|
||
5194:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, (n == 1) ? 0xFFFFFFFF : clst + 1);
|
||
5195:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
5196:Middlewares/Third_Party/FatFs/src/ff.c **** lclst = clst;
|
||
5197:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5198:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Set it as suggested point for next allocation */
|
||
5199:Middlewares/Third_Party/FatFs/src/ff.c **** lclst = scl - 1;
|
||
5200:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 123
|
||
|
||
|
||
5201:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5202:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5203:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5204:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5205:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = lclst; /* Set suggested start cluster to start next */
|
||
5206:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt) { /* Is it allocated now? */
|
||
5207:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = scl; /* Update object allocation information */
|
||
5208:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fsz;
|
||
5209:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT) fp->obj.stat = 2; /* Set status 'contiguous chain' */
|
||
5210:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
5211:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->free_clst <= fs->n_fatent - 2) { /* Update FSINFO */
|
||
5212:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst -= tcl;
|
||
5213:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
5214:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5215:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5216:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5217:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5218:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
5219:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5220:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5221:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_EXPAND && !_FS_READONLY */
|
||
5222:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5223:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5224:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5225:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FORWARD
|
||
5226:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5227:Middlewares/Third_Party/FatFs/src/ff.c **** /* Forward data to the stream directly */
|
||
5228:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5229:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5230:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_forward (
|
||
5231:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
5232:Middlewares/Third_Party/FatFs/src/ff.c **** UINT (*func)(const BYTE*,UINT), /* Pointer to the streaming function */
|
||
5233:Middlewares/Third_Party/FatFs/src/ff.c **** UINT btf, /* Number of bytes to forward */
|
||
5234:Middlewares/Third_Party/FatFs/src/ff.c **** UINT* bf /* Pointer to number of bytes forwarded */
|
||
5235:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5236:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5237:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5238:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
5239:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, sect;
|
||
5240:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t remain;
|
||
5241:Middlewares/Third_Party/FatFs/src/ff.c **** UINT rcnt, csect;
|
||
5242:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *dbuf;
|
||
5243:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5244:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5245:Middlewares/Third_Party/FatFs/src/ff.c **** *bf = 0; /* Clear transfer byte counter */
|
||
5246:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
5247:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res);
|
||
5248:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_READ)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
5249:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5250:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
5251:Middlewares/Third_Party/FatFs/src/ff.c **** if (btf > remain) btf = (UINT)remain; /* Truncate btf by remaining bytes */
|
||
5252:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5253:Middlewares/Third_Party/FatFs/src/ff.c **** for ( ; btf && (*func)(0, 0); /* Repeat until all data transferred or stream goes busy */
|
||
5254:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr += rcnt, *bf += rcnt, btf -= rcnt) {
|
||
5255:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
5256:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
5257:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 124
|
||
|
||
|
||
5258:Middlewares/Third_Party/FatFs/src/ff.c **** clst = (fp->fptr == 0) ? /* On the top of the file? */
|
||
5259:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust : get_fat(&fp->obj, fp->clust);
|
||
5260:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) ABORT(fs, FR_INT_ERR);
|
||
5261:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
5262:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
5263:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5264:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5265:Middlewares/Third_Party/FatFs/src/ff.c **** sect = clust2sect(fs, fp->clust); /* Get current data sector */
|
||
5266:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
5267:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
5268:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
5269:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect) != FR_OK) ABORT(fs, FR_DISK_ERR); /* Move sector window to the file dat
|
||
5270:Middlewares/Third_Party/FatFs/src/ff.c **** dbuf = fs->win;
|
||
5271:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5272:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->sect != sect) { /* Fill sector cache with file data */
|
||
5273:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5274:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back dirty sector cache */
|
||
5275:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
5276:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
5277:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5278:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5279:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
5280:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5281:Middlewares/Third_Party/FatFs/src/ff.c **** dbuf = fp->buf;
|
||
5282:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5283:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = sect;
|
||
5284:Middlewares/Third_Party/FatFs/src/ff.c **** rcnt = SS(fs) - (UINT)fp->fptr % SS(fs); /* Number of bytes left in the sector */
|
||
5285:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btf) rcnt = btf; /* Clip it by btr if needed */
|
||
5286:Middlewares/Third_Party/FatFs/src/ff.c **** rcnt = (*func)(dbuf + ((UINT)fp->fptr % SS(fs)), rcnt); /* Forward the file data */
|
||
5287:Middlewares/Third_Party/FatFs/src/ff.c **** if (!rcnt) ABORT(fs, FR_INT_ERR);
|
||
5288:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5289:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5290:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, FR_OK);
|
||
5291:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5292:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_FORWARD */
|
||
5293:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5294:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5296:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_MKFS && !_FS_READONLY
|
||
5297:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5298:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create an FAT/exFAT volume */
|
||
5299:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5300:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5301:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_mkfs (
|
||
5302:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Logical drive number */
|
||
5303:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE opt, /* Format option */
|
||
5304:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD au, /* Size of allocation unit (cluster) [byte] */
|
||
5305:Middlewares/Third_Party/FatFs/src/ff.c **** void* work, /* Pointer to working buffer */
|
||
5306:Middlewares/Third_Party/FatFs/src/ff.c **** UINT len /* Size of working buffer */
|
||
5307:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5308:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5309:Middlewares/Third_Party/FatFs/src/ff.c **** const UINT n_fats = 1; /* Number of FATs for FAT12/16/32 volume (1 or 2) */
|
||
5310:Middlewares/Third_Party/FatFs/src/ff.c **** const UINT n_rootdir = 512; /* Number of root directory entries for FAT12/16 volume */
|
||
5311:Middlewares/Third_Party/FatFs/src/ff.c **** static const WORD cst[] = {1, 4, 16, 64, 256, 512, 0}; /* Cluster size boundary for FAT12/16 volum
|
||
5312:Middlewares/Third_Party/FatFs/src/ff.c **** static const WORD cst32[] = {1, 2, 4, 8, 16, 32, 0}; /* Cluster size boundary for FAT32 volume (12
|
||
5313:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE fmt, sys, *buf, *pte, pdrv, part;
|
||
5314:Middlewares/Third_Party/FatFs/src/ff.c **** WORD ss;
|
||
ARM GAS /tmp/ccH7dUYB.s page 125
|
||
|
||
|
||
5315:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD szb_buf, sz_buf, sz_blk, n_clst, pau, sect, nsect, n;
|
||
5316:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD b_vol, b_fat, b_data; /* Base LBA for volume, fat, data */
|
||
5317:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sz_vol, sz_rsv, sz_fat, sz_dir; /* Size for volume, fat, dir, data */
|
||
5318:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
5319:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
5320:Middlewares/Third_Party/FatFs/src/ff.c **** DSTATUS stat;
|
||
5321:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_TRIM || _FS_EXFAT
|
||
5322:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD tbl[3];
|
||
5323:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5324:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5325:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5326:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check mounted drive and clear work area */
|
||
5327:Middlewares/Third_Party/FatFs/src/ff.c **** vol = get_ldnumber(&path); /* Get target logical drive */
|
||
5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
5329:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */
|
||
5330:Middlewares/Third_Party/FatFs/src/ff.c **** pdrv = LD2PD(vol); /* Physical drive */
|
||
5331:Middlewares/Third_Party/FatFs/src/ff.c **** part = LD2PT(vol); /* Partition (0:create as new, 1-4:get from partition table) */
|
||
5332:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5333:Middlewares/Third_Party/FatFs/src/ff.c **** /* Check physical drive status */
|
||
5334:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(pdrv);
|
||
5335:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) return FR_NOT_READY;
|
||
5336:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_BLOCK_SIZE, &sz_blk) != RES_OK || !sz_blk || sz_blk > 32768 || (sz_blk &
|
||
5338:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
5339:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_SECTOR_SIZE, &ss) != RES_OK) return FR_DISK_ERR;
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** if (ss > _MAX_SS || ss < _MIN_SS || (ss & (ss - 1))) return FR_DISK_ERR;
|
||
5341:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5342:Middlewares/Third_Party/FatFs/src/ff.c **** ss = _MAX_SS;
|
||
5343:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** if ((au != 0 && au < ss) || au > 0x1000000 || (au & (au - 1))) return FR_INVALID_PARAMETER; /* Che
|
||
5345:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
5346:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5347:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get working buffer */
|
||
5348:Middlewares/Third_Party/FatFs/src/ff.c **** buf = (BYTE*)work; /* Working buffer */
|
||
5349:Middlewares/Third_Party/FatFs/src/ff.c **** sz_buf = len / ss; /* Size of working buffer (sector) */
|
||
5350:Middlewares/Third_Party/FatFs/src/ff.c **** szb_buf = sz_buf * ss; /* Size of working buffer (byte) */
|
||
5351:Middlewares/Third_Party/FatFs/src/ff.c **** if (!szb_buf) return FR_MKFS_ABORTED;
|
||
5352:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5353:Middlewares/Third_Party/FatFs/src/ff.c **** /* Determine where the volume to be located (b_vol, sz_vol) */
|
||
5354:Middlewares/Third_Party/FatFs/src/ff.c **** if (_MULTI_PARTITION && part != 0) {
|
||
5355:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get partition information from partition table in the MBR */
|
||
5356:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(pdrv, buf, 0, 1) != RES_OK) return FR_DISK_ERR; /* Load MBR */
|
||
5357:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(buf + BS_55AA) != 0xAA55) return FR_MKFS_ABORTED; /* Check if MBR is valid */
|
||
5358:Middlewares/Third_Party/FatFs/src/ff.c **** pte = buf + (MBR_Table + (part - 1) * SZ_PTE);
|
||
5359:Middlewares/Third_Party/FatFs/src/ff.c **** if (!pte[PTE_System]) return FR_MKFS_ABORTED; /* No partition? */
|
||
5360:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = ld_dword(pte + PTE_StLba); /* Get volume start sector */
|
||
5361:Middlewares/Third_Party/FatFs/src/ff.c **** sz_vol = ld_dword(pte + PTE_SizLba); /* Get volume size */
|
||
5362:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5363:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create a single-partition in this function */
|
||
5364:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_SECTOR_COUNT, &sz_vol) != RES_OK) return FR_DISK_ERR;
|
||
5365:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = (opt & FM_SFD) ? 0 : 63; /* Volume start sector */
|
||
5366:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < b_vol) return FR_MKFS_ABORTED;
|
||
5367:Middlewares/Third_Party/FatFs/src/ff.c **** sz_vol -= b_vol; /* Volume size */
|
||
5368:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5369:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 128) return FR_MKFS_ABORTED; /* Check if volume size is >=128s */
|
||
5370:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5371:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pre-determine the FAT type */
|
||
ARM GAS /tmp/ccH7dUYB.s page 126
|
||
|
||
|
||
5372:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5373:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && (opt & FM_EXFAT)) { /* exFAT possible? */
|
||
5374:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_ANY) == FM_EXFAT || sz_vol >= 0x4000000 || au > 128) { /* exFAT only, vol >= 64Ms
|
||
5375:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_EXFAT; break;
|
||
5376:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5377:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5378:Middlewares/Third_Party/FatFs/src/ff.c **** if (au > 128) return FR_INVALID_PARAMETER; /* Too large au for FAT/FAT32 */
|
||
5379:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt & FM_FAT32) { /* FAT32 possible? */
|
||
5380:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_ANY) == FM_FAT32 || !(opt & FM_FAT)) { /* FAT32 only or no-FAT? */
|
||
5381:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; break;
|
||
5382:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5383:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5384:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(opt & FM_FAT)) return FR_INVALID_PARAMETER; /* no-FAT? */
|
||
5385:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT16;
|
||
5386:Middlewares/Third_Party/FatFs/src/ff.c **** } while (0);
|
||
5387:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5388:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5389:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_EXFAT) { /* Create an exFAT volume */
|
||
5390:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD szb_bit, szb_case, sum, nb, cl;
|
||
5391:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR ch, si;
|
||
5392:Middlewares/Third_Party/FatFs/src/ff.c **** UINT j, st;
|
||
5393:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE b;
|
||
5394:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5395:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x1000) return FR_MKFS_ABORTED; /* Too small volume? */
|
||
5396:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_TRIM
|
||
5397:Middlewares/Third_Party/FatFs/src/ff.c **** tbl[0] = b_vol; tbl[1] = b_vol + sz_vol - 1; /* Inform the device the volume area may be erased *
|
||
5398:Middlewares/Third_Party/FatFs/src/ff.c **** disk_ioctl(pdrv, CTRL_TRIM, tbl);
|
||
5399:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5400:Middlewares/Third_Party/FatFs/src/ff.c **** /* Determine FAT location, data location and number of clusters */
|
||
5401:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au) { /* au auto-selection */
|
||
5402:Middlewares/Third_Party/FatFs/src/ff.c **** au = 8;
|
||
5403:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol >= 0x80000) au = 64; /* >= 512Ks */
|
||
5404:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol >= 0x4000000) au = 256; /* >= 64Ms */
|
||
5405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5406:Middlewares/Third_Party/FatFs/src/ff.c **** b_fat = b_vol + 32; /* FAT start at offset 32 */
|
||
5407:Middlewares/Third_Party/FatFs/src/ff.c **** sz_fat = ((sz_vol / au + 2) * 4 + ss - 1) / ss; /* Number of FAT sectors */
|
||
5408:Middlewares/Third_Party/FatFs/src/ff.c **** b_data = (b_fat + sz_fat + sz_blk - 1) & ~(sz_blk - 1); /* Align data area to the erase block bou
|
||
5409:Middlewares/Third_Party/FatFs/src/ff.c **** if (b_data >= sz_vol / 2) return FR_MKFS_ABORTED; /* Too small volume? */
|
||
5410:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - (b_data - b_vol)) / au; /* Number of clusters */
|
||
5411:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <16) return FR_MKFS_ABORTED; /* Too few clusters? */
|
||
5412:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_EXFAT) return FR_MKFS_ABORTED; /* Too many clusters? */
|
||
5413:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5414:Middlewares/Third_Party/FatFs/src/ff.c **** szb_bit = (n_clst + 7) / 8; /* Size of allocation bitmap */
|
||
5415:Middlewares/Third_Party/FatFs/src/ff.c **** tbl[0] = (szb_bit + au * ss - 1) / (au * ss); /* Number of allocation bitmap clusters */
|
||
5416:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5417:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create a compressed up-case table */
|
||
5418:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_data + au * tbl[0]; /* Table start sector */
|
||
5419:Middlewares/Third_Party/FatFs/src/ff.c **** sum = 0; /* Table checksum to be stored in the 82 entry */
|
||
5420:Middlewares/Third_Party/FatFs/src/ff.c **** st = si = i = j = szb_case = 0;
|
||
5421:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5422:Middlewares/Third_Party/FatFs/src/ff.c **** switch (st) {
|
||
5423:Middlewares/Third_Party/FatFs/src/ff.c **** case 0:
|
||
5424:Middlewares/Third_Party/FatFs/src/ff.c **** ch = ff_wtoupper(si); /* Get an up-case char */
|
||
5425:Middlewares/Third_Party/FatFs/src/ff.c **** if (ch != si) {
|
||
5426:Middlewares/Third_Party/FatFs/src/ff.c **** si++; break; /* Store the up-case char if exist */
|
||
5427:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5428:Middlewares/Third_Party/FatFs/src/ff.c **** for (j = 1; (WCHAR)(si + j) && (WCHAR)(si + j) == ff_wtoupper((WCHAR)(si + j)); j++) ; /* Get r
|
||
ARM GAS /tmp/ccH7dUYB.s page 127
|
||
|
||
|
||
5429:Middlewares/Third_Party/FatFs/src/ff.c **** if (j >= 128) {
|
||
5430:Middlewares/Third_Party/FatFs/src/ff.c **** ch = 0xFFFF; st = 2; break; /* Compress the no-case block if run is >= 128 */
|
||
5431:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5432:Middlewares/Third_Party/FatFs/src/ff.c **** st = 1; /* Do not compress short run */
|
||
5433:Middlewares/Third_Party/FatFs/src/ff.c **** /* go to next case */
|
||
5434:Middlewares/Third_Party/FatFs/src/ff.c **** case 1:
|
||
5435:Middlewares/Third_Party/FatFs/src/ff.c **** ch = si++; /* Fill the short run */
|
||
5436:Middlewares/Third_Party/FatFs/src/ff.c **** if (--j == 0) st = 0;
|
||
5437:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
5438:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5439:Middlewares/Third_Party/FatFs/src/ff.c **** default:
|
||
5440:Middlewares/Third_Party/FatFs/src/ff.c **** ch = (WCHAR)j; si += j; /* Number of chars to skip */
|
||
5441:Middlewares/Third_Party/FatFs/src/ff.c **** st = 0;
|
||
5442:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5443:Middlewares/Third_Party/FatFs/src/ff.c **** sum = xsum32(buf[i + 0] = (BYTE)ch, sum); /* Put it into the write buffer */
|
||
5444:Middlewares/Third_Party/FatFs/src/ff.c **** sum = xsum32(buf[i + 1] = (BYTE)(ch >> 8), sum);
|
||
5445:Middlewares/Third_Party/FatFs/src/ff.c **** i += 2; szb_case += 2;
|
||
5446:Middlewares/Third_Party/FatFs/src/ff.c **** if (!si || i == szb_buf) { /* Write buffered data when buffer full or end of process */
|
||
5447:Middlewares/Third_Party/FatFs/src/ff.c **** n = (i + ss - 1) / ss;
|
||
5448:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, n) != RES_OK) return FR_DISK_ERR;
|
||
5449:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; i = 0;
|
||
5450:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5451:Middlewares/Third_Party/FatFs/src/ff.c **** } while (si);
|
||
5452:Middlewares/Third_Party/FatFs/src/ff.c **** tbl[1] = (szb_case + au * ss - 1) / (au * ss); /* Number of up-case table clusters */
|
||
5453:Middlewares/Third_Party/FatFs/src/ff.c **** tbl[2] = 1; /* Number of root dir clusters */
|
||
5454:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5455:Middlewares/Third_Party/FatFs/src/ff.c **** /* Initialize the allocation bitmap */
|
||
5456:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_data; nsect = (szb_bit + ss - 1) / ss; /* Start of bitmap and number of sectors */
|
||
5457:Middlewares/Third_Party/FatFs/src/ff.c **** nb = tbl[0] + tbl[1] + tbl[2]; /* Number of clusters in-use by system */
|
||
5458:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5459:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, szb_buf);
|
||
5460:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; nb >= 8 && i < szb_buf; buf[i++] = 0xFF, nb -= 8) ;
|
||
5461:Middlewares/Third_Party/FatFs/src/ff.c **** for (b = 1; nb && i < szb_buf; buf[i] |= b, b <<= 1, nb--) ;
|
||
5462:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect; /* Write the buffered data */
|
||
5463:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, n) != RES_OK) return FR_DISK_ERR;
|
||
5464:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
5465:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
5466:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5467:Middlewares/Third_Party/FatFs/src/ff.c **** /* Initialize the FAT */
|
||
5468:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_fat; nsect = sz_fat; /* Start of FAT and number of FAT sectors */
|
||
5469:Middlewares/Third_Party/FatFs/src/ff.c **** j = nb = cl = 0;
|
||
5470:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5471:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, szb_buf); i = 0; /* Clear work area and reset write index */
|
||
5472:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0) { /* Set entry 0 and 1 */
|
||
5473:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + i, 0xFFFFFFF8); i += 4; cl++;
|
||
5474:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + i, 0xFFFFFFFF); i += 4; cl++;
|
||
5475:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5476:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Create chains of bitmap, up-case and root dir */
|
||
5477:Middlewares/Third_Party/FatFs/src/ff.c **** while (nb && i < szb_buf) { /* Create a chain */
|
||
5478:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + i, (nb > 1) ? cl + 1 : 0xFFFFFFFF);
|
||
5479:Middlewares/Third_Party/FatFs/src/ff.c **** i += 4; cl++; nb--;
|
||
5480:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5481:Middlewares/Third_Party/FatFs/src/ff.c **** if (!nb && j < 3) nb = tbl[j++]; /* Next chain */
|
||
5482:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nb && i < szb_buf);
|
||
5483:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect; /* Write the buffered data */
|
||
5484:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, n) != RES_OK) return FR_DISK_ERR;
|
||
5485:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
ARM GAS /tmp/ccH7dUYB.s page 128
|
||
|
||
|
||
5486:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
5487:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5488:Middlewares/Third_Party/FatFs/src/ff.c **** /* Initialize the root directory */
|
||
5489:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, szb_buf);
|
||
5490:Middlewares/Third_Party/FatFs/src/ff.c **** buf[SZDIRE * 0 + 0] = 0x83; /* 83 entry (volume label) */
|
||
5491:Middlewares/Third_Party/FatFs/src/ff.c **** buf[SZDIRE * 1 + 0] = 0x81; /* 81 entry (allocation bitmap) */
|
||
5492:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + SZDIRE * 1 + 20, 2);
|
||
5493:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + SZDIRE * 1 + 24, szb_bit);
|
||
5494:Middlewares/Third_Party/FatFs/src/ff.c **** buf[SZDIRE * 2 + 0] = 0x82; /* 82 entry (up-case table) */
|
||
5495:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + SZDIRE * 2 + 4, sum);
|
||
5496:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + SZDIRE * 2 + 20, 2 + tbl[0]);
|
||
5497:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + SZDIRE * 2 + 24, szb_case);
|
||
5498:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_data + au * (tbl[0] + tbl[1]); nsect = au; /* Start of the root directory and number of
|
||
5499:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Fill root directory sectors */
|
||
5500:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect;
|
||
5501:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, n) != RES_OK) return FR_DISK_ERR;
|
||
5502:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5503:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
5504:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
5505:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5506:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create two set of the exFAT VBR blocks */
|
||
5507:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_vol;
|
||
5508:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 0; n < 2; n++) {
|
||
5509:Middlewares/Third_Party/FatFs/src/ff.c **** /* Main record (+0) */
|
||
5510:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5511:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_JmpBoot, "\xEB\x76\x90" "EXFAT ", 11); /* Boot jump code (x86), OEM name */
|
||
5512:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_VolOfsEx, b_vol); /* Volume offset in the physical drive [sector] */
|
||
5513:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_TotSecEx, sz_vol); /* Volume size [sector] */
|
||
5514:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_FatOfsEx, b_fat - b_vol); /* FAT offset [sector] */
|
||
5515:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_FatSzEx, sz_fat); /* FAT size [sector] */
|
||
5516:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_DataOfsEx, b_data - b_vol); /* Data offset [sector] */
|
||
5517:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_NumClusEx, n_clst); /* Number of clusters */
|
||
5518:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_RootClusEx, 2 + tbl[0] + tbl[1]); /* Root dir cluster # */
|
||
5519:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_VolIDEx, GET_FATTIME()); /* VSN */
|
||
5520:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FSVerEx, 0x100); /* File system version (1.00) */
|
||
5521:Middlewares/Third_Party/FatFs/src/ff.c **** for (buf[BPB_BytsPerSecEx] = 0, i = ss; i >>= 1; buf[BPB_BytsPerSecEx]++) ; /* Log2 of sector si
|
||
5522:Middlewares/Third_Party/FatFs/src/ff.c **** for (buf[BPB_SecPerClusEx] = 0, i = au; i >>= 1; buf[BPB_SecPerClusEx]++) ; /* Log2 of cluster s
|
||
5523:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_NumFATsEx] = 1; /* Number of FATs */
|
||
5524:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_DrvNumEx] = 0x80; /* Drive number (for int13) */
|
||
5525:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_BootCodeEx, 0xFEEB); /* Boot code (x86) */
|
||
5526:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_55AA, 0xAA55); /* Signature (placed here regardless of sector size) */
|
||
5527:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = sum = 0; i < ss; i++) { /* VBR checksum */
|
||
5528:Middlewares/Third_Party/FatFs/src/ff.c **** if (i != BPB_VolFlagEx && i != BPB_VolFlagEx + 1 && i != BPB_PercInUseEx) sum = xsum32(buf[i],
|
||
5529:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5530:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect++, 1) != RES_OK) return FR_DISK_ERR;
|
||
5531:Middlewares/Third_Party/FatFs/src/ff.c **** /* Extended bootstrap record (+1..+8) */
|
||
5532:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5533:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + ss - 2, 0xAA55); /* Signature (placed at end of sector) */
|
||
5534:Middlewares/Third_Party/FatFs/src/ff.c **** for (j = 1; j < 9; j++) {
|
||
5535:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < ss; sum = xsum32(buf[i++], sum)) ; /* VBR checksum */
|
||
5536:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect++, 1) != RES_OK) return FR_DISK_ERR;
|
||
5537:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5538:Middlewares/Third_Party/FatFs/src/ff.c **** /* OEM/Reserved record (+9..+10) */
|
||
5539:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5540:Middlewares/Third_Party/FatFs/src/ff.c **** for ( ; j < 11; j++) {
|
||
5541:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < ss; sum = xsum32(buf[i++], sum)) ; /* VBR checksum */
|
||
5542:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect++, 1) != RES_OK) return FR_DISK_ERR;
|
||
ARM GAS /tmp/ccH7dUYB.s page 129
|
||
|
||
|
||
5543:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5544:Middlewares/Third_Party/FatFs/src/ff.c **** /* Sum record (+11) */
|
||
5545:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < ss; i += 4) st_dword(buf + i, sum); /* Fill with checksum value */
|
||
5546:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect++, 1) != RES_OK) return FR_DISK_ERR;
|
||
5547:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5548:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5549:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
5550:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _FS_EXFAT */
|
||
5551:Middlewares/Third_Party/FatFs/src/ff.c **** { /* Create an FAT12/16/32 volume */
|
||
5552:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5553:Middlewares/Third_Party/FatFs/src/ff.c **** pau = au;
|
||
5554:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pre-determine number of clusters and FAT sub-type */
|
||
5555:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32 volume */
|
||
5556:Middlewares/Third_Party/FatFs/src/ff.c **** if (!pau) { /* au auto-selection */
|
||
5557:Middlewares/Third_Party/FatFs/src/ff.c **** n = sz_vol / 0x20000; /* Volume size in unit of 128KS */
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0, pau = 1; cst32[i] && cst32[i] <= n; i++, pau <<= 1) ; /* Get from table */
|
||
5559:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5560:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = sz_vol / pau; /* Number of clusters */
|
||
5561:Middlewares/Third_Party/FatFs/src/ff.c **** sz_fat = (n_clst * 4 + 8 + ss - 1) / ss; /* FAT size [sector] */
|
||
5562:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 32; /* Number of reserved sectors */
|
||
5563:Middlewares/Third_Party/FatFs/src/ff.c **** sz_dir = 0; /* No static directory */
|
||
5564:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT16 || n_clst > MAX_FAT32) return FR_MKFS_ABORTED;
|
||
5565:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */
|
||
5566:Middlewares/Third_Party/FatFs/src/ff.c **** if (!pau) { /* au auto-selection */
|
||
5567:Middlewares/Third_Party/FatFs/src/ff.c **** n = sz_vol / 0x1000; /* Volume size in unit of 4KS */
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0, pau = 1; cst[i] && cst[i] <= n; i++, pau <<= 1) ; /* Get from table */
|
||
5569:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5570:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = sz_vol / pau;
|
||
5571:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT12) {
|
||
5572:Middlewares/Third_Party/FatFs/src/ff.c **** n = n_clst * 2 + 4; /* FAT size [byte] */
|
||
5573:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5574:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT12;
|
||
5575:Middlewares/Third_Party/FatFs/src/ff.c **** n = (n_clst * 3 + 1) / 2 + 3; /* FAT size [byte] */
|
||
5576:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5577:Middlewares/Third_Party/FatFs/src/ff.c **** sz_fat = (n + ss - 1) / ss; /* FAT size [sector] */
|
||
5578:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 1; /* Number of reserved sectors */
|
||
5579:Middlewares/Third_Party/FatFs/src/ff.c **** sz_dir = (DWORD)n_rootdir * SZDIRE / ss; /* Rootdir size [sector] */
|
||
5580:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5581:Middlewares/Third_Party/FatFs/src/ff.c **** b_fat = b_vol + sz_rsv; /* FAT base */
|
||
5582:Middlewares/Third_Party/FatFs/src/ff.c **** b_data = b_fat + sz_fat * n_fats + sz_dir; /* Data base */
|
||
5583:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5584:Middlewares/Third_Party/FatFs/src/ff.c **** /* Align data base to erase block boundary (for flash memory media) */
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** n = ((b_data + sz_blk - 1) & ~(sz_blk - 1)) - b_data; /* Next nearest erase block from current d
|
||
5586:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
5587:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv += n; b_fat += n;
|
||
5588:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16: Expand FAT size */
|
||
5589:Middlewares/Third_Party/FatFs/src/ff.c **** sz_fat += n / n_fats;
|
||
5590:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5591:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5592:Middlewares/Third_Party/FatFs/src/ff.c **** /* Determine number of clusters and final check of validity of the FAT sub-type */
|
||
5593:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < b_data + pau * 16 - b_vol) return FR_MKFS_ABORTED; /* Too small volume */
|
||
5594:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - sz_rsv - sz_fat * n_fats - sz_dir) / pau;
|
||
5595:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
5596:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT16) { /* Too few clusters for FAT32 */
|
||
5597:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau / 2) != 0) continue; /* Adjust cluster size and retry */
|
||
5598:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
5599:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 130
|
||
|
||
|
||
5600:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5601:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT16) {
|
||
5602:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT16) { /* Too many clusters for FAT16 */
|
||
5603:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (pau * 2) <= 64) {
|
||
5604:Middlewares/Third_Party/FatFs/src/ff.c **** au = pau * 2; continue; /* Adjust cluster size and retry */
|
||
5605:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5606:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_FAT32)) {
|
||
5607:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; continue; /* Switch type to FAT32 and retry */
|
||
5608:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5609:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau * 2) <= 128) continue; /* Adjust cluster size and retry */
|
||
5610:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
5611:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5612:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT12) { /* Too few clusters for FAT16 */
|
||
5613:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau * 2) <= 128) continue; /* Adjust cluster size and retry */
|
||
5614:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
5615:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5616:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT12 && n_clst > MAX_FAT12) return FR_MKFS_ABORTED; /* Too many clusters for FAT1
|
||
5618:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5619:Middlewares/Third_Party/FatFs/src/ff.c **** /* Ok, it is the valid cluster configuration */
|
||
5620:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
5621:Middlewares/Third_Party/FatFs/src/ff.c **** } while (1);
|
||
5622:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5623:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_TRIM
|
||
5624:Middlewares/Third_Party/FatFs/src/ff.c **** tbl[0] = b_vol; tbl[1] = b_vol + sz_vol - 1; /* Inform the device the volume area can be erased *
|
||
5625:Middlewares/Third_Party/FatFs/src/ff.c **** disk_ioctl(pdrv, CTRL_TRIM, tbl);
|
||
5626:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5627:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FAT VBR */
|
||
5628:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5629:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_JmpBoot, "\xEB\xFE\x90" "MSDOS5.0", 11);/* Boot jump code (x86), OEM name */
|
||
5630:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_BytsPerSec, ss); /* Sector size [byte] */
|
||
5631:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_SecPerClus] = (BYTE)pau; /* Cluster size [sector] */
|
||
5632:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_RsvdSecCnt, (WORD)sz_rsv); /* Size of reserved area */
|
||
5633:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_NumFATs] = (BYTE)n_fats; /* Number of FATs */
|
||
5634:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_RootEntCnt, (WORD)((fmt == FS_FAT32) ? 0 : n_rootdir)); /* Number of root direc
|
||
5635:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x10000) {
|
||
5636:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_TotSec16, (WORD)sz_vol); /* Volume size in 16-bit LBA */
|
||
5637:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5638:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_TotSec32, sz_vol); /* Volume size in 32-bit LBA */
|
||
5639:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5640:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_Media] = 0xF8; /* Media descriptor byte */
|
||
5641:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_SecPerTrk, 63); /* Number of sectors per track (for int13) */
|
||
5642:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_NumHeads, 255); /* Number of heads (for int13) */
|
||
5643:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_HiddSec, b_vol); /* Volume offset in the physical drive [sector] */
|
||
5644:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
5645:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BS_VolID32, GET_FATTIME()); /* VSN */
|
||
5646:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_FATSz32, sz_fat); /* FAT size [sector] */
|
||
5647:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_RootClus32, 2); /* Root directory cluster # (2) */
|
||
5648:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FSInfo32, 1); /* Offset of FSINFO sector (VBR + 1) */
|
||
5649:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_BkBootSec32, 6); /* Offset of backup VBR (VBR + 6) */
|
||
5650:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_DrvNum32] = 0x80; /* Drive number (for int13) */
|
||
5651:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig32] = 0x29; /* Extended boot signature */
|
||
5652:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_VolLab32, "NO NAME " "FAT32 ", 19); /* Volume label, FAT signature */
|
||
5653:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5654:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BS_VolID, GET_FATTIME()); /* VSN */
|
||
5655:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FATSz16, (WORD)sz_fat); /* FAT size [sector] */
|
||
5656:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_DrvNum] = 0x80; /* Drive number (for int13) */
|
||
ARM GAS /tmp/ccH7dUYB.s page 131
|
||
|
||
|
||
5657:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig] = 0x29; /* Extended boot signature */
|
||
5658:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_VolLab, "NO NAME " "FAT ", 19); /* Volume label, FAT signature */
|
||
5659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5660:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_55AA, 0xAA55); /* Signature (offset is fixed here regardless of sector size)
|
||
5661:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, b_vol, 1) != RES_OK) return FR_DISK_ERR; /* Write it to the VBR sector
|
||
5662:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5663:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSINFO record if needed */
|
||
5664:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
5665:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 6, 1); /* Write backup VBR (VBR + 6) */
|
||
5666:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5667:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_LeadSig, 0x41615252);
|
||
5668:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_StrucSig, 0x61417272);
|
||
5669:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_Free_Count, n_clst - 1); /* Number of free clusters */
|
||
5670:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_Nxt_Free, 2); /* Last allocated cluster# */
|
||
5671:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_55AA, 0xAA55);
|
||
5672:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 7, 1); /* Write backup FSINFO (VBR + 7) */
|
||
5673:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 1, 1); /* Write original FSINFO (VBR + 1) */
|
||
5674:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5675:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5676:Middlewares/Third_Party/FatFs/src/ff.c **** /* Initialize FAT area */
|
||
5677:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, (UINT)szb_buf);
|
||
5678:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_fat; /* FAT start sector */
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < n_fats; i++) { /* Initialize FATs each */
|
||
5680:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
5681:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 0, 0xFFFFFFF8); /* Entry 0 */
|
||
5682:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 4, 0xFFFFFFFF); /* Entry 1 */
|
||
5683:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 8, 0x0FFFFFFF); /* Entry 2 (root directory) */
|
||
5684:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5685:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 0, (fmt == FS_FAT12) ? 0xFFFFF8 : 0xFFFFFFF8); /* Entry 0 and 1 */
|
||
5686:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5687:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = sz_fat; /* Number of FAT sectors */
|
||
5688:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Fill FAT sectors */
|
||
5689:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect;
|
||
5690:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, (UINT)n) != RES_OK) return FR_DISK_ERR;
|
||
5691:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5692:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
5693:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
5694:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5695:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5696:Middlewares/Third_Party/FatFs/src/ff.c **** /* Initialize root directory (fill with zero) */
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = (fmt == FS_FAT32) ? pau : sz_dir; /* Number of root directory sectors */
|
||
5698:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
5699:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect;
|
||
5700:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, (UINT)n) != RES_OK) return FR_DISK_ERR;
|
||
5701:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
5702:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
5703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5704:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5705:Middlewares/Third_Party/FatFs/src/ff.c **** /* Determine system ID in the partition table */
|
||
5706:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fmt == FS_EXFAT) {
|
||
5707:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x07; /* HPFS/NTFS/exFAT */
|
||
5708:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5709:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
5710:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x0C; /* FAT32X */
|
||
5711:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5712:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol >= 0x10000) {
|
||
5713:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x06; /* FAT12/16 (>=64KS) */
|
||
ARM GAS /tmp/ccH7dUYB.s page 132
|
||
|
||
|
||
5714:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** sys = (fmt == FS_FAT16) ? 0x04 : 0x01; /* FAT16 (<64KS) : FAT12 (<64KS) */
|
||
5716:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5717:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5718:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5719:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5720:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update partition information */
|
||
5721:Middlewares/Third_Party/FatFs/src/ff.c **** if (_MULTI_PARTITION && part != 0) { /* Created in the existing partition */
|
||
5722:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update system ID in the partition table */
|
||
5723:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(pdrv, buf, 0, 1) != RES_OK) return FR_DISK_ERR; /* Read the MBR */
|
||
5724:Middlewares/Third_Party/FatFs/src/ff.c **** buf[MBR_Table + (part - 1) * SZ_PTE + PTE_System] = sys; /* Set system ID */
|
||
5725:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, 0, 1) != RES_OK) return FR_DISK_ERR; /* Write it back to the MBR */
|
||
5726:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Created as a new single partition */
|
||
5727:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(opt & FM_SFD)) { /* Create partition table if in FDISK format */
|
||
5728:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
5729:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_55AA, 0xAA55); /* MBR signature */
|
||
5730:Middlewares/Third_Party/FatFs/src/ff.c **** pte = buf + MBR_Table; /* Create partition table for single partition in the drive */
|
||
5731:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_Boot] = 0; /* Boot indicator */
|
||
5732:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StHead] = 1; /* Start head */
|
||
5733:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StSec] = 1; /* Start sector */
|
||
5734:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StCyl] = 0; /* Start cylinder */
|
||
5735:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_System] = sys; /* System type */
|
||
5736:Middlewares/Third_Party/FatFs/src/ff.c **** n = (b_vol + sz_vol) / (63 * 255); /* (End CHS may be invalid) */
|
||
5737:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdHead] = 254; /* End head */
|
||
5738:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdSec] = (BYTE)(n >> 2 | 63); /* End sector */
|
||
5739:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdCyl] = (BYTE)n; /* End cylinder */
|
||
5740:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(pte + PTE_StLba, b_vol); /* Start offset in LBA */
|
||
5741:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(pte + PTE_SizLba, sz_vol); /* Size in sectors */
|
||
5742:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, 0, 1) != RES_OK) return FR_DISK_ERR; /* Write it to the MBR */
|
||
5743:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5744:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5745:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5746:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, CTRL_SYNC, 0) != RES_OK) return FR_DISK_ERR;
|
||
5747:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5748:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK;
|
||
5749:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5750:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5751:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5752:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5753:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MULTI_PARTITION
|
||
5754:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5755:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create partition table on the physical drive */
|
||
5756:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5757:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5758:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_fdisk (
|
||
5759:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE pdrv, /* Physical drive number */
|
||
5760:Middlewares/Third_Party/FatFs/src/ff.c **** const DWORD* szt, /* Pointer to the size table for each partitions */
|
||
5761:Middlewares/Third_Party/FatFs/src/ff.c **** void* work /* Pointer to the working buffer */
|
||
5762:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5763:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5764:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, n, sz_cyl, tot_cyl, b_cyl, e_cyl, p_cyl;
|
||
5765:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE s_hd, e_hd, *p, *buf = (BYTE*)work;
|
||
5766:Middlewares/Third_Party/FatFs/src/ff.c **** DSTATUS stat;
|
||
5767:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sz_disk, sz_part, s_part;
|
||
5768:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5769:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5770:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(pdrv);
|
||
ARM GAS /tmp/ccH7dUYB.s page 133
|
||
|
||
|
||
5771:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) return FR_NOT_READY;
|
||
5772:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
|
||
5773:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_SECTOR_COUNT, &sz_disk)) return FR_DISK_ERR;
|
||
5774:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5775:Middlewares/Third_Party/FatFs/src/ff.c **** /* Determine the CHS without any consideration of the drive geometry */
|
||
5776:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 16; n < 256 && sz_disk / n / 63 > 1024; n *= 2) ;
|
||
5777:Middlewares/Third_Party/FatFs/src/ff.c **** if (n == 256) n--;
|
||
5778:Middlewares/Third_Party/FatFs/src/ff.c **** e_hd = n - 1;
|
||
5779:Middlewares/Third_Party/FatFs/src/ff.c **** sz_cyl = 63 * n;
|
||
5780:Middlewares/Third_Party/FatFs/src/ff.c **** tot_cyl = sz_disk / sz_cyl;
|
||
5781:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5782:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create partition table */
|
||
5783:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, _MAX_SS);
|
||
5784:Middlewares/Third_Party/FatFs/src/ff.c **** p = buf + MBR_Table; b_cyl = 0;
|
||
5785:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < 4; i++, p += SZ_PTE) {
|
||
5786:Middlewares/Third_Party/FatFs/src/ff.c **** p_cyl = (szt[i] <= 100U) ? (DWORD)tot_cyl * szt[i] / 100 : szt[i] / sz_cyl; /* Number of cylinder
|
||
5787:Middlewares/Third_Party/FatFs/src/ff.c **** if (!p_cyl) continue;
|
||
5788:Middlewares/Third_Party/FatFs/src/ff.c **** s_part = (DWORD)sz_cyl * b_cyl;
|
||
5789:Middlewares/Third_Party/FatFs/src/ff.c **** sz_part = (DWORD)sz_cyl * p_cyl;
|
||
5790:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 0) { /* Exclude first track of cylinder 0 */
|
||
5791:Middlewares/Third_Party/FatFs/src/ff.c **** s_hd = 1;
|
||
5792:Middlewares/Third_Party/FatFs/src/ff.c **** s_part += 63; sz_part -= 63;
|
||
5793:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5794:Middlewares/Third_Party/FatFs/src/ff.c **** s_hd = 0;
|
||
5795:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5796:Middlewares/Third_Party/FatFs/src/ff.c **** e_cyl = b_cyl + p_cyl - 1; /* End cylinder */
|
||
5797:Middlewares/Third_Party/FatFs/src/ff.c **** if (e_cyl >= tot_cyl) return FR_INVALID_PARAMETER;
|
||
5798:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5799:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set partition table */
|
||
5800:Middlewares/Third_Party/FatFs/src/ff.c **** p[1] = s_hd; /* Start head */
|
||
5801:Middlewares/Third_Party/FatFs/src/ff.c **** p[2] = (BYTE)((b_cyl >> 2) + 1); /* Start sector */
|
||
5802:Middlewares/Third_Party/FatFs/src/ff.c **** p[3] = (BYTE)b_cyl; /* Start cylinder */
|
||
5803:Middlewares/Third_Party/FatFs/src/ff.c **** p[4] = 0x07; /* System type (temporary setting) */
|
||
5804:Middlewares/Third_Party/FatFs/src/ff.c **** p[5] = e_hd; /* End head */
|
||
5805:Middlewares/Third_Party/FatFs/src/ff.c **** p[6] = (BYTE)((e_cyl >> 2) + 63); /* End sector */
|
||
5806:Middlewares/Third_Party/FatFs/src/ff.c **** p[7] = (BYTE)e_cyl; /* End cylinder */
|
||
5807:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(p + 8, s_part); /* Start sector in LBA */
|
||
5808:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(p + 12, sz_part); /* Number of sectors */
|
||
5809:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5810:Middlewares/Third_Party/FatFs/src/ff.c **** /* Next partition */
|
||
5811:Middlewares/Third_Party/FatFs/src/ff.c **** b_cyl += p_cyl;
|
||
5812:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5813:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(p, 0xAA55);
|
||
5814:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5815:Middlewares/Third_Party/FatFs/src/ff.c **** /* Write it to the MBR */
|
||
5816:Middlewares/Third_Party/FatFs/src/ff.c **** return (disk_write(pdrv, buf, 0, 1) != RES_OK || disk_ioctl(pdrv, CTRL_SYNC, 0) != RES_OK) ? FR_DI
|
||
5817:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5818:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5819:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _MULTI_PARTITION */
|
||
5820:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_MKFS && !_FS_READONLY */
|
||
5821:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5822:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5823:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5824:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5825:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_STRFUNC
|
||
5826:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5827:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get a string from the file */
|
||
ARM GAS /tmp/ccH7dUYB.s page 134
|
||
|
||
|
||
5828:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5829:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5830:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR* f_gets (
|
||
5831:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR* buff, /* Pointer to the string buffer to read */
|
||
5832:Middlewares/Third_Party/FatFs/src/ff.c **** int len, /* Size of string buffer (characters) */
|
||
5833:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp /* Pointer to the file object */
|
||
5834:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5835:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5836:Middlewares/Third_Party/FatFs/src/ff.c **** int n = 0;
|
||
5837:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c, *p = buff;
|
||
5838:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE s[2];
|
||
5839:Middlewares/Third_Party/FatFs/src/ff.c **** UINT rc;
|
||
5840:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5841:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** while (n < len - 1) { /* Read characters until buffer gets filled */
|
||
5843:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
5844:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STRF_ENCODE == 3 /* Read a character in UTF-8 */
|
||
5845:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 1, &rc);
|
||
5846:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break;
|
||
5847:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0];
|
||
5848:Middlewares/Third_Party/FatFs/src/ff.c **** if (c >= 0x80) {
|
||
5849:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0xC0) continue; /* Skip stray trailer */
|
||
5850:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0xE0) { /* Two-byte sequence (0x80-0x7FF) */
|
||
5851:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 1, &rc);
|
||
5852:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break;
|
||
5853:Middlewares/Third_Party/FatFs/src/ff.c **** c = (c & 0x1F) << 6 | (s[0] & 0x3F);
|
||
5854:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0x80) c = '?'; /* Reject invalid code range */
|
||
5855:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5856:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0xF0) { /* Three-byte sequence (0x800-0xFFFF) */
|
||
5857:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 2, &rc);
|
||
5858:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 2) break;
|
||
5859:Middlewares/Third_Party/FatFs/src/ff.c **** c = c << 12 | (s[0] & 0x3F) << 6 | (s[1] & 0x3F);
|
||
5860:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0x800) c = '?'; /* Reject invalid code range */
|
||
5861:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Reject four-byte sequence */
|
||
5862:Middlewares/Third_Party/FatFs/src/ff.c **** c = '?';
|
||
5863:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5864:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5865:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5866:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _STRF_ENCODE == 2 /* Read a character in UTF-16BE */
|
||
5867:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 2, &rc);
|
||
5868:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 2) break;
|
||
5869:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[1] + (s[0] << 8);
|
||
5870:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _STRF_ENCODE == 1 /* Read a character in UTF-16LE */
|
||
5871:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 2, &rc);
|
||
5872:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 2) break;
|
||
5873:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0] + (s[1] << 8);
|
||
5874:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Read a character in ANSI/OEM */
|
||
5875:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 1, &rc);
|
||
5876:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break;
|
||
5877:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0];
|
||
5878:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(c)) {
|
||
5879:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 1, &rc);
|
||
5880:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break;
|
||
5881:Middlewares/Third_Party/FatFs/src/ff.c **** c = (c << 8) + s[0];
|
||
5882:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5883:Middlewares/Third_Party/FatFs/src/ff.c **** c = ff_convert(c, 1); /* OEM -> Unicode */
|
||
5884:Middlewares/Third_Party/FatFs/src/ff.c **** if (!c) c = '?';
|
||
ARM GAS /tmp/ccH7dUYB.s page 135
|
||
|
||
|
||
5885:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5886:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Read a character without conversion */
|
||
5887:Middlewares/Third_Party/FatFs/src/ff.c **** f_read(fp, s, 1, &rc);
|
||
5888:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break;
|
||
5889:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0];
|
||
5890:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5891:Middlewares/Third_Party/FatFs/src/ff.c **** if (_USE_STRFUNC == 2 && c == '\r') continue; /* Strip '\r' */
|
||
5892:Middlewares/Third_Party/FatFs/src/ff.c **** *p++ = c;
|
||
5893:Middlewares/Third_Party/FatFs/src/ff.c **** n++;
|
||
5894:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '\n') break; /* Break on EOL */
|
||
5895:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5896:Middlewares/Third_Party/FatFs/src/ff.c **** *p = 0;
|
||
5897:Middlewares/Third_Party/FatFs/src/ff.c **** return n ? buff : 0; /* When no data read (eof or error), return with error. */
|
||
5898:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5899:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5900:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5901:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5902:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5903:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5904:Middlewares/Third_Party/FatFs/src/ff.c **** #include <stdarg.h>
|
||
5905:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5906:Middlewares/Third_Party/FatFs/src/ff.c **** /* Put a character to the file */
|
||
5907:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
5908:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5909:Middlewares/Third_Party/FatFs/src/ff.c **** typedef struct {
|
||
5910:Middlewares/Third_Party/FatFs/src/ff.c **** FIL *fp; /* Ptr to the writing file */
|
||
5911:Middlewares/Third_Party/FatFs/src/ff.c **** int idx, nchr; /* Write index of buf[] (-1:error), number of chars written */
|
||
5912:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE buf[64]; /* Write buffer */
|
||
5913:Middlewares/Third_Party/FatFs/src/ff.c **** } putbuff;
|
||
5914:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5915:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5916:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
5917:Middlewares/Third_Party/FatFs/src/ff.c **** void putc_bfd ( /* Buffered write with code conversion */
|
||
5918:Middlewares/Third_Party/FatFs/src/ff.c **** putbuff* pb,
|
||
5919:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c
|
||
5920:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5921:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5922:Middlewares/Third_Party/FatFs/src/ff.c **** UINT bw;
|
||
5923:Middlewares/Third_Party/FatFs/src/ff.c **** int i;
|
||
5924:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5925:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5926:Middlewares/Third_Party/FatFs/src/ff.c **** if (_USE_STRFUNC == 2 && c == '\n') { /* LF -> CRLF conversion */
|
||
5927:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(pb, '\r');
|
||
5928:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5929:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5930:Middlewares/Third_Party/FatFs/src/ff.c **** i = pb->idx; /* Write index of pb->buf[] */
|
||
5931:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 0) return;
|
||
5932:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5933:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
5934:Middlewares/Third_Party/FatFs/src/ff.c **** #if _STRF_ENCODE == 3 /* Write a character in UTF-8 */
|
||
5935:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0x80) { /* 7-bit */
|
||
5936:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)c;
|
||
5937:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5938:Middlewares/Third_Party/FatFs/src/ff.c **** if (c < 0x800) { /* 11-bit */
|
||
5939:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0xC0 | c >> 6);
|
||
5940:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* 16-bit */
|
||
5941:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0xE0 | c >> 12);
|
||
ARM GAS /tmp/ccH7dUYB.s page 136
|
||
|
||
|
||
5942:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0x80 | (c >> 6 & 0x3F));
|
||
5943:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5944:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0x80 | (c & 0x3F));
|
||
5945:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5946:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _STRF_ENCODE == 2 /* Write a character in UTF-16BE */
|
||
5947:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(c >> 8);
|
||
5948:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)c;
|
||
5949:Middlewares/Third_Party/FatFs/src/ff.c **** #elif _STRF_ENCODE == 1 /* Write a character in UTF-16LE */
|
||
5950:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)c;
|
||
5951:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(c >> 8);
|
||
5952:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Write a character in ANSI/OEM */
|
||
5953:Middlewares/Third_Party/FatFs/src/ff.c **** c = ff_convert(c, 0); /* Unicode -> OEM */
|
||
5954:Middlewares/Third_Party/FatFs/src/ff.c **** if (!c) c = '?';
|
||
5955:Middlewares/Third_Party/FatFs/src/ff.c **** if (c >= 0x100)
|
||
5956:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(c >> 8);
|
||
5957:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)c;
|
||
5958:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5959:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* Write a character without conversion */
|
||
5960:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)c;
|
||
5961:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5962:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5963:Middlewares/Third_Party/FatFs/src/ff.c **** if (i >= (int)(sizeof pb->buf) - 3) { /* Write buffered characters to the file */
|
||
5964:Middlewares/Third_Party/FatFs/src/ff.c **** f_write(pb->fp, pb->buf, (UINT)i, &bw);
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** i = (bw == (UINT)i) ? 0 : -1;
|
||
5966:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5967:Middlewares/Third_Party/FatFs/src/ff.c **** pb->idx = i;
|
||
5968:Middlewares/Third_Party/FatFs/src/ff.c **** pb->nchr++;
|
||
5969:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5970:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5971:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5972:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
5973:Middlewares/Third_Party/FatFs/src/ff.c **** int putc_flush ( /* Flush left characters in the buffer */
|
||
5974:Middlewares/Third_Party/FatFs/src/ff.c **** putbuff* pb
|
||
5975:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5976:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
5977:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nw;
|
||
5978:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5979:Middlewares/Third_Party/FatFs/src/ff.c **** if ( pb->idx >= 0 /* Flush buffered characters to the file */
|
||
5980:Middlewares/Third_Party/FatFs/src/ff.c **** && f_write(pb->fp, pb->buf, (UINT)pb->idx, &nw) == FR_OK
|
||
5981:Middlewares/Third_Party/FatFs/src/ff.c **** && (UINT)pb->idx == nw) return pb->nchr;
|
||
5982:Middlewares/Third_Party/FatFs/src/ff.c **** return EOF;
|
||
5983:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5984:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5985:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5986:Middlewares/Third_Party/FatFs/src/ff.c **** static
|
||
5987:Middlewares/Third_Party/FatFs/src/ff.c **** void putc_init ( /* Initialize write buffer */
|
||
5988:Middlewares/Third_Party/FatFs/src/ff.c **** putbuff* pb,
|
||
5989:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp
|
||
5990:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
5991:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
1636 .loc 1 5991 1 is_stmt 1 view -0
|
||
1637 .cfi_startproc
|
||
1638 @ args = 0, pretend = 0, frame = 0
|
||
1639 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1640 @ link register save eliminated.
|
||
5992:Middlewares/Third_Party/FatFs/src/ff.c **** pb->fp = fp;
|
||
1641 .loc 1 5992 2 view .LVU493
|
||
ARM GAS /tmp/ccH7dUYB.s page 137
|
||
|
||
|
||
1642 .loc 1 5992 9 is_stmt 0 view .LVU494
|
||
1643 0000 0160 str r1, [r0]
|
||
5993:Middlewares/Third_Party/FatFs/src/ff.c **** pb->nchr = pb->idx = 0;
|
||
1644 .loc 1 5993 2 is_stmt 1 view .LVU495
|
||
1645 .loc 1 5993 21 is_stmt 0 view .LVU496
|
||
1646 0002 0023 movs r3, #0
|
||
1647 0004 4360 str r3, [r0, #4]
|
||
1648 .loc 1 5993 11 view .LVU497
|
||
1649 0006 8360 str r3, [r0, #8]
|
||
5994:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1650 .loc 1 5994 1 view .LVU498
|
||
1651 0008 7047 bx lr
|
||
1652 .cfi_endproc
|
||
1653 .LFE1241:
|
||
1655 .section .text.validate,"ax",%progbits
|
||
1656 .align 1
|
||
1657 .syntax unified
|
||
1658 .thumb
|
||
1659 .thumb_func
|
||
1661 validate:
|
||
1662 .LVL178:
|
||
1663 .LFB1220:
|
||
3220:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_INVALID_OBJECT;
|
||
1664 .loc 1 3220 1 is_stmt 1 view -0
|
||
1665 .cfi_startproc
|
||
1666 @ args = 0, pretend = 0, frame = 0
|
||
1667 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3220:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_INVALID_OBJECT;
|
||
1668 .loc 1 3220 1 is_stmt 0 view .LVU500
|
||
1669 0000 38B5 push {r3, r4, r5, lr}
|
||
1670 .LCFI14:
|
||
1671 .cfi_def_cfa_offset 16
|
||
1672 .cfi_offset 3, -16
|
||
1673 .cfi_offset 4, -12
|
||
1674 .cfi_offset 5, -8
|
||
1675 .cfi_offset 14, -4
|
||
1676 0002 0D46 mov r5, r1
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1677 .loc 1 3221 2 is_stmt 1 view .LVU501
|
||
1678 .LVL179:
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1679 .loc 1 3224 2 view .LVU502
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1680 .loc 1 3224 5 is_stmt 0 view .LVU503
|
||
1681 0004 0446 mov r4, r0
|
||
1682 0006 98B1 cbz r0, .L149
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1683 .loc 1 3224 16 discriminator 1 view .LVU504
|
||
1684 0008 0368 ldr r3, [r0]
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1685 .loc 1 3224 10 discriminator 1 view .LVU505
|
||
1686 000a 9BB1 cbz r3, .L150
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1687 .loc 1 3224 31 discriminator 2 view .LVU506
|
||
1688 000c 1A78 ldrb r2, [r3] @ zero_extendqisi2
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1689 .loc 1 3224 21 discriminator 2 view .LVU507
|
||
ARM GAS /tmp/ccH7dUYB.s page 138
|
||
|
||
|
||
1690 000e A2B1 cbz r2, .L151
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1691 .loc 1 3224 47 discriminator 3 view .LVU508
|
||
1692 0010 8188 ldrh r1, [r0, #4]
|
||
1693 .LVL180:
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1694 .loc 1 3224 62 discriminator 3 view .LVU509
|
||
1695 0012 DA88 ldrh r2, [r3, #6]
|
||
3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT
|
||
1696 .loc 1 3224 41 discriminator 3 view .LVU510
|
||
1697 0014 9142 cmp r1, r2
|
||
1698 0016 03D0 beq .L155
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1699 .loc 1 3221 10 view .LVU511
|
||
1700 0018 0920 movs r0, #9
|
||
1701 .LVL181:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1702 .loc 1 3241 33 discriminator 2 view .LVU512
|
||
1703 001a 0024 movs r4, #0
|
||
1704 .LVL182:
|
||
1705 .L148:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1706 .loc 1 3241 6 discriminator 4 view .LVU513
|
||
1707 001c 2C60 str r4, [r5]
|
||
3242:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1708 .loc 1 3242 2 is_stmt 1 view .LVU514
|
||
3243:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1709 .loc 1 3243 1 is_stmt 0 view .LVU515
|
||
1710 001e 38BD pop {r3, r4, r5, pc}
|
||
1711 .LVL183:
|
||
1712 .L155:
|
||
3236:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
1713 .loc 1 3236 3 is_stmt 1 view .LVU516
|
||
3236:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
1714 .loc 1 3236 9 is_stmt 0 view .LVU517
|
||
1715 0020 5878 ldrb r0, [r3, #1] @ zero_extendqisi2
|
||
1716 .LVL184:
|
||
3236:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
1717 .loc 1 3236 9 view .LVU518
|
||
1718 0022 FFF7FEFF bl disk_status
|
||
1719 .LVL185:
|
||
3236:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
1720 .loc 1 3236 6 discriminator 1 view .LVU519
|
||
1721 0026 10F00100 ands r0, r0, #1
|
||
1722 002a 09D1 bne .L153
|
||
3237:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1723 .loc 1 3237 4 is_stmt 1 view .LVU520
|
||
1724 .LVL186:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1725 .loc 1 3241 2 view .LVU521
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1726 .loc 1 3241 33 is_stmt 0 discriminator 1 view .LVU522
|
||
1727 002c 2468 ldr r4, [r4]
|
||
1728 .LVL187:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1729 .loc 1 3241 33 discriminator 1 view .LVU523
|
||
1730 002e F5E7 b .L148
|
||
ARM GAS /tmp/ccH7dUYB.s page 139
|
||
|
||
|
||
1731 .LVL188:
|
||
1732 .L149:
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1733 .loc 1 3221 10 view .LVU524
|
||
1734 0030 0920 movs r0, #9
|
||
1735 .LVL189:
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1736 .loc 1 3221 10 view .LVU525
|
||
1737 0032 F3E7 b .L148
|
||
1738 .LVL190:
|
||
1739 .L150:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1740 .loc 1 3241 33 discriminator 2 view .LVU526
|
||
1741 0034 1C46 mov r4, r3
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1742 .loc 1 3221 10 view .LVU527
|
||
1743 0036 0920 movs r0, #9
|
||
1744 .LVL191:
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1745 .loc 1 3221 10 view .LVU528
|
||
1746 0038 F0E7 b .L148
|
||
1747 .LVL192:
|
||
1748 .L151:
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1749 .loc 1 3221 10 view .LVU529
|
||
1750 003a 0920 movs r0, #9
|
||
1751 .LVL193:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1752 .loc 1 3241 33 discriminator 2 view .LVU530
|
||
1753 003c 0024 movs r4, #0
|
||
1754 .LVL194:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1755 .loc 1 3241 33 discriminator 2 view .LVU531
|
||
1756 003e EDE7 b .L148
|
||
1757 .LVL195:
|
||
1758 .L153:
|
||
3221:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1759 .loc 1 3221 10 view .LVU532
|
||
1760 0040 0920 movs r0, #9
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1761 .loc 1 3241 33 discriminator 2 view .LVU533
|
||
1762 0042 0024 movs r4, #0
|
||
1763 .LVL196:
|
||
3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
1764 .loc 1 3241 33 discriminator 2 view .LVU534
|
||
1765 0044 EAE7 b .L148
|
||
1766 .cfi_endproc
|
||
1767 .LFE1220:
|
||
1769 .section .text.sync_window,"ax",%progbits
|
||
1770 .align 1
|
||
1771 .syntax unified
|
||
1772 .thumb
|
||
1773 .thumb_func
|
||
1775 sync_window:
|
||
1776 .LVL197:
|
||
1777 .LFB1196:
|
||
886:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD wsect;
|
||
ARM GAS /tmp/ccH7dUYB.s page 140
|
||
|
||
|
||
1778 .loc 1 886 1 is_stmt 1 view -0
|
||
1779 .cfi_startproc
|
||
1780 @ args = 0, pretend = 0, frame = 0
|
||
1781 @ frame_needed = 0, uses_anonymous_args = 0
|
||
886:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD wsect;
|
||
1782 .loc 1 886 1 is_stmt 0 view .LVU536
|
||
1783 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
|
||
1784 .LCFI15:
|
||
1785 .cfi_def_cfa_offset 24
|
||
1786 .cfi_offset 4, -24
|
||
1787 .cfi_offset 5, -20
|
||
1788 .cfi_offset 6, -16
|
||
1789 .cfi_offset 7, -12
|
||
1790 .cfi_offset 8, -8
|
||
1791 .cfi_offset 14, -4
|
||
887:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nf;
|
||
1792 .loc 1 887 2 is_stmt 1 view .LVU537
|
||
888:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
1793 .loc 1 888 2 view .LVU538
|
||
889:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1794 .loc 1 889 2 view .LVU539
|
||
1795 .LVL198:
|
||
892:Middlewares/Third_Party/FatFs/src/ff.c **** wsect = fs->winsect; /* Current sector number */
|
||
1796 .loc 1 892 2 view .LVU540
|
||
892:Middlewares/Third_Party/FatFs/src/ff.c **** wsect = fs->winsect; /* Current sector number */
|
||
1797 .loc 1 892 8 is_stmt 0 view .LVU541
|
||
1798 0004 C578 ldrb r5, [r0, #3] @ zero_extendqisi2
|
||
892:Middlewares/Third_Party/FatFs/src/ff.c **** wsect = fs->winsect; /* Current sector number */
|
||
1799 .loc 1 892 5 view .LVU542
|
||
1800 0006 15B9 cbnz r5, .L162
|
||
1801 .LVL199:
|
||
1802 .L157:
|
||
906:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1803 .loc 1 906 2 is_stmt 1 view .LVU543
|
||
907:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1804 .loc 1 907 1 is_stmt 0 view .LVU544
|
||
1805 0008 2846 mov r0, r5
|
||
1806 000a BDE8F081 pop {r4, r5, r6, r7, r8, pc}
|
||
1807 .LVL200:
|
||
1808 .L162:
|
||
907:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1809 .loc 1 907 1 view .LVU545
|
||
1810 000e 0446 mov r4, r0
|
||
893:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fs->win, wsect, 1) != RES_OK) {
|
||
1811 .loc 1 893 3 is_stmt 1 view .LVU546
|
||
893:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fs->win, wsect, 1) != RES_OK) {
|
||
1812 .loc 1 893 9 is_stmt 0 view .LVU547
|
||
1813 0010 076B ldr r7, [r0, #48]
|
||
1814 .LVL201:
|
||
894:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
1815 .loc 1 894 3 is_stmt 1 view .LVU548
|
||
894:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
1816 .loc 1 894 29 is_stmt 0 view .LVU549
|
||
1817 0012 00F13408 add r8, r0, #52
|
||
894:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
1818 .loc 1 894 7 view .LVU550
|
||
1819 0016 0123 movs r3, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 141
|
||
|
||
|
||
1820 0018 3A46 mov r2, r7
|
||
1821 001a 4146 mov r1, r8
|
||
1822 001c 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
1823 .LVL202:
|
||
894:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
1824 .loc 1 894 7 view .LVU551
|
||
1825 001e FFF7FEFF bl disk_write
|
||
1826 .LVL203:
|
||
894:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
1827 .loc 1 894 6 discriminator 1 view .LVU552
|
||
1828 0022 0546 mov r5, r0
|
||
1829 0024 A0B9 cbnz r0, .L160
|
||
897:Middlewares/Third_Party/FatFs/src/ff.c **** if (wsect - fs->fatbase < fs->fsize) { /* Is it in the FAT area? */
|
||
1830 .loc 1 897 4 is_stmt 1 view .LVU553
|
||
897:Middlewares/Third_Party/FatFs/src/ff.c **** if (wsect - fs->fatbase < fs->fsize) { /* Is it in the FAT area? */
|
||
1831 .loc 1 897 14 is_stmt 0 view .LVU554
|
||
1832 0026 0023 movs r3, #0
|
||
1833 0028 E370 strb r3, [r4, #3]
|
||
898:Middlewares/Third_Party/FatFs/src/ff.c **** for (nf = fs->n_fats; nf >= 2; nf--) { /* Reflect the change to all FAT copies */
|
||
1834 .loc 1 898 4 is_stmt 1 view .LVU555
|
||
898:Middlewares/Third_Party/FatFs/src/ff.c **** for (nf = fs->n_fats; nf >= 2; nf--) { /* Reflect the change to all FAT copies */
|
||
1835 .loc 1 898 18 is_stmt 0 view .LVU556
|
||
1836 002a 636A ldr r3, [r4, #36]
|
||
898:Middlewares/Third_Party/FatFs/src/ff.c **** for (nf = fs->n_fats; nf >= 2; nf--) { /* Reflect the change to all FAT copies */
|
||
1837 .loc 1 898 14 view .LVU557
|
||
1838 002c FB1A subs r3, r7, r3
|
||
898:Middlewares/Third_Party/FatFs/src/ff.c **** for (nf = fs->n_fats; nf >= 2; nf--) { /* Reflect the change to all FAT copies */
|
||
1839 .loc 1 898 32 view .LVU558
|
||
1840 002e E269 ldr r2, [r4, #28]
|
||
898:Middlewares/Third_Party/FatFs/src/ff.c **** for (nf = fs->n_fats; nf >= 2; nf--) { /* Reflect the change to all FAT copies */
|
||
1841 .loc 1 898 7 view .LVU559
|
||
1842 0030 9342 cmp r3, r2
|
||
1843 0032 E9D2 bcs .L157
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
1844 .loc 1 899 5 is_stmt 1 view .LVU560
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
1845 .loc 1 899 17 is_stmt 0 view .LVU561
|
||
1846 0034 A678 ldrb r6, [r4, #2] @ zero_extendqisi2
|
||
1847 .LVL204:
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
1848 .loc 1 899 5 view .LVU562
|
||
1849 0036 08E0 b .L158
|
||
1850 .L159:
|
||
900:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, wsect, 1);
|
||
1851 .loc 1 900 6 is_stmt 1 view .LVU563
|
||
900:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, wsect, 1);
|
||
1852 .loc 1 900 17 is_stmt 0 view .LVU564
|
||
1853 0038 E369 ldr r3, [r4, #28]
|
||
900:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, wsect, 1);
|
||
1854 .loc 1 900 12 view .LVU565
|
||
1855 003a 1F44 add r7, r7, r3
|
||
1856 .LVL205:
|
||
901:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1857 .loc 1 901 6 is_stmt 1 view .LVU566
|
||
1858 003c 0123 movs r3, #1
|
||
1859 003e 3A46 mov r2, r7
|
||
1860 0040 4146 mov r1, r8
|
||
ARM GAS /tmp/ccH7dUYB.s page 142
|
||
|
||
|
||
1861 0042 6078 ldrb r0, [r4, #1] @ zero_extendqisi2
|
||
1862 0044 FFF7FEFF bl disk_write
|
||
1863 .LVL206:
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
1864 .loc 1 899 38 discriminator 3 view .LVU567
|
||
1865 0048 013E subs r6, r6, #1
|
||
1866 .LVL207:
|
||
1867 .L158:
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
1868 .loc 1 899 30 discriminator 1 view .LVU568
|
||
1869 004a 012E cmp r6, #1
|
||
1870 004c F4D8 bhi .L159
|
||
899:Middlewares/Third_Party/FatFs/src/ff.c **** wsect += fs->fsize;
|
||
1871 .loc 1 899 30 is_stmt 0 discriminator 1 view .LVU569
|
||
1872 004e DBE7 b .L157
|
||
1873 .LVL208:
|
||
1874 .L160:
|
||
895:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
1875 .loc 1 895 8 view .LVU570
|
||
1876 0050 0125 movs r5, #1
|
||
1877 0052 D9E7 b .L157
|
||
1878 .cfi_endproc
|
||
1879 .LFE1196:
|
||
1881 .section .text.move_window,"ax",%progbits
|
||
1882 .align 1
|
||
1883 .syntax unified
|
||
1884 .thumb
|
||
1885 .thumb_func
|
||
1887 move_window:
|
||
1888 .LVL209:
|
||
1889 .LFB1197:
|
||
916:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
1890 .loc 1 916 1 is_stmt 1 view -0
|
||
1891 .cfi_startproc
|
||
1892 @ args = 0, pretend = 0, frame = 0
|
||
1893 @ frame_needed = 0, uses_anonymous_args = 0
|
||
916:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
1894 .loc 1 916 1 is_stmt 0 view .LVU572
|
||
1895 0000 70B5 push {r4, r5, r6, lr}
|
||
1896 .LCFI16:
|
||
1897 .cfi_def_cfa_offset 16
|
||
1898 .cfi_offset 4, -16
|
||
1899 .cfi_offset 5, -12
|
||
1900 .cfi_offset 6, -8
|
||
1901 .cfi_offset 14, -4
|
||
917:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1902 .loc 1 917 2 is_stmt 1 view .LVU573
|
||
1903 .LVL210:
|
||
920:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1904 .loc 1 920 2 view .LVU574
|
||
920:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1905 .loc 1 920 18 is_stmt 0 view .LVU575
|
||
1906 0002 036B ldr r3, [r0, #48]
|
||
920:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
1907 .loc 1 920 5 view .LVU576
|
||
1908 0004 8B42 cmp r3, r1
|
||
1909 0006 02D1 bne .L169
|
||
ARM GAS /tmp/ccH7dUYB.s page 143
|
||
|
||
|
||
917:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1910 .loc 1 917 10 view .LVU577
|
||
1911 0008 0026 movs r6, #0
|
||
1912 .LVL211:
|
||
1913 .L164:
|
||
932:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1914 .loc 1 932 2 is_stmt 1 view .LVU578
|
||
933:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1915 .loc 1 933 1 is_stmt 0 view .LVU579
|
||
1916 000a 3046 mov r0, r6
|
||
1917 000c 70BD pop {r4, r5, r6, pc}
|
||
1918 .LVL212:
|
||
1919 .L169:
|
||
933:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1920 .loc 1 933 1 view .LVU580
|
||
1921 000e 0446 mov r4, r0
|
||
1922 0010 0D46 mov r5, r1
|
||
922:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1923 .loc 1 922 3 is_stmt 1 view .LVU581
|
||
922:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
1924 .loc 1 922 9 is_stmt 0 view .LVU582
|
||
1925 0012 FFF7FEFF bl sync_window
|
||
1926 .LVL213:
|
||
924:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fs->win, sector, 1) != RES_OK) {
|
||
1927 .loc 1 924 3 is_stmt 1 view .LVU583
|
||
924:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fs->win, sector, 1) != RES_OK) {
|
||
1928 .loc 1 924 6 is_stmt 0 view .LVU584
|
||
1929 0016 0646 mov r6, r0
|
||
1930 0018 0028 cmp r0, #0
|
||
1931 001a F6D1 bne .L164
|
||
925:Middlewares/Third_Party/FatFs/src/ff.c **** sector = 0xFFFFFFFF; /* Invalidate window if data is not reliable */
|
||
1932 .loc 1 925 4 is_stmt 1 view .LVU585
|
||
925:Middlewares/Third_Party/FatFs/src/ff.c **** sector = 0xFFFFFFFF; /* Invalidate window if data is not reliable */
|
||
1933 .loc 1 925 8 is_stmt 0 view .LVU586
|
||
1934 001c 0123 movs r3, #1
|
||
1935 001e 2A46 mov r2, r5
|
||
1936 0020 04F13401 add r1, r4, #52
|
||
1937 0024 6078 ldrb r0, [r4, #1] @ zero_extendqisi2
|
||
1938 .LVL214:
|
||
925:Middlewares/Third_Party/FatFs/src/ff.c **** sector = 0xFFFFFFFF; /* Invalidate window if data is not reliable */
|
||
1939 .loc 1 925 8 view .LVU587
|
||
1940 0026 FFF7FEFF bl disk_read
|
||
1941 .LVL215:
|
||
925:Middlewares/Third_Party/FatFs/src/ff.c **** sector = 0xFFFFFFFF; /* Invalidate window if data is not reliable */
|
||
1942 .loc 1 925 7 discriminator 1 view .LVU588
|
||
1943 002a 10B1 cbz r0, .L165
|
||
927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1944 .loc 1 927 9 view .LVU589
|
||
1945 002c 0126 movs r6, #1
|
||
1946 .LVL216:
|
||
926:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
1947 .loc 1 926 12 view .LVU590
|
||
1948 002e 4FF0FF35 mov r5, #-1
|
||
1949 .LVL217:
|
||
1950 .L165:
|
||
929:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1951 .loc 1 929 4 is_stmt 1 view .LVU591
|
||
ARM GAS /tmp/ccH7dUYB.s page 144
|
||
|
||
|
||
929:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
1952 .loc 1 929 16 is_stmt 0 view .LVU592
|
||
1953 0032 2563 str r5, [r4, #48]
|
||
1954 0034 E9E7 b .L164
|
||
1955 .cfi_endproc
|
||
1956 .LFE1197:
|
||
1958 .section .text.check_fs,"ax",%progbits
|
||
1959 .align 1
|
||
1960 .syntax unified
|
||
1961 .thumb
|
||
1962 .thumb_func
|
||
1964 check_fs:
|
||
1965 .LVL218:
|
||
1966 .LFB1218:
|
||
2969:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 0; fs->winsect = 0xFFFFFFFF; /* Invaidate window */
|
||
1967 .loc 1 2969 1 is_stmt 1 view -0
|
||
1968 .cfi_startproc
|
||
1969 @ args = 0, pretend = 0, frame = 0
|
||
1970 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2969:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 0; fs->winsect = 0xFFFFFFFF; /* Invaidate window */
|
||
1971 .loc 1 2969 1 is_stmt 0 view .LVU594
|
||
1972 0000 38B5 push {r3, r4, r5, lr}
|
||
1973 .LCFI17:
|
||
1974 .cfi_def_cfa_offset 16
|
||
1975 .cfi_offset 3, -16
|
||
1976 .cfi_offset 4, -12
|
||
1977 .cfi_offset 5, -8
|
||
1978 .cfi_offset 14, -4
|
||
1979 0002 0446 mov r4, r0
|
||
2970:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect) != FR_OK) return 4; /* Load boot record */
|
||
1980 .loc 1 2970 2 is_stmt 1 view .LVU595
|
||
2970:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect) != FR_OK) return 4; /* Load boot record */
|
||
1981 .loc 1 2970 12 is_stmt 0 view .LVU596
|
||
1982 0004 0023 movs r3, #0
|
||
1983 0006 C370 strb r3, [r0, #3]
|
||
2970:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect) != FR_OK) return 4; /* Load boot record */
|
||
1984 .loc 1 2970 17 is_stmt 1 view .LVU597
|
||
2970:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, sect) != FR_OK) return 4; /* Load boot record */
|
||
1985 .loc 1 2970 29 is_stmt 0 view .LVU598
|
||
1986 0008 4FF0FF33 mov r3, #-1
|
||
1987 000c 0363 str r3, [r0, #48]
|
||
2971:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1988 .loc 1 2971 2 is_stmt 1 view .LVU599
|
||
2971:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1989 .loc 1 2971 6 is_stmt 0 view .LVU600
|
||
1990 000e FFF7FEFF bl move_window
|
||
1991 .LVL219:
|
||
2971:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1992 .loc 1 2971 5 discriminator 1 view .LVU601
|
||
1993 0012 30BB cbnz r0, .L173
|
||
1994 0014 0546 mov r5, r0
|
||
2973:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1995 .loc 1 2973 2 is_stmt 1 view .LVU602
|
||
2973:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
1996 .loc 1 2973 6 is_stmt 0 view .LVU603
|
||
1997 0016 04F23220 addw r0, r4, #562
|
||
1998 001a FFF7FEFF bl ld_word
|
||
ARM GAS /tmp/ccH7dUYB.s page 145
|
||
|
||
|
||
1999 .LVL220:
|
||
2973:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2000 .loc 1 2973 5 discriminator 1 view .LVU604
|
||
2001 001e 4AF65523 movw r3, #43605
|
||
2002 0022 9842 cmp r0, r3
|
||
2003 0024 1FD1 bne .L174
|
||
2975:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string *
|
||
2004 .loc 1 2975 2 is_stmt 1 view .LVU605
|
||
2975:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string *
|
||
2005 .loc 1 2975 13 is_stmt 0 view .LVU606
|
||
2006 0026 94F83430 ldrb r3, [r4, #52] @ zero_extendqisi2
|
||
2975:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string *
|
||
2007 .loc 1 2975 5 view .LVU607
|
||
2008 002a E92B cmp r3, #233
|
||
2009 002c 07D0 beq .L172
|
||
2975:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string *
|
||
2010 .loc 1 2975 66 discriminator 1 view .LVU608
|
||
2011 002e 636B ldr r3, [r4, #52]
|
||
2012 0030 03F0FF13 and r3, r3, #16711935
|
||
2975:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string *
|
||
2013 .loc 1 2975 34 discriminator 1 view .LVU609
|
||
2014 0034 0D4A ldr r2, .L177
|
||
2015 0036 9342 cmp r3, r2
|
||
2016 0038 01D0 beq .L172
|
||
2982:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2017 .loc 1 2982 9 view .LVU610
|
||
2018 003a 0225 movs r5, #2
|
||
2019 003c 14E0 b .L171
|
||
2020 .L172:
|
||
2976:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_dword(fs->win + BS_FilSysType32) == 0x33544146) return 0; /* Check "FAT3" string */
|
||
2021 .loc 1 2976 3 is_stmt 1 view .LVU611
|
||
2976:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_dword(fs->win + BS_FilSysType32) == 0x33544146) return 0; /* Check "FAT3" string */
|
||
2022 .loc 1 2976 8 is_stmt 0 view .LVU612
|
||
2023 003e 04F16A00 add r0, r4, #106
|
||
2024 0042 FFF7FEFF bl ld_dword
|
||
2025 .LVL221:
|
||
2976:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_dword(fs->win + BS_FilSysType32) == 0x33544146) return 0; /* Check "FAT3" string */
|
||
2026 .loc 1 2976 42 discriminator 1 view .LVU613
|
||
2027 0046 20F07F40 bic r0, r0, #-16777216
|
||
2976:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_dword(fs->win + BS_FilSysType32) == 0x33544146) return 0; /* Check "FAT3" string */
|
||
2028 .loc 1 2976 6 discriminator 1 view .LVU614
|
||
2029 004a 094B ldr r3, .L177+4
|
||
2030 004c 9842 cmp r0, r3
|
||
2031 004e 0BD0 beq .L171
|
||
2977:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2032 .loc 1 2977 3 is_stmt 1 view .LVU615
|
||
2977:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2033 .loc 1 2977 7 is_stmt 0 view .LVU616
|
||
2034 0050 04F18600 add r0, r4, #134
|
||
2035 0054 FFF7FEFF bl ld_dword
|
||
2036 .LVL222:
|
||
2977:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2037 .loc 1 2977 6 discriminator 1 view .LVU617
|
||
2038 0058 064B ldr r3, .L177+8
|
||
2039 005a 9842 cmp r0, r3
|
||
2040 005c 04D0 beq .L171
|
||
2982:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 146
|
||
|
||
|
||
2041 .loc 1 2982 9 view .LVU618
|
||
2042 005e 0225 movs r5, #2
|
||
2043 0060 02E0 b .L171
|
||
2044 .L173:
|
||
2971:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2045 .loc 1 2971 45 discriminator 1 view .LVU619
|
||
2046 0062 0425 movs r5, #4
|
||
2047 0064 00E0 b .L171
|
||
2048 .L174:
|
||
2973:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2049 .loc 1 2973 51 discriminator 1 view .LVU620
|
||
2050 0066 0325 movs r5, #3
|
||
2051 .L171:
|
||
2983:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2052 .loc 1 2983 1 view .LVU621
|
||
2053 0068 2846 mov r0, r5
|
||
2054 006a 38BD pop {r3, r4, r5, pc}
|
||
2055 .LVL223:
|
||
2056 .L178:
|
||
2983:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2057 .loc 1 2983 1 view .LVU622
|
||
2058 .align 2
|
||
2059 .L177:
|
||
2060 006c EB009000 .word 9437419
|
||
2061 0070 46415400 .word 5521734
|
||
2062 0074 46415433 .word 861159750
|
||
2063 .cfi_endproc
|
||
2064 .LFE1218:
|
||
2066 .section .text.find_volume,"ax",%progbits
|
||
2067 .align 1
|
||
2068 .syntax unified
|
||
2069 .thumb
|
||
2070 .thumb_func
|
||
2072 find_volume:
|
||
2073 .LVL224:
|
||
2074 .LFB1219:
|
||
2998:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE fmt, *pt;
|
||
2075 .loc 1 2998 1 is_stmt 1 view -0
|
||
2076 .cfi_startproc
|
||
2077 @ args = 0, pretend = 0, frame = 24
|
||
2078 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2998:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE fmt, *pt;
|
||
2079 .loc 1 2998 1 is_stmt 0 view .LVU624
|
||
2080 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
2081 .LCFI18:
|
||
2082 .cfi_def_cfa_offset 36
|
||
2083 .cfi_offset 4, -36
|
||
2084 .cfi_offset 5, -32
|
||
2085 .cfi_offset 6, -28
|
||
2086 .cfi_offset 7, -24
|
||
2087 .cfi_offset 8, -20
|
||
2088 .cfi_offset 9, -16
|
||
2089 .cfi_offset 10, -12
|
||
2090 .cfi_offset 11, -8
|
||
2091 .cfi_offset 14, -4
|
||
2092 0004 87B0 sub sp, sp, #28
|
||
2093 .LCFI19:
|
||
ARM GAS /tmp/ccH7dUYB.s page 147
|
||
|
||
|
||
2094 .cfi_def_cfa_offset 64
|
||
2095 0006 0D46 mov r5, r1
|
||
2096 0008 1646 mov r6, r2
|
||
2999:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
2097 .loc 1 2999 2 is_stmt 1 view .LVU625
|
||
3000:Middlewares/Third_Party/FatFs/src/ff.c **** DSTATUS stat;
|
||
2098 .loc 1 3000 2 view .LVU626
|
||
3001:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD bsect, fasize, tsect, sysect, nclst, szbfat, br[4];
|
||
2099 .loc 1 3001 2 view .LVU627
|
||
3002:Middlewares/Third_Party/FatFs/src/ff.c **** WORD nrsv;
|
||
2100 .loc 1 3002 2 view .LVU628
|
||
3003:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
2101 .loc 1 3003 2 view .LVU629
|
||
3004:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
2102 .loc 1 3004 2 view .LVU630
|
||
3005:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2103 .loc 1 3005 2 view .LVU631
|
||
3009:Middlewares/Third_Party/FatFs/src/ff.c **** vol = get_ldnumber(path);
|
||
2104 .loc 1 3009 2 view .LVU632
|
||
3009:Middlewares/Third_Party/FatFs/src/ff.c **** vol = get_ldnumber(path);
|
||
2105 .loc 1 3009 7 is_stmt 0 view .LVU633
|
||
2106 000a 0023 movs r3, #0
|
||
2107 000c 0B60 str r3, [r1]
|
||
3010:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
2108 .loc 1 3010 2 is_stmt 1 view .LVU634
|
||
3010:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
2109 .loc 1 3010 8 is_stmt 0 view .LVU635
|
||
2110 000e FFF7FEFF bl get_ldnumber
|
||
2111 .LVL225:
|
||
3011:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2112 .loc 1 3011 2 is_stmt 1 view .LVU636
|
||
3011:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2113 .loc 1 3011 5 is_stmt 0 view .LVU637
|
||
2114 0012 071E subs r7, r0, #0
|
||
2115 0014 C0F26781 blt .L196
|
||
3014:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fs) return FR_NOT_ENABLED; /* Is the file system object available? */
|
||
2116 .loc 1 3014 2 is_stmt 1 view .LVU638
|
||
3014:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fs) return FR_NOT_ENABLED; /* Is the file system object available? */
|
||
2117 .loc 1 3014 5 is_stmt 0 view .LVU639
|
||
2118 0018 BE4B ldr r3, .L230
|
||
2119 001a 53F82740 ldr r4, [r3, r7, lsl #2]
|
||
2120 .LVL226:
|
||
3015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2121 .loc 1 3015 2 is_stmt 1 view .LVU640
|
||
3015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2122 .loc 1 3015 5 is_stmt 0 view .LVU641
|
||
2123 001e 002C cmp r4, #0
|
||
2124 0020 00F06681 beq .L197
|
||
3017:Middlewares/Third_Party/FatFs/src/ff.c **** *rfs = fs; /* Return pointer to the file system object */
|
||
2125 .loc 1 3017 14 is_stmt 1 view .LVU642
|
||
3018:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2126 .loc 1 3018 2 view .LVU643
|
||
3018:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2127 .loc 1 3018 7 is_stmt 0 view .LVU644
|
||
2128 0024 2C60 str r4, [r5]
|
||
3020:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type) { /* If the volume has been mounted */
|
||
2129 .loc 1 3020 2 is_stmt 1 view .LVU645
|
||
ARM GAS /tmp/ccH7dUYB.s page 148
|
||
|
||
|
||
3020:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type) { /* If the volume has been mounted */
|
||
2130 .loc 1 3020 7 is_stmt 0 view .LVU646
|
||
2131 0026 06F0FE06 and r6, r6, #254
|
||
2132 .LVL227:
|
||
3021:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_status(fs->drv);
|
||
2133 .loc 1 3021 2 is_stmt 1 view .LVU647
|
||
3021:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_status(fs->drv);
|
||
2134 .loc 1 3021 8 is_stmt 0 view .LVU648
|
||
2135 002a 2378 ldrb r3, [r4] @ zero_extendqisi2
|
||
3021:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_status(fs->drv);
|
||
2136 .loc 1 3021 5 view .LVU649
|
||
2137 002c 73B1 cbz r3, .L181
|
||
3022:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(stat & STA_NOINIT)) { /* and the physical drive is kept initialized */
|
||
2138 .loc 1 3022 3 is_stmt 1 view .LVU650
|
||
3022:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(stat & STA_NOINIT)) { /* and the physical drive is kept initialized */
|
||
2139 .loc 1 3022 10 is_stmt 0 view .LVU651
|
||
2140 002e 6078 ldrb r0, [r4, #1] @ zero_extendqisi2
|
||
2141 .LVL228:
|
||
3022:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(stat & STA_NOINIT)) { /* and the physical drive is kept initialized */
|
||
2142 .loc 1 3022 10 view .LVU652
|
||
2143 0030 FFF7FEFF bl disk_status
|
||
2144 .LVL229:
|
||
3023:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_READONLY && mode && (stat & STA_PROTECT)) { /* Check write protection if needed */
|
||
2145 .loc 1 3023 3 is_stmt 1 view .LVU653
|
||
3023:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_READONLY && mode && (stat & STA_PROTECT)) { /* Check write protection if needed */
|
||
2146 .loc 1 3023 6 is_stmt 0 view .LVU654
|
||
2147 0034 10F00105 ands r5, r0, #1
|
||
2148 .LVL230:
|
||
3023:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_READONLY && mode && (stat & STA_PROTECT)) { /* Check write protection if needed */
|
||
2149 .loc 1 3023 6 view .LVU655
|
||
2150 0038 08D1 bne .L181
|
||
3024:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
2151 .loc 1 3024 4 is_stmt 1 view .LVU656
|
||
3024:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
2152 .loc 1 3024 7 is_stmt 0 view .LVU657
|
||
2153 003a 002E cmp r6, #0
|
||
2154 003c 00F05481 beq .L180
|
||
3024:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
2155 .loc 1 3024 30 discriminator 1 view .LVU658
|
||
2156 0040 10F0040F tst r0, #4
|
||
2157 0044 00F05081 beq .L180
|
||
3025:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2158 .loc 1 3025 12 view .LVU659
|
||
2159 0048 0A25 movs r5, #10
|
||
2160 004a 4DE1 b .L180
|
||
2161 .LVL231:
|
||
2162 .L181:
|
||
3034:Middlewares/Third_Party/FatFs/src/ff.c **** fs->drv = LD2PD(vol); /* Bind the logical drive and a physical drive */
|
||
2163 .loc 1 3034 2 is_stmt 1 view .LVU660
|
||
3034:Middlewares/Third_Party/FatFs/src/ff.c **** fs->drv = LD2PD(vol); /* Bind the logical drive and a physical drive */
|
||
2164 .loc 1 3034 14 is_stmt 0 view .LVU661
|
||
2165 004c 0023 movs r3, #0
|
||
2166 004e 2370 strb r3, [r4]
|
||
3035:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(fs->drv); /* Initialize the physical drive */
|
||
2167 .loc 1 3035 2 is_stmt 1 view .LVU662
|
||
3035:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(fs->drv); /* Initialize the physical drive */
|
||
2168 .loc 1 3035 12 is_stmt 0 view .LVU663
|
||
ARM GAS /tmp/ccH7dUYB.s page 149
|
||
|
||
|
||
2169 0050 F8B2 uxtb r0, r7
|
||
3035:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(fs->drv); /* Initialize the physical drive */
|
||
2170 .loc 1 3035 10 view .LVU664
|
||
2171 0052 6070 strb r0, [r4, #1]
|
||
3036:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) { /* Check if the initialization succeeded */
|
||
2172 .loc 1 3036 2 is_stmt 1 view .LVU665
|
||
3036:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) { /* Check if the initialization succeeded */
|
||
2173 .loc 1 3036 9 is_stmt 0 view .LVU666
|
||
2174 0054 FFF7FEFF bl disk_initialize
|
||
2175 .LVL232:
|
||
3037:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_NOT_READY; /* Failed to initialize due to no medium or hard error */
|
||
2176 .loc 1 3037 2 is_stmt 1 view .LVU667
|
||
3037:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_NOT_READY; /* Failed to initialize due to no medium or hard error */
|
||
2177 .loc 1 3037 5 is_stmt 0 view .LVU668
|
||
2178 0058 10F0010F tst r0, #1
|
||
2179 005c 40F04A81 bne .L199
|
||
3040:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
2180 .loc 1 3040 2 is_stmt 1 view .LVU669
|
||
3040:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
2181 .loc 1 3040 5 is_stmt 0 view .LVU670
|
||
2182 0060 1EB1 cbz r6, .L182
|
||
3040:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_WRITE_PROTECTED;
|
||
2183 .loc 1 3040 28 discriminator 1 view .LVU671
|
||
2184 0062 10F0040F tst r0, #4
|
||
2185 0066 40F04781 bne .L200
|
||
2186 .L182:
|
||
3044:Middlewares/Third_Party/FatFs/src/ff.c **** if (SS(fs) > _MAX_SS || SS(fs) < _MIN_SS || (SS(fs) & (SS(fs) - 1))) return FR_DISK_ERR;
|
||
2187 .loc 1 3044 2 is_stmt 1 view .LVU672
|
||
3044:Middlewares/Third_Party/FatFs/src/ff.c **** if (SS(fs) > _MAX_SS || SS(fs) < _MIN_SS || (SS(fs) & (SS(fs) - 1))) return FR_DISK_ERR;
|
||
2188 .loc 1 3044 6 is_stmt 0 view .LVU673
|
||
2189 006a 04F10C02 add r2, r4, #12
|
||
2190 006e 0221 movs r1, #2
|
||
2191 0070 6078 ldrb r0, [r4, #1] @ zero_extendqisi2
|
||
2192 .LVL233:
|
||
3044:Middlewares/Third_Party/FatFs/src/ff.c **** if (SS(fs) > _MAX_SS || SS(fs) < _MIN_SS || (SS(fs) & (SS(fs) - 1))) return FR_DISK_ERR;
|
||
2193 .loc 1 3044 6 view .LVU674
|
||
2194 0072 FFF7FEFF bl disk_ioctl
|
||
2195 .LVL234:
|
||
3044:Middlewares/Third_Party/FatFs/src/ff.c **** if (SS(fs) > _MAX_SS || SS(fs) < _MIN_SS || (SS(fs) & (SS(fs) - 1))) return FR_DISK_ERR;
|
||
2196 .loc 1 3044 5 discriminator 1 view .LVU675
|
||
2197 0076 0546 mov r5, r0
|
||
2198 0078 0028 cmp r0, #0
|
||
2199 007a 40F03F81 bne .L201
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2200 .loc 1 3045 2 is_stmt 1 view .LVU676
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2201 .loc 1 3045 6 is_stmt 0 view .LVU677
|
||
2202 007e A289 ldrh r2, [r4, #12]
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2203 .loc 1 3045 23 view .LVU678
|
||
2204 0080 A2F50073 sub r3, r2, #512
|
||
2205 0084 9BB2 uxth r3, r3
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2206 .loc 1 3045 5 view .LVU679
|
||
2207 0086 B3F5606F cmp r3, #3584
|
||
2208 008a 00F23981 bhi .L202
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
ARM GAS /tmp/ccH7dUYB.s page 150
|
||
|
||
|
||
2209 .loc 1 3045 64 discriminator 2 view .LVU680
|
||
2210 008e 531E subs r3, r2, #1
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2211 .loc 1 3045 43 discriminator 2 view .LVU681
|
||
2212 0090 1A42 tst r2, r3
|
||
2213 0092 01D0 beq .L224
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2214 .loc 1 3045 78 discriminator 3 view .LVU682
|
||
2215 0094 0125 movs r5, #1
|
||
2216 0096 27E1 b .L180
|
||
2217 .L224:
|
||
3049:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = check_fs(fs, bsect); /* Load sector 0 and check if it is an FAT-VBR as SFD */
|
||
2218 .loc 1 3049 2 is_stmt 1 view .LVU683
|
||
2219 .LVL235:
|
||
3050:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == 2 || (fmt < 2 && LD2PT(vol) != 0)) { /* Not an FAT-VBR or forced partition number */
|
||
2220 .loc 1 3050 2 view .LVU684
|
||
3050:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == 2 || (fmt < 2 && LD2PT(vol) != 0)) { /* Not an FAT-VBR or forced partition number */
|
||
2221 .loc 1 3050 8 is_stmt 0 view .LVU685
|
||
2222 0098 0021 movs r1, #0
|
||
2223 009a 2046 mov r0, r4
|
||
2224 009c FFF7FEFF bl check_fs
|
||
2225 .LVL236:
|
||
3051:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < 4; i++) { /* Get partition offset */
|
||
2226 .loc 1 3051 2 is_stmt 1 view .LVU686
|
||
3051:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < 4; i++) { /* Get partition offset */
|
||
2227 .loc 1 3051 5 is_stmt 0 view .LVU687
|
||
2228 00a0 0228 cmp r0, #2
|
||
2229 00a2 00F08880 beq .L204
|
||
3049:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = check_fs(fs, bsect); /* Load sector 0 and check if it is an FAT-VBR as SFD */
|
||
2230 .loc 1 3049 8 view .LVU688
|
||
2231 00a6 0026 movs r6, #0
|
||
2232 .LVL237:
|
||
2233 .L184:
|
||
3063:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt >= 2) return FR_NO_FILESYSTEM; /* No FAT volume is found */
|
||
2234 .loc 1 3063 2 is_stmt 1 view .LVU689
|
||
3063:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt >= 2) return FR_NO_FILESYSTEM; /* No FAT volume is found */
|
||
2235 .loc 1 3063 5 is_stmt 0 view .LVU690
|
||
2236 00a8 0428 cmp r0, #4
|
||
2237 00aa 00F02B81 beq .L207
|
||
3064:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2238 .loc 1 3064 2 is_stmt 1 view .LVU691
|
||
3064:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2239 .loc 1 3064 5 is_stmt 0 view .LVU692
|
||
2240 00ae 0128 cmp r0, #1
|
||
2241 00b0 00F22A81 bhi .L208
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2242 .loc 1 3116 3 is_stmt 1 view .LVU693
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2243 .loc 1 3116 7 is_stmt 0 view .LVU694
|
||
2244 00b4 04F13F00 add r0, r4, #63
|
||
2245 .LVL238:
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2246 .loc 1 3116 7 view .LVU695
|
||
2247 00b8 FFF7FEFF bl ld_word
|
||
2248 .LVL239:
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2249 .loc 1 3116 44 discriminator 1 view .LVU696
|
||
ARM GAS /tmp/ccH7dUYB.s page 151
|
||
|
||
|
||
2250 00bc B4F80C80 ldrh r8, [r4, #12]
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2251 .loc 1 3116 6 discriminator 1 view .LVU697
|
||
2252 00c0 4045 cmp r0, r8
|
||
2253 00c2 40F02381 bne .L209
|
||
3118:Middlewares/Third_Party/FatFs/src/ff.c **** if (fasize == 0) fasize = ld_dword(fs->win + BPB_FATSz32);
|
||
2254 .loc 1 3118 3 is_stmt 1 view .LVU698
|
||
3118:Middlewares/Third_Party/FatFs/src/ff.c **** if (fasize == 0) fasize = ld_dword(fs->win + BPB_FATSz32);
|
||
2255 .loc 1 3118 12 is_stmt 0 view .LVU699
|
||
2256 00c6 04F14A00 add r0, r4, #74
|
||
2257 00ca FFF7FEFF bl ld_word
|
||
2258 .LVL240:
|
||
3118:Middlewares/Third_Party/FatFs/src/ff.c **** if (fasize == 0) fasize = ld_dword(fs->win + BPB_FATSz32);
|
||
2259 .loc 1 3118 10 discriminator 1 view .LVU700
|
||
2260 00ce 0746 mov r7, r0
|
||
2261 .LVL241:
|
||
3119:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = fasize;
|
||
2262 .loc 1 3119 3 is_stmt 1 view .LVU701
|
||
3119:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = fasize;
|
||
2263 .loc 1 3119 6 is_stmt 0 view .LVU702
|
||
2264 00d0 20B9 cbnz r0, .L189
|
||
3119:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = fasize;
|
||
2265 .loc 1 3119 20 is_stmt 1 discriminator 1 view .LVU703
|
||
3119:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = fasize;
|
||
2266 .loc 1 3119 29 is_stmt 0 discriminator 1 view .LVU704
|
||
2267 00d2 04F15800 add r0, r4, #88
|
||
2268 .LVL242:
|
||
3119:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsize = fasize;
|
||
2269 .loc 1 3119 29 discriminator 1 view .LVU705
|
||
2270 00d6 FFF7FEFF bl ld_dword
|
||
2271 .LVL243:
|
||
2272 00da 0746 mov r7, r0
|
||
2273 .LVL244:
|
||
2274 .L189:
|
||
3120:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2275 .loc 1 3120 3 is_stmt 1 view .LVU706
|
||
3120:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2276 .loc 1 3120 13 is_stmt 0 view .LVU707
|
||
2277 00dc E761 str r7, [r4, #28]
|
||
3122:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_fats != 1 && fs->n_fats != 2) return FR_NO_FILESYSTEM; /* (Must be 1 or 2) */
|
||
2278 .loc 1 3122 3 is_stmt 1 view .LVU708
|
||
3122:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_fats != 1 && fs->n_fats != 2) return FR_NO_FILESYSTEM; /* (Must be 1 or 2) */
|
||
2279 .loc 1 3122 23 is_stmt 0 view .LVU709
|
||
2280 00de 94F84420 ldrb r2, [r4, #68] @ zero_extendqisi2
|
||
3122:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_fats != 1 && fs->n_fats != 2) return FR_NO_FILESYSTEM; /* (Must be 1 or 2) */
|
||
2281 .loc 1 3122 14 view .LVU710
|
||
2282 00e2 A270 strb r2, [r4, #2]
|
||
3123:Middlewares/Third_Party/FatFs/src/ff.c **** fasize *= fs->n_fats; /* Number of sectors for FAT area */
|
||
2283 .loc 1 3123 3 is_stmt 1 view .LVU711
|
||
3123:Middlewares/Third_Party/FatFs/src/ff.c **** fasize *= fs->n_fats; /* Number of sectors for FAT area */
|
||
2284 .loc 1 3123 23 is_stmt 0 view .LVU712
|
||
2285 00e4 531E subs r3, r2, #1
|
||
2286 00e6 DBB2 uxtb r3, r3
|
||
3123:Middlewares/Third_Party/FatFs/src/ff.c **** fasize *= fs->n_fats; /* Number of sectors for FAT area */
|
||
2287 .loc 1 3123 6 view .LVU713
|
||
2288 00e8 012B cmp r3, #1
|
||
2289 00ea 00F21181 bhi .L210
|
||
ARM GAS /tmp/ccH7dUYB.s page 152
|
||
|
||
|
||
3124:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2290 .loc 1 3124 3 is_stmt 1 view .LVU714
|
||
3124:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2291 .loc 1 3124 10 is_stmt 0 view .LVU715
|
||
2292 00ee 07FB02F3 mul r3, r7, r2
|
||
2293 00f2 0093 str r3, [sp]
|
||
2294 .LVL245:
|
||
3126:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->csize == 0 || (fs->csize & (fs->csize - 1))) return FR_NO_FILESYSTEM; /* (Must be power o
|
||
2295 .loc 1 3126 3 is_stmt 1 view .LVU716
|
||
3126:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->csize == 0 || (fs->csize & (fs->csize - 1))) return FR_NO_FILESYSTEM; /* (Must be power o
|
||
2296 .loc 1 3126 22 is_stmt 0 view .LVU717
|
||
2297 00f4 94F84190 ldrb r9, [r4, #65] @ zero_extendqisi2
|
||
3126:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->csize == 0 || (fs->csize & (fs->csize - 1))) return FR_NO_FILESYSTEM; /* (Must be power o
|
||
2298 .loc 1 3126 13 view .LVU718
|
||
2299 00f8 A4F80A90 strh r9, [r4, #10] @ movhi
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2300 .loc 1 3127 3 is_stmt 1 view .LVU719
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2301 .loc 1 3127 6 is_stmt 0 view .LVU720
|
||
2302 00fc B9F1000F cmp r9, #0
|
||
2303 0100 00F01081 beq .L211
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2304 .loc 1 3127 49 discriminator 2 view .LVU721
|
||
2305 0104 09F1FF33 add r3, r9, #-1
|
||
2306 .LVL246:
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2307 .loc 1 3127 22 discriminator 2 view .LVU722
|
||
2308 0108 19EA030F tst r9, r3
|
||
2309 010c 40F00C81 bne .L212
|
||
3129:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir % (SS(fs) / SZDIRE)) return FR_NO_FILESYSTEM; /* (Must be sector aligned) */
|
||
2310 .loc 1 3129 3 is_stmt 1 view .LVU723
|
||
3129:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir % (SS(fs) / SZDIRE)) return FR_NO_FILESYSTEM; /* (Must be sector aligned) */
|
||
2311 .loc 1 3129 19 is_stmt 0 view .LVU724
|
||
2312 0110 04F14500 add r0, r4, #69
|
||
2313 0114 FFF7FEFF bl ld_word
|
||
2314 .LVL247:
|
||
2315 0118 8246 mov r10, r0
|
||
3129:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir % (SS(fs) / SZDIRE)) return FR_NO_FILESYSTEM; /* (Must be sector aligned) */
|
||
2316 .loc 1 3129 17 discriminator 1 view .LVU725
|
||
2317 011a 2081 strh r0, [r4, #8] @ movhi
|
||
3130:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2318 .loc 1 3130 3 is_stmt 1 view .LVU726
|
||
3130:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2319 .loc 1 3130 7 is_stmt 0 view .LVU727
|
||
2320 011c 4FEA581B lsr fp, r8, #5
|
||
2321 0120 B0FBFBF3 udiv r3, r0, fp
|
||
2322 0124 0BFB1303 mls r3, fp, r3, r0
|
||
2323 0128 9BB2 uxth r3, r3
|
||
3130:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2324 .loc 1 3130 6 view .LVU728
|
||
2325 012a 002B cmp r3, #0
|
||
2326 012c 40F0FE80 bne .L213
|
||
3132:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect == 0) tsect = ld_dword(fs->win + BPB_TotSec32);
|
||
2327 .loc 1 3132 3 is_stmt 1 view .LVU729
|
||
3132:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect == 0) tsect = ld_dword(fs->win + BPB_TotSec32);
|
||
2328 .loc 1 3132 11 is_stmt 0 view .LVU730
|
||
2329 0130 04F14700 add r0, r4, #71
|
||
ARM GAS /tmp/ccH7dUYB.s page 153
|
||
|
||
|
||
2330 0134 FFF7FEFF bl ld_word
|
||
2331 .LVL248:
|
||
3132:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect == 0) tsect = ld_dword(fs->win + BPB_TotSec32);
|
||
2332 .loc 1 3132 9 discriminator 1 view .LVU731
|
||
2333 0138 0190 str r0, [sp, #4]
|
||
2334 .LVL249:
|
||
3133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2335 .loc 1 3133 3 is_stmt 1 view .LVU732
|
||
3133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2336 .loc 1 3133 6 is_stmt 0 view .LVU733
|
||
2337 013a 20B9 cbnz r0, .L190
|
||
3133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2338 .loc 1 3133 19 is_stmt 1 discriminator 1 view .LVU734
|
||
3133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2339 .loc 1 3133 27 is_stmt 0 discriminator 1 view .LVU735
|
||
2340 013c 04F15400 add r0, r4, #84
|
||
2341 .LVL250:
|
||
3133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2342 .loc 1 3133 27 discriminator 1 view .LVU736
|
||
2343 0140 FFF7FEFF bl ld_dword
|
||
2344 .LVL251:
|
||
2345 0144 0190 str r0, [sp, #4]
|
||
2346 .LVL252:
|
||
2347 .L190:
|
||
3135:Middlewares/Third_Party/FatFs/src/ff.c **** if (nrsv == 0) return FR_NO_FILESYSTEM; /* (Must not be 0) */
|
||
2348 .loc 1 3135 3 is_stmt 1 view .LVU737
|
||
3135:Middlewares/Third_Party/FatFs/src/ff.c **** if (nrsv == 0) return FR_NO_FILESYSTEM; /* (Must not be 0) */
|
||
2349 .loc 1 3135 10 is_stmt 0 view .LVU738
|
||
2350 0146 04F14200 add r0, r4, #66
|
||
2351 014a FFF7FEFF bl ld_word
|
||
2352 .LVL253:
|
||
3136:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2353 .loc 1 3136 3 is_stmt 1 view .LVU739
|
||
3136:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2354 .loc 1 3136 6 is_stmt 0 view .LVU740
|
||
2355 014e 0146 mov r1, r0
|
||
2356 0150 0028 cmp r0, #0
|
||
2357 0152 00F0ED80 beq .L214
|
||
3139:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect < sysect) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2358 .loc 1 3139 3 is_stmt 1 view .LVU741
|
||
3139:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect < sysect) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2359 .loc 1 3139 17 is_stmt 0 view .LVU742
|
||
2360 0156 009B ldr r3, [sp]
|
||
2361 0158 C318 adds r3, r0, r3
|
||
3139:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect < sysect) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2362 .loc 1 3139 42 view .LVU743
|
||
2363 015a BAFBFBFB udiv fp, r10, fp
|
||
3139:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect < sysect) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2364 .loc 1 3139 10 view .LVU744
|
||
2365 015e 5B44 add r3, r3, fp
|
||
2366 .LVL254:
|
||
3140:Middlewares/Third_Party/FatFs/src/ff.c **** nclst = (tsect - sysect) / fs->csize; /* Number of clusters */
|
||
2367 .loc 1 3140 3 is_stmt 1 view .LVU745
|
||
3140:Middlewares/Third_Party/FatFs/src/ff.c **** nclst = (tsect - sysect) / fs->csize; /* Number of clusters */
|
||
2368 .loc 1 3140 6 is_stmt 0 view .LVU746
|
||
2369 0160 019A ldr r2, [sp, #4]
|
||
2370 0162 9A42 cmp r2, r3
|
||
ARM GAS /tmp/ccH7dUYB.s page 154
|
||
|
||
|
||
2371 0164 C0F0E680 bcc .L215
|
||
3141:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst == 0) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2372 .loc 1 3141 3 is_stmt 1 view .LVU747
|
||
3141:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst == 0) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2373 .loc 1 3141 18 is_stmt 0 view .LVU748
|
||
2374 0168 D21A subs r2, r2, r3
|
||
3141:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst == 0) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
|
||
2375 .loc 1 3141 9 view .LVU749
|
||
2376 016a B2FBF9F0 udiv r0, r2, r9
|
||
2377 .LVL255:
|
||
3142:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32;
|
||
2378 .loc 1 3142 3 is_stmt 1 view .LVU750
|
||
3142:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32;
|
||
2379 .loc 1 3142 6 is_stmt 0 view .LVU751
|
||
2380 016e 4A45 cmp r2, r9
|
||
2381 0170 C0F0E280 bcc .L216
|
||
3143:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT16) fmt = FS_FAT16;
|
||
2382 .loc 1 3143 3 is_stmt 1 view .LVU752
|
||
2383 .LVL256:
|
||
3144:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT12) fmt = FS_FAT12;
|
||
2384 .loc 1 3144 3 view .LVU753
|
||
3144:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT12) fmt = FS_FAT12;
|
||
2385 .loc 1 3144 6 is_stmt 0 view .LVU754
|
||
2386 0174 4FF6F572 movw r2, #65525
|
||
2387 0178 9042 cmp r0, r2
|
||
2388 017a 34D8 bhi .L217
|
||
3144:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT12) fmt = FS_FAT12;
|
||
2389 .loc 1 3144 27 is_stmt 1 discriminator 1 view .LVU755
|
||
2390 .LVL257:
|
||
3145:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2391 .loc 1 3145 3 view .LVU756
|
||
3145:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2392 .loc 1 3145 6 is_stmt 0 view .LVU757
|
||
2393 017c 40F6F572 movw r2, #4085
|
||
2394 0180 9042 cmp r0, r2
|
||
2395 0182 6AD9 bls .L218
|
||
2396 0184 4FF0020B mov fp, #2
|
||
2397 0188 2FE0 b .L191
|
||
2398 .LVL258:
|
||
2399 .L205:
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2400 .loc 1 3054 54 discriminator 2 view .LVU758
|
||
2401 018a 0020 movs r0, #0
|
||
2402 .LVL259:
|
||
2403 .L185:
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2404 .loc 1 3054 10 discriminator 4 view .LVU759
|
||
2405 018c 06AB add r3, sp, #24
|
||
2406 018e 03EB8603 add r3, r3, r6, lsl #2
|
||
2407 0192 43F8100C str r0, [r3, #-16]
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
2408 .loc 1 3052 23 is_stmt 1 discriminator 2 view .LVU760
|
||
2409 0196 0136 adds r6, r6, #1
|
||
2410 .LVL260:
|
||
2411 .L183:
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
2412 .loc 1 3052 17 discriminator 1 view .LVU761
|
||
ARM GAS /tmp/ccH7dUYB.s page 155
|
||
|
||
|
||
2413 0198 032E cmp r6, #3
|
||
2414 019a 0ED8 bhi .L225
|
||
3053:Middlewares/Third_Party/FatFs/src/ff.c **** br[i] = pt[PTE_System] ? ld_dword(pt + PTE_StLba) : 0;
|
||
2415 .loc 1 3053 4 view .LVU762
|
||
3053:Middlewares/Third_Party/FatFs/src/ff.c **** br[i] = pt[PTE_System] ? ld_dword(pt + PTE_StLba) : 0;
|
||
2416 .loc 1 3053 9 is_stmt 0 view .LVU763
|
||
2417 019c 04F13400 add r0, r4, #52
|
||
3053:Middlewares/Third_Party/FatFs/src/ff.c **** br[i] = pt[PTE_System] ? ld_dword(pt + PTE_StLba) : 0;
|
||
2418 .loc 1 3053 34 view .LVU764
|
||
2419 01a0 3301 lsls r3, r6, #4
|
||
3053:Middlewares/Third_Party/FatFs/src/ff.c **** br[i] = pt[PTE_System] ? ld_dword(pt + PTE_StLba) : 0;
|
||
2420 .loc 1 3053 30 view .LVU765
|
||
2421 01a2 03F5DF73 add r3, r3, #446
|
||
3053:Middlewares/Third_Party/FatFs/src/ff.c **** br[i] = pt[PTE_System] ? ld_dword(pt + PTE_StLba) : 0;
|
||
2422 .loc 1 3053 7 view .LVU766
|
||
2423 01a6 1844 add r0, r0, r3
|
||
2424 .LVL261:
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2425 .loc 1 3054 4 is_stmt 1 view .LVU767
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2426 .loc 1 3054 14 is_stmt 0 view .LVU768
|
||
2427 01a8 0379 ldrb r3, [r0, #4] @ zero_extendqisi2
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2428 .loc 1 3054 54 view .LVU769
|
||
2429 01aa 002B cmp r3, #0
|
||
2430 01ac EDD0 beq .L205
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2431 .loc 1 3054 29 discriminator 1 view .LVU770
|
||
2432 01ae 0830 adds r0, r0, #8
|
||
2433 .LVL262:
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2434 .loc 1 3054 29 discriminator 1 view .LVU771
|
||
2435 01b0 FFF7FEFF bl ld_dword
|
||
2436 .LVL263:
|
||
3054:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2437 .loc 1 3054 29 discriminator 1 view .LVU772
|
||
2438 01b4 EAE7 b .L185
|
||
2439 .LVL264:
|
||
2440 .L204:
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
2441 .loc 1 3052 10 view .LVU773
|
||
2442 01b6 0026 movs r6, #0
|
||
2443 .LVL265:
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
2444 .loc 1 3052 10 view .LVU774
|
||
2445 01b8 EEE7 b .L183
|
||
2446 .LVL266:
|
||
2447 .L225:
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
2448 .loc 1 3052 10 view .LVU775
|
||
2449 01ba 0027 movs r7, #0
|
||
2450 .LVL267:
|
||
3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE);
|
||
2451 .loc 1 3052 10 view .LVU776
|
||
2452 01bc 0AE0 b .L188
|
||
2453 .LVL268:
|
||
2454 .L226:
|
||
ARM GAS /tmp/ccH7dUYB.s page 156
|
||
|
||
|
||
3060:Middlewares/Third_Party/FatFs/src/ff.c **** } while (LD2PT(vol) == 0 && fmt >= 2 && ++i < 4);
|
||
2455 .loc 1 3060 18 discriminator 1 view .LVU777
|
||
2456 01be 3146 mov r1, r6
|
||
2457 01c0 2046 mov r0, r4
|
||
2458 01c2 FFF7FEFF bl check_fs
|
||
2459 .LVL269:
|
||
3061:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2460 .loc 1 3061 40 is_stmt 1 view .LVU778
|
||
2461 01c6 0128 cmp r0, #1
|
||
2462 01c8 7FF66EAF bls .L184
|
||
2463 .LVL270:
|
||
2464 .L187:
|
||
3061:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2465 .loc 1 3061 40 is_stmt 0 discriminator 1 view .LVU779
|
||
2466 01cc 0137 adds r7, r7, #1
|
||
2467 .LVL271:
|
||
3061:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2468 .loc 1 3061 40 discriminator 1 view .LVU780
|
||
2469 01ce 032F cmp r7, #3
|
||
2470 01d0 3FF66AAF bhi .L184
|
||
2471 .LVL272:
|
||
2472 .L188:
|
||
3058:Middlewares/Third_Party/FatFs/src/ff.c **** bsect = br[i];
|
||
2473 .loc 1 3058 3 is_stmt 1 view .LVU781
|
||
3059:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = bsect ? check_fs(fs, bsect) : 3; /* Check the partition */
|
||
2474 .loc 1 3059 4 view .LVU782
|
||
3059:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = bsect ? check_fs(fs, bsect) : 3; /* Check the partition */
|
||
2475 .loc 1 3059 10 is_stmt 0 view .LVU783
|
||
2476 01d4 06AB add r3, sp, #24
|
||
2477 01d6 03EB8703 add r3, r3, r7, lsl #2
|
||
2478 01da 53F8106C ldr r6, [r3, #-16]
|
||
2479 .LVL273:
|
||
3060:Middlewares/Third_Party/FatFs/src/ff.c **** } while (LD2PT(vol) == 0 && fmt >= 2 && ++i < 4);
|
||
2480 .loc 1 3060 4 is_stmt 1 view .LVU784
|
||
3060:Middlewares/Third_Party/FatFs/src/ff.c **** } while (LD2PT(vol) == 0 && fmt >= 2 && ++i < 4);
|
||
2481 .loc 1 3060 8 is_stmt 0 view .LVU785
|
||
2482 01de 002E cmp r6, #0
|
||
2483 01e0 EDD1 bne .L226
|
||
3060:Middlewares/Third_Party/FatFs/src/ff.c **** } while (LD2PT(vol) == 0 && fmt >= 2 && ++i < 4);
|
||
2484 .loc 1 3060 8 discriminator 2 view .LVU786
|
||
2485 01e2 0320 movs r0, #3
|
||
2486 01e4 F2E7 b .L187
|
||
2487 .LVL274:
|
||
2488 .L217:
|
||
3143:Middlewares/Third_Party/FatFs/src/ff.c **** if (nclst <= MAX_FAT16) fmt = FS_FAT16;
|
||
2489 .loc 1 3143 7 view .LVU787
|
||
2490 01e6 4FF0030B mov fp, #3
|
||
2491 .LVL275:
|
||
2492 .L191:
|
||
3148:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect; /* Volume start sector */
|
||
2493 .loc 1 3148 3 is_stmt 1 view .LVU788
|
||
3148:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect; /* Volume start sector */
|
||
2494 .loc 1 3148 24 is_stmt 0 view .LVU789
|
||
2495 01ea 00F10209 add r9, r0, #2
|
||
3148:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect; /* Volume start sector */
|
||
2496 .loc 1 3148 16 view .LVU790
|
||
2497 01ee C4F81890 str r9, [r4, #24]
|
||
ARM GAS /tmp/ccH7dUYB.s page 157
|
||
|
||
|
||
3149:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fatbase = bsect + nrsv; /* FAT start sector */
|
||
2498 .loc 1 3149 3 is_stmt 1 view .LVU791
|
||
3149:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fatbase = bsect + nrsv; /* FAT start sector */
|
||
2499 .loc 1 3149 15 is_stmt 0 view .LVU792
|
||
2500 01f2 2662 str r6, [r4, #32]
|
||
3150:Middlewares/Third_Party/FatFs/src/ff.c **** fs->database = bsect + sysect; /* Data start sector */
|
||
2501 .loc 1 3150 3 is_stmt 1 view .LVU793
|
||
3150:Middlewares/Third_Party/FatFs/src/ff.c **** fs->database = bsect + sysect; /* Data start sector */
|
||
2502 .loc 1 3150 23 is_stmt 0 view .LVU794
|
||
2503 01f4 8A19 adds r2, r1, r6
|
||
3150:Middlewares/Third_Party/FatFs/src/ff.c **** fs->database = bsect + sysect; /* Data start sector */
|
||
2504 .loc 1 3150 15 view .LVU795
|
||
2505 01f6 6262 str r2, [r4, #36]
|
||
3151:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
2506 .loc 1 3151 3 is_stmt 1 view .LVU796
|
||
3151:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
2507 .loc 1 3151 24 is_stmt 0 view .LVU797
|
||
2508 01f8 3344 add r3, r3, r6
|
||
2509 .LVL276:
|
||
3151:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
2510 .loc 1 3151 16 view .LVU798
|
||
2511 01fa E362 str r3, [r4, #44]
|
||
3152:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BPB_FSVer32) != 0) return FR_NO_FILESYSTEM; /* (Must be FAT32 revision 0.0
|
||
2512 .loc 1 3152 3 is_stmt 1 view .LVU799
|
||
3152:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BPB_FSVer32) != 0) return FR_NO_FILESYSTEM; /* (Must be FAT32 revision 0.0
|
||
2513 .loc 1 3152 6 is_stmt 0 view .LVU800
|
||
2514 01fc BBF1030F cmp fp, #3
|
||
2515 0200 2ED0 beq .L227
|
||
3158:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = fs->fatbase + fasize; /* Root directory start sector */
|
||
2516 .loc 1 3158 4 is_stmt 1 view .LVU801
|
||
3158:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = fs->fatbase + fasize; /* Root directory start sector */
|
||
2517 .loc 1 3158 7 is_stmt 0 view .LVU802
|
||
2518 0202 BAF1000F cmp r10, #0
|
||
2519 0206 00F09D80 beq .L221
|
||
3159:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = (fmt == FS_FAT16) ? /* (Needed FAT size) */
|
||
2520 .loc 1 3159 4 is_stmt 1 view .LVU803
|
||
3159:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = (fmt == FS_FAT16) ? /* (Needed FAT size) */
|
||
2521 .loc 1 3159 30 is_stmt 0 view .LVU804
|
||
2522 020a 009B ldr r3, [sp]
|
||
2523 020c 1A44 add r2, r2, r3
|
||
3159:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = (fmt == FS_FAT16) ? /* (Needed FAT size) */
|
||
2524 .loc 1 3159 16 view .LVU805
|
||
2525 020e A262 str r2, [r4, #40]
|
||
3160:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fatent * 2 : fs->n_fatent * 3 / 2 + (fs->n_fatent & 1);
|
||
2526 .loc 1 3160 4 is_stmt 1 view .LVU806
|
||
3161:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2527 .loc 1 3161 22 is_stmt 0 view .LVU807
|
||
2528 0210 BBF1020F cmp fp, #2
|
||
2529 0214 35D0 beq .L228
|
||
3161:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2530 .loc 1 3161 37 discriminator 2 view .LVU808
|
||
2531 0216 09EB4902 add r2, r9, r9, lsl #1
|
||
3161:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2532 .loc 1 3161 61 discriminator 2 view .LVU809
|
||
2533 021a 09F00103 and r3, r9, #1
|
||
3161:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2534 .loc 1 3161 22 discriminator 2 view .LVU810
|
||
ARM GAS /tmp/ccH7dUYB.s page 158
|
||
|
||
|
||
2535 021e 03EB5203 add r3, r3, r2, lsr #1
|
||
2536 .LVL277:
|
||
2537 .L193:
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2538 .loc 1 3163 3 is_stmt 1 view .LVU811
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2539 .loc 1 3163 27 is_stmt 0 view .LVU812
|
||
2540 0222 4344 add r3, r3, r8
|
||
2541 .LVL278:
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2542 .loc 1 3163 27 view .LVU813
|
||
2543 0224 013B subs r3, r3, #1
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2544 .loc 1 3163 43 view .LVU814
|
||
2545 0226 B3FBF8F3 udiv r3, r3, r8
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2546 .loc 1 3163 6 view .LVU815
|
||
2547 022a BB42 cmp r3, r7
|
||
2548 022c 00F28C80 bhi .L222
|
||
3167:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0x80;
|
||
2549 .loc 1 3167 3 is_stmt 1 view .LVU816
|
||
3167:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0x80;
|
||
2550 .loc 1 3167 33 is_stmt 0 view .LVU817
|
||
2551 0230 4FF0FF33 mov r3, #-1
|
||
2552 0234 6361 str r3, [r4, #20]
|
||
3167:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0x80;
|
||
2553 .loc 1 3167 17 view .LVU818
|
||
2554 0236 2361 str r3, [r4, #16]
|
||
3168:Middlewares/Third_Party/FatFs/src/ff.c **** #if (_FS_NOFSINFO & 3) != 3
|
||
2555 .loc 1 3168 3 is_stmt 1 view .LVU819
|
||
3168:Middlewares/Third_Party/FatFs/src/ff.c **** #if (_FS_NOFSINFO & 3) != 3
|
||
2556 .loc 1 3168 16 is_stmt 0 view .LVU820
|
||
2557 0238 8023 movs r3, #128
|
||
2558 023a 2371 strb r3, [r4, #4]
|
||
3170:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_word(fs->win + BPB_FSInfo32) == 1
|
||
2559 .loc 1 3170 3 is_stmt 1 view .LVU821
|
||
3170:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_word(fs->win + BPB_FSInfo32) == 1
|
||
2560 .loc 1 3170 6 is_stmt 0 view .LVU822
|
||
2561 023c BBF1030F cmp fp, #3
|
||
2562 0240 22D0 beq .L229
|
||
2563 .L195:
|
||
3191:Middlewares/Third_Party/FatFs/src/ff.c **** fs->id = ++Fsid; /* File system mount ID */
|
||
2564 .loc 1 3191 2 is_stmt 1 view .LVU823
|
||
3191:Middlewares/Third_Party/FatFs/src/ff.c **** fs->id = ++Fsid; /* File system mount ID */
|
||
2565 .loc 1 3191 14 is_stmt 0 view .LVU824
|
||
2566 0242 84F800B0 strb fp, [r4]
|
||
3192:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1
|
||
2567 .loc 1 3192 2 is_stmt 1 view .LVU825
|
||
3192:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1
|
||
2568 .loc 1 3192 11 is_stmt 0 view .LVU826
|
||
2569 0246 344A ldr r2, .L230+4
|
||
2570 0248 1388 ldrh r3, [r2]
|
||
2571 024a 0133 adds r3, r3, #1
|
||
2572 024c 9BB2 uxth r3, r3
|
||
3192:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1
|
||
2573 .loc 1 3192 9 view .LVU827
|
||
2574 024e 1380 strh r3, [r2] @ movhi
|
||
ARM GAS /tmp/ccH7dUYB.s page 159
|
||
|
||
|
||
2575 0250 E380 strh r3, [r4, #6] @ movhi
|
||
3203:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2576 .loc 1 3203 2 is_stmt 1 view .LVU828
|
||
2577 0252 2046 mov r0, r4
|
||
2578 0254 FFF7FEFF bl clear_lock
|
||
2579 .LVL279:
|
||
3205:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2580 .loc 1 3205 2 view .LVU829
|
||
3205:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2581 .loc 1 3205 9 is_stmt 0 view .LVU830
|
||
2582 0258 46E0 b .L180
|
||
2583 .LVL280:
|
||
2584 .L218:
|
||
3145:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2585 .loc 1 3145 31 discriminator 1 view .LVU831
|
||
2586 025a 4FF0010B mov fp, #1
|
||
2587 025e C4E7 b .L191
|
||
2588 .LVL281:
|
||
2589 .L227:
|
||
3153:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
|
||
2590 .loc 1 3153 4 is_stmt 1 view .LVU832
|
||
3153:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
|
||
2591 .loc 1 3153 8 is_stmt 0 view .LVU833
|
||
2592 0260 04F15E00 add r0, r4, #94
|
||
2593 .LVL282:
|
||
3153:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
|
||
2594 .loc 1 3153 8 view .LVU834
|
||
2595 0264 FFF7FEFF bl ld_word
|
||
2596 .LVL283:
|
||
3153:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
|
||
2597 .loc 1 3153 7 discriminator 1 view .LVU835
|
||
2598 0268 0028 cmp r0, #0
|
||
2599 026a 67D1 bne .L219
|
||
3154:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = ld_dword(fs->win + BPB_RootClus32); /* Root directory start cluster */
|
||
2600 .loc 1 3154 4 is_stmt 1 view .LVU836
|
||
3154:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = ld_dword(fs->win + BPB_RootClus32); /* Root directory start cluster */
|
||
2601 .loc 1 3154 7 is_stmt 0 view .LVU837
|
||
2602 026c BAF1000F cmp r10, #0
|
||
2603 0270 66D1 bne .L220
|
||
3155:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = fs->n_fatent * 4; /* (Needed FAT size) */
|
||
2604 .loc 1 3155 4 is_stmt 1 view .LVU838
|
||
3155:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = fs->n_fatent * 4; /* (Needed FAT size) */
|
||
2605 .loc 1 3155 18 is_stmt 0 view .LVU839
|
||
2606 0272 04F16000 add r0, r4, #96
|
||
2607 0276 FFF7FEFF bl ld_dword
|
||
2608 .LVL284:
|
||
3155:Middlewares/Third_Party/FatFs/src/ff.c **** szbfat = fs->n_fatent * 4; /* (Needed FAT size) */
|
||
2609 .loc 1 3155 16 discriminator 1 view .LVU840
|
||
2610 027a A062 str r0, [r4, #40]
|
||
3156:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2611 .loc 1 3156 4 is_stmt 1 view .LVU841
|
||
3156:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2612 .loc 1 3156 11 is_stmt 0 view .LVU842
|
||
2613 027c 4FEA8903 lsl r3, r9, #2
|
||
2614 .LVL285:
|
||
3156:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
2615 .loc 1 3156 11 view .LVU843
|
||
ARM GAS /tmp/ccH7dUYB.s page 160
|
||
|
||
|
||
2616 0280 CFE7 b .L193
|
||
2617 .LVL286:
|
||
2618 .L228:
|
||
3161:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2619 .loc 1 3161 22 discriminator 1 view .LVU844
|
||
2620 0282 4FEA4903 lsl r3, r9, #1
|
||
2621 0286 CCE7 b .L193
|
||
2622 .LVL287:
|
||
2623 .L229:
|
||
3171:Middlewares/Third_Party/FatFs/src/ff.c **** && move_window(fs, bsect + 1) == FR_OK)
|
||
2624 .loc 1 3171 7 view .LVU845
|
||
2625 0288 04F16400 add r0, r4, #100
|
||
2626 028c FFF7FEFF bl ld_word
|
||
2627 .LVL288:
|
||
3171:Middlewares/Third_Party/FatFs/src/ff.c **** && move_window(fs, bsect + 1) == FR_OK)
|
||
2628 .loc 1 3171 4 discriminator 1 view .LVU846
|
||
2629 0290 0128 cmp r0, #1
|
||
2630 0292 D6D1 bne .L195
|
||
3172:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2631 .loc 1 3172 7 view .LVU847
|
||
2632 0294 711C adds r1, r6, #1
|
||
2633 0296 2046 mov r0, r4
|
||
2634 0298 FFF7FEFF bl move_window
|
||
2635 .LVL289:
|
||
3172:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2636 .loc 1 3172 4 discriminator 1 view .LVU848
|
||
2637 029c 0028 cmp r0, #0
|
||
2638 029e D0D1 bne .L195
|
||
3174:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BS_55AA) == 0xAA55 /* Load FSINFO data if available */
|
||
2639 .loc 1 3174 4 is_stmt 1 view .LVU849
|
||
3174:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(fs->win + BS_55AA) == 0xAA55 /* Load FSINFO data if available */
|
||
2640 .loc 1 3174 17 is_stmt 0 view .LVU850
|
||
2641 02a0 0023 movs r3, #0
|
||
2642 02a2 2371 strb r3, [r4, #4]
|
||
3175:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_LeadSig) == 0x41615252
|
||
2643 .loc 1 3175 4 is_stmt 1 view .LVU851
|
||
3175:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_LeadSig) == 0x41615252
|
||
2644 .loc 1 3175 8 is_stmt 0 view .LVU852
|
||
2645 02a4 04F23220 addw r0, r4, #562
|
||
2646 02a8 FFF7FEFF bl ld_word
|
||
2647 .LVL290:
|
||
3175:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_LeadSig) == 0x41615252
|
||
2648 .loc 1 3175 7 discriminator 1 view .LVU853
|
||
2649 02ac 4AF65523 movw r3, #43605
|
||
2650 02b0 9842 cmp r0, r3
|
||
2651 02b2 C6D1 bne .L195
|
||
3176:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_StrucSig) == 0x61417272)
|
||
2652 .loc 1 3176 8 view .LVU854
|
||
2653 02b4 04F13400 add r0, r4, #52
|
||
2654 02b8 FFF7FEFF bl ld_dword
|
||
2655 .LVL291:
|
||
3176:Middlewares/Third_Party/FatFs/src/ff.c **** && ld_dword(fs->win + FSI_StrucSig) == 0x61417272)
|
||
2656 .loc 1 3176 5 discriminator 1 view .LVU855
|
||
2657 02bc 174B ldr r3, .L230+8
|
||
2658 02be 9842 cmp r0, r3
|
||
2659 02c0 BFD1 bne .L195
|
||
3177:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
ARM GAS /tmp/ccH7dUYB.s page 161
|
||
|
||
|
||
2660 .loc 1 3177 8 view .LVU856
|
||
2661 02c2 04F50670 add r0, r4, #536
|
||
2662 02c6 FFF7FEFF bl ld_dword
|
||
2663 .LVL292:
|
||
3177:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
2664 .loc 1 3177 5 discriminator 1 view .LVU857
|
||
2665 02ca 154B ldr r3, .L230+12
|
||
2666 02cc 9842 cmp r0, r3
|
||
2667 02ce B8D1 bne .L195
|
||
3180:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2668 .loc 1 3180 5 is_stmt 1 view .LVU858
|
||
3180:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2669 .loc 1 3180 21 is_stmt 0 view .LVU859
|
||
2670 02d0 04F50770 add r0, r4, #540
|
||
2671 02d4 FFF7FEFF bl ld_dword
|
||
2672 .LVL293:
|
||
3180:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2673 .loc 1 3180 19 discriminator 1 view .LVU860
|
||
2674 02d8 6061 str r0, [r4, #20]
|
||
3183:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2675 .loc 1 3183 5 is_stmt 1 view .LVU861
|
||
3183:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2676 .loc 1 3183 21 is_stmt 0 view .LVU862
|
||
2677 02da 04F50870 add r0, r4, #544
|
||
2678 02de FFF7FEFF bl ld_dword
|
||
2679 .LVL294:
|
||
3183:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2680 .loc 1 3183 19 discriminator 1 view .LVU863
|
||
2681 02e2 2061 str r0, [r4, #16]
|
||
2682 02e4 ADE7 b .L195
|
||
2683 .LVL295:
|
||
2684 .L196:
|
||
3011:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2685 .loc 1 3011 22 discriminator 1 view .LVU864
|
||
2686 02e6 0B25 movs r5, #11
|
||
2687 .LVL296:
|
||
2688 .L180:
|
||
3206:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2689 .loc 1 3206 1 view .LVU865
|
||
2690 02e8 2846 mov r0, r5
|
||
2691 02ea 07B0 add sp, sp, #28
|
||
2692 .LCFI20:
|
||
2693 .cfi_remember_state
|
||
2694 .cfi_def_cfa_offset 36
|
||
2695 @ sp needed
|
||
2696 02ec BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
2697 .LVL297:
|
||
2698 .L197:
|
||
2699 .LCFI21:
|
||
2700 .cfi_restore_state
|
||
3015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2701 .loc 1 3015 18 discriminator 1 view .LVU866
|
||
2702 02f0 0C25 movs r5, #12
|
||
2703 .LVL298:
|
||
3015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2704 .loc 1 3015 18 discriminator 1 view .LVU867
|
||
2705 02f2 F9E7 b .L180
|
||
ARM GAS /tmp/ccH7dUYB.s page 162
|
||
|
||
|
||
2706 .LVL299:
|
||
2707 .L199:
|
||
3038:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2708 .loc 1 3038 10 view .LVU868
|
||
2709 02f4 0325 movs r5, #3
|
||
2710 02f6 F7E7 b .L180
|
||
2711 .L200:
|
||
3041:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
2712 .loc 1 3041 10 view .LVU869
|
||
2713 02f8 0A25 movs r5, #10
|
||
2714 02fa F5E7 b .L180
|
||
2715 .LVL300:
|
||
2716 .L201:
|
||
3044:Middlewares/Third_Party/FatFs/src/ff.c **** if (SS(fs) > _MAX_SS || SS(fs) < _MIN_SS || (SS(fs) & (SS(fs) - 1))) return FR_DISK_ERR;
|
||
2717 .loc 1 3044 70 discriminator 1 view .LVU870
|
||
2718 02fc 0125 movs r5, #1
|
||
2719 02fe F3E7 b .L180
|
||
2720 .L202:
|
||
3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
2721 .loc 1 3045 78 discriminator 3 view .LVU871
|
||
2722 0300 0125 movs r5, #1
|
||
2723 0302 F1E7 b .L180
|
||
2724 .LVL301:
|
||
2725 .L207:
|
||
3063:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt >= 2) return FR_NO_FILESYSTEM; /* No FAT volume is found */
|
||
2726 .loc 1 3063 23 discriminator 1 view .LVU872
|
||
2727 0304 0125 movs r5, #1
|
||
2728 0306 EFE7 b .L180
|
||
2729 .L208:
|
||
3064:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2730 .loc 1 3064 23 discriminator 1 view .LVU873
|
||
2731 0308 0D25 movs r5, #13
|
||
2732 030a EDE7 b .L180
|
||
2733 .LVL302:
|
||
2734 .L209:
|
||
3116:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2735 .loc 1 3116 59 discriminator 1 view .LVU874
|
||
2736 030c 0D25 movs r5, #13
|
||
2737 030e EBE7 b .L180
|
||
2738 .LVL303:
|
||
2739 .L210:
|
||
3123:Middlewares/Third_Party/FatFs/src/ff.c **** fasize *= fs->n_fats; /* Number of sectors for FAT area */
|
||
2740 .loc 1 3123 50 discriminator 1 view .LVU875
|
||
2741 0310 0D25 movs r5, #13
|
||
2742 0312 E9E7 b .L180
|
||
2743 .L231:
|
||
2744 .align 2
|
||
2745 .L230:
|
||
2746 0314 00000000 .word FatFs
|
||
2747 0318 00000000 .word Fsid
|
||
2748 031c 52526141 .word 1096897106
|
||
2749 0320 72724161 .word 1631679090
|
||
2750 .LVL304:
|
||
2751 .L211:
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2752 .loc 1 3127 63 discriminator 3 view .LVU876
|
||
2753 0324 0D25 movs r5, #13
|
||
ARM GAS /tmp/ccH7dUYB.s page 163
|
||
|
||
|
||
2754 0326 DFE7 b .L180
|
||
2755 .LVL305:
|
||
2756 .L212:
|
||
3127:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2757 .loc 1 3127 63 discriminator 3 view .LVU877
|
||
2758 0328 0D25 movs r5, #13
|
||
2759 032a DDE7 b .L180
|
||
2760 .L213:
|
||
3130:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2761 .loc 1 3130 49 discriminator 1 view .LVU878
|
||
2762 032c 0D25 movs r5, #13
|
||
2763 032e DBE7 b .L180
|
||
2764 .LVL306:
|
||
2765 .L214:
|
||
3136:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2766 .loc 1 3136 25 discriminator 1 view .LVU879
|
||
2767 0330 0D25 movs r5, #13
|
||
2768 0332 D9E7 b .L180
|
||
2769 .LVL307:
|
||
2770 .L215:
|
||
3140:Middlewares/Third_Party/FatFs/src/ff.c **** nclst = (tsect - sysect) / fs->csize; /* Number of clusters */
|
||
2771 .loc 1 3140 30 discriminator 1 view .LVU880
|
||
2772 0334 0D25 movs r5, #13
|
||
2773 0336 D7E7 b .L180
|
||
2774 .LVL308:
|
||
2775 .L216:
|
||
3142:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32;
|
||
2776 .loc 1 3142 26 discriminator 1 view .LVU881
|
||
2777 0338 0D25 movs r5, #13
|
||
2778 033a D5E7 b .L180
|
||
2779 .LVL309:
|
||
2780 .L219:
|
||
3153:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
|
||
2781 .loc 1 3153 52 discriminator 1 view .LVU882
|
||
2782 033c 0D25 movs r5, #13
|
||
2783 033e D3E7 b .L180
|
||
2784 .L220:
|
||
3154:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = ld_dword(fs->win + BPB_RootClus32); /* Root directory start cluster */
|
||
2785 .loc 1 3154 30 discriminator 1 view .LVU883
|
||
2786 0340 0D25 movs r5, #13
|
||
2787 0342 D1E7 b .L180
|
||
2788 .LVL310:
|
||
2789 .L221:
|
||
3158:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbase = fs->fatbase + fasize; /* Root directory start sector */
|
||
2790 .loc 1 3158 35 discriminator 1 view .LVU884
|
||
2791 0344 0D25 movs r5, #13
|
||
2792 0346 CFE7 b .L180
|
||
2793 .LVL311:
|
||
2794 .L222:
|
||
3163:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2795 .loc 1 3163 60 discriminator 1 view .LVU885
|
||
2796 0348 0D25 movs r5, #13
|
||
2797 034a CDE7 b .L180
|
||
2798 .cfi_endproc
|
||
2799 .LFE1219:
|
||
2801 .section .text.put_fat,"ax",%progbits
|
||
2802 .align 1
|
||
ARM GAS /tmp/ccH7dUYB.s page 164
|
||
|
||
|
||
2803 .syntax unified
|
||
2804 .thumb
|
||
2805 .thumb_func
|
||
2807 put_fat:
|
||
2808 .LVL312:
|
||
2809 .LFB1201:
|
||
1086:Middlewares/Third_Party/FatFs/src/ff.c **** UINT bc;
|
||
2810 .loc 1 1086 1 is_stmt 1 view -0
|
||
2811 .cfi_startproc
|
||
2812 @ args = 0, pretend = 0, frame = 0
|
||
2813 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1086:Middlewares/Third_Party/FatFs/src/ff.c **** UINT bc;
|
||
2814 .loc 1 1086 1 is_stmt 0 view .LVU887
|
||
2815 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
2816 .LCFI22:
|
||
2817 .cfi_def_cfa_offset 32
|
||
2818 .cfi_offset 4, -32
|
||
2819 .cfi_offset 5, -28
|
||
2820 .cfi_offset 6, -24
|
||
2821 .cfi_offset 7, -20
|
||
2822 .cfi_offset 8, -16
|
||
2823 .cfi_offset 9, -12
|
||
2824 .cfi_offset 10, -8
|
||
2825 .cfi_offset 14, -4
|
||
1087:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *p;
|
||
2826 .loc 1 1087 2 is_stmt 1 view .LVU888
|
||
1088:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_INT_ERR;
|
||
2827 .loc 1 1088 2 view .LVU889
|
||
1089:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2828 .loc 1 1089 2 view .LVU890
|
||
2829 .LVL313:
|
||
1091:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
2830 .loc 1 1091 2 view .LVU891
|
||
1091:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
2831 .loc 1 1091 5 is_stmt 0 view .LVU892
|
||
2832 0004 0129 cmp r1, #1
|
||
2833 0006 40F28E80 bls .L240
|
||
2834 000a 0446 mov r4, r0
|
||
2835 000c 0D46 mov r5, r1
|
||
2836 000e 1746 mov r7, r2
|
||
1091:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
2837 .loc 1 1091 28 discriminator 1 view .LVU893
|
||
2838 0010 8369 ldr r3, [r0, #24]
|
||
1091:Middlewares/Third_Party/FatFs/src/ff.c **** switch (fs->fs_type) {
|
||
2839 .loc 1 1091 16 discriminator 1 view .LVU894
|
||
2840 0012 8B42 cmp r3, r1
|
||
2841 0014 40F28B80 bls .L241
|
||
1092:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 : /* Bitfield items */
|
||
2842 .loc 1 1092 3 is_stmt 1 view .LVU895
|
||
1092:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 : /* Bitfield items */
|
||
2843 .loc 1 1092 13 is_stmt 0 view .LVU896
|
||
2844 0018 0378 ldrb r3, [r0] @ zero_extendqisi2
|
||
1092:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 : /* Bitfield items */
|
||
2845 .loc 1 1092 3 view .LVU897
|
||
2846 001a 022B cmp r3, #2
|
||
2847 001c 49D0 beq .L234
|
||
2848 001e 032B cmp r3, #3
|
||
ARM GAS /tmp/ccH7dUYB.s page 165
|
||
|
||
|
||
2849 0020 60D0 beq .L235
|
||
2850 0022 012B cmp r3, #1
|
||
2851 0024 40F08580 bne .L242
|
||
1094:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
2852 .loc 1 1094 4 is_stmt 1 view .LVU898
|
||
2853 .LVL314:
|
||
1094:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
2854 .loc 1 1094 21 view .LVU899
|
||
1094:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
2855 .loc 1 1094 24 is_stmt 0 view .LVU900
|
||
2856 0028 01EB5108 add r8, r1, r1, lsr #1
|
||
2857 .LVL315:
|
||
1095:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2858 .loc 1 1095 4 is_stmt 1 view .LVU901
|
||
1095:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2859 .loc 1 1095 28 is_stmt 0 view .LVU902
|
||
2860 002c 416A ldr r1, [r0, #36]
|
||
2861 .LVL316:
|
||
1095:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2862 .loc 1 1095 46 view .LVU903
|
||
2863 002e 8389 ldrh r3, [r0, #12]
|
||
1095:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2864 .loc 1 1095 44 view .LVU904
|
||
2865 0030 B8FBF3F3 udiv r3, r8, r3
|
||
1095:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2866 .loc 1 1095 10 view .LVU905
|
||
2867 0034 1944 add r1, r1, r3
|
||
2868 0036 FFF7FEFF bl move_window
|
||
2869 .LVL317:
|
||
1096:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win + bc++ % SS(fs);
|
||
2870 .loc 1 1096 4 is_stmt 1 view .LVU906
|
||
1096:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win + bc++ % SS(fs);
|
||
2871 .loc 1 1096 7 is_stmt 0 view .LVU907
|
||
2872 003a 0646 mov r6, r0
|
||
2873 003c 0028 cmp r0, #0
|
||
2874 003e 73D1 bne .L233
|
||
1097:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
|
||
2875 .loc 1 1097 4 is_stmt 1 view .LVU908
|
||
1097:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
|
||
2876 .loc 1 1097 8 is_stmt 0 view .LVU909
|
||
2877 0040 04F1340A add r10, r4, #52
|
||
1097:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
|
||
2878 .loc 1 1097 20 view .LVU910
|
||
2879 0044 08F10109 add r9, r8, #1
|
||
2880 .LVL318:
|
||
1097:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
|
||
2881 .loc 1 1097 25 view .LVU911
|
||
2882 0048 A389 ldrh r3, [r4, #12]
|
||
1097:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
|
||
2883 .loc 1 1097 23 view .LVU912
|
||
2884 004a B8FBF3F2 udiv r2, r8, r3
|
||
2885 004e 03FB1288 mls r8, r3, r2, r8
|
||
2886 .LVL319:
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2887 .loc 1 1098 4 is_stmt 1 view .LVU913
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2888 .loc 1 1098 7 is_stmt 0 view .LVU914
|
||
ARM GAS /tmp/ccH7dUYB.s page 166
|
||
|
||
|
||
2889 0052 15F00105 ands r5, r5, #1
|
||
2890 .LVL320:
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2891 .loc 1 1098 7 view .LVU915
|
||
2892 0056 22D0 beq .L236
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2893 .loc 1 1098 24 discriminator 1 view .LVU916
|
||
2894 0058 1AF80830 ldrb r3, [r10, r8] @ zero_extendqisi2
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2895 .loc 1 1098 7 discriminator 1 view .LVU917
|
||
2896 005c 03F00F03 and r3, r3, #15
|
||
2897 0060 43EA0713 orr r3, r3, r7, lsl #4
|
||
2898 0064 DBB2 uxtb r3, r3
|
||
2899 .L237:
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2900 .loc 1 1098 7 discriminator 4 view .LVU918
|
||
2901 0066 0AF80830 strb r3, [r10, r8]
|
||
1099:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
2902 .loc 1 1099 4 is_stmt 1 view .LVU919
|
||
1099:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, fs->fatbase + (bc / SS(fs)));
|
||
2903 .loc 1 1099 14 is_stmt 0 view .LVU920
|
||
2904 006a 0123 movs r3, #1
|
||
2905 006c E370 strb r3, [r4, #3]
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2906 .loc 1 1100 4 is_stmt 1 view .LVU921
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2907 .loc 1 1100 28 is_stmt 0 view .LVU922
|
||
2908 006e 616A ldr r1, [r4, #36]
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2909 .loc 1 1100 46 view .LVU923
|
||
2910 0070 A389 ldrh r3, [r4, #12]
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2911 .loc 1 1100 44 view .LVU924
|
||
2912 0072 B9FBF3F3 udiv r3, r9, r3
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2913 .loc 1 1100 10 view .LVU925
|
||
2914 0076 1944 add r1, r1, r3
|
||
2915 0078 2046 mov r0, r4
|
||
2916 .LVL321:
|
||
1100:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2917 .loc 1 1100 10 view .LVU926
|
||
2918 007a FFF7FEFF bl move_window
|
||
2919 .LVL322:
|
||
1101:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win + bc % SS(fs);
|
||
2920 .loc 1 1101 4 is_stmt 1 view .LVU927
|
||
1101:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win + bc % SS(fs);
|
||
2921 .loc 1 1101 7 is_stmt 0 view .LVU928
|
||
2922 007e 0646 mov r6, r0
|
||
2923 0080 0028 cmp r0, #0
|
||
2924 0082 51D1 bne .L233
|
||
1102:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F));
|
||
2925 .loc 1 1102 4 is_stmt 1 view .LVU929
|
||
1102:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F));
|
||
2926 .loc 1 1102 23 is_stmt 0 view .LVU930
|
||
2927 0084 A389 ldrh r3, [r4, #12]
|
||
1102:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F));
|
||
2928 .loc 1 1102 21 view .LVU931
|
||
ARM GAS /tmp/ccH7dUYB.s page 167
|
||
|
||
|
||
2929 0086 B9FBF3F2 udiv r2, r9, r3
|
||
2930 008a 03FB1299 mls r9, r3, r2, r9
|
||
2931 .LVL323:
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2932 .loc 1 1103 4 is_stmt 1 view .LVU932
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2933 .loc 1 1103 7 is_stmt 0 view .LVU933
|
||
2934 008e 45B1 cbz r5, .L238
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2935 .loc 1 1103 7 discriminator 1 view .LVU934
|
||
2936 0090 C7F30713 ubfx r3, r7, #4, #8
|
||
2937 .L239:
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2938 .loc 1 1103 7 discriminator 4 view .LVU935
|
||
2939 0094 0AF80930 strb r3, [r10, r9]
|
||
1104:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2940 .loc 1 1104 4 is_stmt 1 view .LVU936
|
||
1104:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2941 .loc 1 1104 14 is_stmt 0 view .LVU937
|
||
2942 0098 0123 movs r3, #1
|
||
2943 009a E370 strb r3, [r4, #3]
|
||
1105:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
2944 .loc 1 1105 4 is_stmt 1 view .LVU938
|
||
2945 009c 44E0 b .L233
|
||
2946 .LVL324:
|
||
2947 .L236:
|
||
1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2948 .loc 1 1098 7 is_stmt 0 discriminator 2 view .LVU939
|
||
2949 009e FBB2 uxtb r3, r7
|
||
2950 00a0 E1E7 b .L237
|
||
2951 .LVL325:
|
||
2952 .L238:
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2953 .loc 1 1103 43 discriminator 2 view .LVU940
|
||
2954 00a2 1AF80930 ldrb r3, [r10, r9] @ zero_extendqisi2
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2955 .loc 1 1103 74 discriminator 2 view .LVU941
|
||
2956 00a6 C7F30322 ubfx r2, r7, #8, #4
|
||
1103:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2957 .loc 1 1103 7 discriminator 2 view .LVU942
|
||
2958 00aa 23F00F03 bic r3, r3, #15
|
||
2959 00ae 1343 orrs r3, r3, r2
|
||
2960 00b0 F0E7 b .L239
|
||
2961 .LVL326:
|
||
2962 .L234:
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2963 .loc 1 1108 4 is_stmt 1 view .LVU943
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2964 .loc 1 1108 28 is_stmt 0 view .LVU944
|
||
2965 00b2 416A ldr r1, [r0, #36]
|
||
2966 .LVL327:
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2967 .loc 1 1108 49 view .LVU945
|
||
2968 00b4 8389 ldrh r3, [r0, #12]
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2969 .loc 1 1108 56 view .LVU946
|
||
2970 00b6 5B08 lsrs r3, r3, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 168
|
||
|
||
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2971 .loc 1 1108 46 view .LVU947
|
||
2972 00b8 B5FBF3F3 udiv r3, r5, r3
|
||
1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
2973 .loc 1 1108 10 view .LVU948
|
||
2974 00bc 1944 add r1, r1, r3
|
||
2975 00be FFF7FEFF bl move_window
|
||
2976 .LVL328:
|
||
1109:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + clst * 2 % SS(fs), (WORD)val);
|
||
2977 .loc 1 1109 4 is_stmt 1 view .LVU949
|
||
1109:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + clst * 2 % SS(fs), (WORD)val);
|
||
2978 .loc 1 1109 7 is_stmt 0 view .LVU950
|
||
2979 00c2 0646 mov r6, r0
|
||
2980 00c4 80BB cbnz r0, .L233
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2981 .loc 1 1110 4 is_stmt 1 view .LVU951
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2982 .loc 1 1110 12 is_stmt 0 view .LVU952
|
||
2983 00c6 04F13400 add r0, r4, #52
|
||
2984 .LVL329:
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2985 .loc 1 1110 27 view .LVU953
|
||
2986 00ca 6D00 lsls r5, r5, #1
|
||
2987 .LVL330:
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2988 .loc 1 1110 33 view .LVU954
|
||
2989 00cc A389 ldrh r3, [r4, #12]
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2990 .loc 1 1110 31 view .LVU955
|
||
2991 00ce B5FBF3F2 udiv r2, r5, r3
|
||
2992 00d2 03FB1255 mls r5, r3, r2, r5
|
||
1110:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
2993 .loc 1 1110 4 view .LVU956
|
||
2994 00d6 B9B2 uxth r1, r7
|
||
2995 00d8 2844 add r0, r0, r5
|
||
2996 00da FFF7FEFF bl st_word
|
||
2997 .LVL331:
|
||
1111:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2998 .loc 1 1111 4 is_stmt 1 view .LVU957
|
||
1111:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
2999 .loc 1 1111 14 is_stmt 0 view .LVU958
|
||
3000 00de 0123 movs r3, #1
|
||
3001 00e0 E370 strb r3, [r4, #3]
|
||
1112:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3002 .loc 1 1112 4 is_stmt 1 view .LVU959
|
||
3003 00e2 21E0 b .L233
|
||
3004 .LVL332:
|
||
3005 .L235:
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3006 .loc 1 1118 4 view .LVU960
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3007 .loc 1 1118 28 is_stmt 0 view .LVU961
|
||
3008 00e4 416A ldr r1, [r0, #36]
|
||
3009 .LVL333:
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3010 .loc 1 1118 49 view .LVU962
|
||
3011 00e6 8389 ldrh r3, [r0, #12]
|
||
ARM GAS /tmp/ccH7dUYB.s page 169
|
||
|
||
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3012 .loc 1 1118 56 view .LVU963
|
||
3013 00e8 9B08 lsrs r3, r3, #2
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3014 .loc 1 1118 46 view .LVU964
|
||
3015 00ea B5FBF3F3 udiv r3, r5, r3
|
||
1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
3016 .loc 1 1118 10 view .LVU965
|
||
3017 00ee 1944 add r1, r1, r3
|
||
3018 00f0 FFF7FEFF bl move_window
|
||
3019 .LVL334:
|
||
1119:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
3020 .loc 1 1119 4 is_stmt 1 view .LVU966
|
||
1119:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
3021 .loc 1 1119 7 is_stmt 0 view .LVU967
|
||
3022 00f4 0646 mov r6, r0
|
||
3023 00f6 B8B9 cbnz r0, .L233
|
||
1120:Middlewares/Third_Party/FatFs/src/ff.c **** val = (val & 0x0FFFFFFF) | (ld_dword(fs->win + clst * 4 % SS(fs)) & 0xF0000000);
|
||
3024 .loc 1 1120 4 is_stmt 1 view .LVU968
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3025 .loc 1 1121 5 view .LVU969
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3026 .loc 1 1121 16 is_stmt 0 view .LVU970
|
||
3027 00f8 27F07047 bic r7, r7, #-268435456
|
||
3028 .LVL335:
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3029 .loc 1 1121 42 view .LVU971
|
||
3030 00fc 04F13403 add r3, r4, #52
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3031 .loc 1 1121 57 view .LVU972
|
||
3032 0100 AD00 lsls r5, r5, #2
|
||
3033 .LVL336:
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3034 .loc 1 1121 63 view .LVU973
|
||
3035 0102 A289 ldrh r2, [r4, #12]
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3036 .loc 1 1121 61 view .LVU974
|
||
3037 0104 B5FBF2F1 udiv r1, r5, r2
|
||
3038 0108 02FB1155 mls r5, r2, r1, r5
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3039 .loc 1 1121 33 view .LVU975
|
||
3040 010c 1D44 add r5, r5, r3
|
||
3041 010e 2846 mov r0, r5
|
||
3042 .LVL337:
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3043 .loc 1 1121 33 view .LVU976
|
||
3044 0110 FFF7FEFF bl ld_dword
|
||
3045 .LVL338:
|
||
1121:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3046 .loc 1 1121 71 discriminator 1 view .LVU977
|
||
3047 0114 00F07041 and r1, r0, #-268435456
|
||
3048 .LVL339:
|
||
1123:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
3049 .loc 1 1123 4 is_stmt 1 view .LVU978
|
||
3050 0118 3943 orrs r1, r1, r7
|
||
3051 .LVL340:
|
||
1123:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
ARM GAS /tmp/ccH7dUYB.s page 170
|
||
|
||
|
||
3052 .loc 1 1123 4 is_stmt 0 view .LVU979
|
||
3053 011a 2846 mov r0, r5
|
||
3054 011c FFF7FEFF bl st_dword
|
||
3055 .LVL341:
|
||
1124:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3056 .loc 1 1124 4 is_stmt 1 view .LVU980
|
||
1124:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3057 .loc 1 1124 14 is_stmt 0 view .LVU981
|
||
3058 0120 0123 movs r3, #1
|
||
3059 0122 E370 strb r3, [r4, #3]
|
||
1125:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3060 .loc 1 1125 4 is_stmt 1 view .LVU982
|
||
3061 0124 00E0 b .L233
|
||
3062 .LVL342:
|
||
3063 .L240:
|
||
1089:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3064 .loc 1 1089 10 is_stmt 0 view .LVU983
|
||
3065 0126 0226 movs r6, #2
|
||
3066 .LVL343:
|
||
3067 .L233:
|
||
1128:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3068 .loc 1 1128 2 is_stmt 1 view .LVU984
|
||
1129:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3069 .loc 1 1129 1 is_stmt 0 view .LVU985
|
||
3070 0128 3046 mov r0, r6
|
||
3071 012a BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
3072 .LVL344:
|
||
3073 .L241:
|
||
1089:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3074 .loc 1 1089 10 view .LVU986
|
||
3075 012e 0226 movs r6, #2
|
||
3076 0130 FAE7 b .L233
|
||
3077 .L242:
|
||
1092:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 : /* Bitfield items */
|
||
3078 .loc 1 1092 3 view .LVU987
|
||
3079 0132 0226 movs r6, #2
|
||
3080 0134 F8E7 b .L233
|
||
3081 .cfi_endproc
|
||
3082 .LFE1201:
|
||
3084 .section .text.get_fat,"ax",%progbits
|
||
3085 .align 1
|
||
3086 .syntax unified
|
||
3087 .thumb
|
||
3088 .thumb_func
|
||
3090 get_fat:
|
||
3091 .LVL345:
|
||
3092 .LFB1200:
|
||
1005:Middlewares/Third_Party/FatFs/src/ff.c **** UINT wc, bc;
|
||
3093 .loc 1 1005 1 is_stmt 1 view -0
|
||
3094 .cfi_startproc
|
||
3095 @ args = 0, pretend = 0, frame = 0
|
||
3096 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1005:Middlewares/Third_Party/FatFs/src/ff.c **** UINT wc, bc;
|
||
3097 .loc 1 1005 1 is_stmt 0 view .LVU989
|
||
3098 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
|
||
3099 .LCFI23:
|
||
3100 .cfi_def_cfa_offset 24
|
||
ARM GAS /tmp/ccH7dUYB.s page 171
|
||
|
||
|
||
3101 .cfi_offset 3, -24
|
||
3102 .cfi_offset 4, -20
|
||
3103 .cfi_offset 5, -16
|
||
3104 .cfi_offset 6, -12
|
||
3105 .cfi_offset 7, -8
|
||
3106 .cfi_offset 14, -4
|
||
1006:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD val;
|
||
3107 .loc 1 1006 2 is_stmt 1 view .LVU990
|
||
1007:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
3108 .loc 1 1007 2 view .LVU991
|
||
1008:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3109 .loc 1 1008 2 view .LVU992
|
||
1008:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3110 .loc 1 1008 9 is_stmt 0 view .LVU993
|
||
3111 0002 0568 ldr r5, [r0]
|
||
3112 .LVL346:
|
||
1011:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */
|
||
3113 .loc 1 1011 2 is_stmt 1 view .LVU994
|
||
1011:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */
|
||
3114 .loc 1 1011 5 is_stmt 0 view .LVU995
|
||
3115 0004 0129 cmp r1, #1
|
||
3116 0006 6AD9 bls .L249
|
||
3117 0008 0C46 mov r4, r1
|
||
1011:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */
|
||
3118 .loc 1 1011 28 discriminator 1 view .LVU996
|
||
3119 000a AB69 ldr r3, [r5, #24]
|
||
1011:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */
|
||
3120 .loc 1 1011 15 discriminator 1 view .LVU997
|
||
3121 000c 8B42 cmp r3, r1
|
||
3122 000e 68D9 bls .L250
|
||
1015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3123 .loc 1 1015 3 is_stmt 1 view .LVU998
|
||
3124 .LVL347:
|
||
1017:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 :
|
||
3125 .loc 1 1017 3 view .LVU999
|
||
1017:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 :
|
||
3126 .loc 1 1017 13 is_stmt 0 view .LVU1000
|
||
3127 0010 2B78 ldrb r3, [r5] @ zero_extendqisi2
|
||
1017:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 :
|
||
3128 .loc 1 1017 3 view .LVU1001
|
||
3129 0012 022B cmp r3, #2
|
||
3130 0014 35D0 beq .L246
|
||
3131 0016 032B cmp r3, #3
|
||
3132 0018 49D0 beq .L247
|
||
3133 001a 012B cmp r3, #1
|
||
3134 001c 63D1 bne .L251
|
||
1019:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3135 .loc 1 1019 4 is_stmt 1 view .LVU1002
|
||
3136 .LVL348:
|
||
1019:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3137 .loc 1 1019 21 view .LVU1003
|
||
1019:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3138 .loc 1 1019 24 is_stmt 0 view .LVU1004
|
||
3139 001e 01EB5106 add r6, r1, r1, lsr #1
|
||
3140 .LVL349:
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3141 .loc 1 1020 4 is_stmt 1 view .LVU1005
|
||
ARM GAS /tmp/ccH7dUYB.s page 172
|
||
|
||
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3142 .loc 1 1020 26 is_stmt 0 view .LVU1006
|
||
3143 0022 696A ldr r1, [r5, #36]
|
||
3144 .LVL350:
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3145 .loc 1 1020 44 view .LVU1007
|
||
3146 0024 AB89 ldrh r3, [r5, #12]
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3147 .loc 1 1020 42 view .LVU1008
|
||
3148 0026 B6FBF3F3 udiv r3, r6, r3
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3149 .loc 1 1020 8 view .LVU1009
|
||
3150 002a 1944 add r1, r1, r3
|
||
3151 002c 2846 mov r0, r5
|
||
3152 .LVL351:
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3153 .loc 1 1020 8 view .LVU1010
|
||
3154 002e FFF7FEFF bl move_window
|
||
3155 .LVL352:
|
||
1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)];
|
||
3156 .loc 1 1020 7 discriminator 1 view .LVU1011
|
||
3157 0032 10B1 cbz r0, .L257
|
||
1015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3158 .loc 1 1015 7 view .LVU1012
|
||
3159 0034 4FF0FF30 mov r0, #-1
|
||
3160 0038 52E0 b .L244
|
||
3161 .L257:
|
||
1021:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3162 .loc 1 1021 4 is_stmt 1 view .LVU1013
|
||
1021:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3163 .loc 1 1021 19 is_stmt 0 view .LVU1014
|
||
3164 003a 771C adds r7, r6, #1
|
||
3165 .LVL353:
|
||
1021:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3166 .loc 1 1021 24 view .LVU1015
|
||
3167 003c AB89 ldrh r3, [r5, #12]
|
||
1021:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3168 .loc 1 1021 22 view .LVU1016
|
||
3169 003e B6FBF3F2 udiv r2, r6, r3
|
||
3170 0042 03FB1266 mls r6, r3, r2, r6
|
||
1021:Middlewares/Third_Party/FatFs/src/ff.c **** if (move_window(fs, fs->fatbase + (bc / SS(fs))) != FR_OK) break;
|
||
3171 .loc 1 1021 16 view .LVU1017
|
||
3172 0046 2E44 add r6, r6, r5
|
||
3173 0048 96F83460 ldrb r6, [r6, #52] @ zero_extendqisi2
|
||
3174 .LVL354:
|
||
1022:Middlewares/Third_Party/FatFs/src/ff.c **** wc |= fs->win[bc % SS(fs)] << 8;
|
||
3175 .loc 1 1022 4 is_stmt 1 view .LVU1018
|
||
1022:Middlewares/Third_Party/FatFs/src/ff.c **** wc |= fs->win[bc % SS(fs)] << 8;
|
||
3176 .loc 1 1022 26 is_stmt 0 view .LVU1019
|
||
3177 004c 696A ldr r1, [r5, #36]
|
||
1022:Middlewares/Third_Party/FatFs/src/ff.c **** wc |= fs->win[bc % SS(fs)] << 8;
|
||
3178 .loc 1 1022 42 view .LVU1020
|
||
3179 004e B7FBF3F3 udiv r3, r7, r3
|
||
1022:Middlewares/Third_Party/FatFs/src/ff.c **** wc |= fs->win[bc % SS(fs)] << 8;
|
||
3180 .loc 1 1022 8 view .LVU1021
|
||
3181 0052 1944 add r1, r1, r3
|
||
3182 0054 2846 mov r0, r5
|
||
ARM GAS /tmp/ccH7dUYB.s page 173
|
||
|
||
|
||
3183 0056 FFF7FEFF bl move_window
|
||
3184 .LVL355:
|
||
1022:Middlewares/Third_Party/FatFs/src/ff.c **** wc |= fs->win[bc % SS(fs)] << 8;
|
||
3185 .loc 1 1022 7 discriminator 1 view .LVU1022
|
||
3186 005a 0028 cmp r0, #0
|
||
3187 005c 45D1 bne .L253
|
||
1023:Middlewares/Third_Party/FatFs/src/ff.c **** val = (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
|
||
3188 .loc 1 1023 4 is_stmt 1 view .LVU1023
|
||
1023:Middlewares/Third_Party/FatFs/src/ff.c **** val = (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
|
||
3189 .loc 1 1023 23 is_stmt 0 view .LVU1024
|
||
3190 005e AB89 ldrh r3, [r5, #12]
|
||
1023:Middlewares/Third_Party/FatFs/src/ff.c **** val = (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
|
||
3191 .loc 1 1023 21 view .LVU1025
|
||
3192 0060 B7FBF3F2 udiv r2, r7, r3
|
||
3193 0064 03FB1277 mls r7, r3, r2, r7
|
||
3194 .LVL356:
|
||
1023:Middlewares/Third_Party/FatFs/src/ff.c **** val = (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
|
||
3195 .loc 1 1023 17 view .LVU1026
|
||
3196 0068 2F44 add r7, r7, r5
|
||
3197 006a 97F83430 ldrb r3, [r7, #52] @ zero_extendqisi2
|
||
1023:Middlewares/Third_Party/FatFs/src/ff.c **** val = (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
|
||
3198 .loc 1 1023 7 view .LVU1027
|
||
3199 006e 46EA0320 orr r0, r6, r3, lsl #8
|
||
3200 .LVL357:
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3201 .loc 1 1024 4 is_stmt 1 view .LVU1028
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3202 .loc 1 1024 33 is_stmt 0 view .LVU1029
|
||
3203 0072 14F0010F tst r4, #1
|
||
3204 0076 01D0 beq .L248
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3205 .loc 1 1024 33 discriminator 1 view .LVU1030
|
||
3206 0078 0009 lsrs r0, r0, #4
|
||
3207 .LVL358:
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3208 .loc 1 1024 33 discriminator 1 view .LVU1031
|
||
3209 007a 31E0 b .L244
|
||
3210 .LVL359:
|
||
3211 .L248:
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3212 .loc 1 1024 33 discriminator 2 view .LVU1032
|
||
3213 007c C0F30B00 ubfx r0, r0, #0, #12
|
||
3214 .LVL360:
|
||
1024:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3215 .loc 1 1024 33 discriminator 2 view .LVU1033
|
||
3216 0080 2EE0 b .L244
|
||
3217 .LVL361:
|
||
3218 .L246:
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3219 .loc 1 1028 4 is_stmt 1 view .LVU1034
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3220 .loc 1 1028 26 is_stmt 0 view .LVU1035
|
||
3221 0082 696A ldr r1, [r5, #36]
|
||
3222 .LVL362:
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3223 .loc 1 1028 47 view .LVU1036
|
||
3224 0084 AB89 ldrh r3, [r5, #12]
|
||
ARM GAS /tmp/ccH7dUYB.s page 174
|
||
|
||
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3225 .loc 1 1028 54 view .LVU1037
|
||
3226 0086 5B08 lsrs r3, r3, #1
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3227 .loc 1 1028 44 view .LVU1038
|
||
3228 0088 B4FBF3F3 udiv r3, r4, r3
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3229 .loc 1 1028 8 view .LVU1039
|
||
3230 008c 1944 add r1, r1, r3
|
||
3231 008e 2846 mov r0, r5
|
||
3232 .LVL363:
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3233 .loc 1 1028 8 view .LVU1040
|
||
3234 0090 FFF7FEFF bl move_window
|
||
3235 .LVL364:
|
||
1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs));
|
||
3236 .loc 1 1028 7 discriminator 1 view .LVU1041
|
||
3237 0094 60BB cbnz r0, .L254
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3238 .loc 1 1029 4 is_stmt 1 view .LVU1042
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3239 .loc 1 1029 18 is_stmt 0 view .LVU1043
|
||
3240 0096 05F13400 add r0, r5, #52
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3241 .loc 1 1029 33 view .LVU1044
|
||
3242 009a 6400 lsls r4, r4, #1
|
||
3243 .LVL365:
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3244 .loc 1 1029 39 view .LVU1045
|
||
3245 009c AB89 ldrh r3, [r5, #12]
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3246 .loc 1 1029 37 view .LVU1046
|
||
3247 009e B4FBF3F2 udiv r2, r4, r3
|
||
3248 00a2 03FB1244 mls r4, r3, r2, r4
|
||
1029:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3249 .loc 1 1029 10 view .LVU1047
|
||
3250 00a6 2044 add r0, r0, r4
|
||
3251 00a8 FFF7FEFF bl ld_word
|
||
3252 .LVL366:
|
||
1030:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3253 .loc 1 1030 4 is_stmt 1 view .LVU1048
|
||
3254 00ac 18E0 b .L244
|
||
3255 .LVL367:
|
||
3256 .L247:
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3257 .loc 1 1033 4 view .LVU1049
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3258 .loc 1 1033 26 is_stmt 0 view .LVU1050
|
||
3259 00ae 696A ldr r1, [r5, #36]
|
||
3260 .LVL368:
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3261 .loc 1 1033 47 view .LVU1051
|
||
3262 00b0 AB89 ldrh r3, [r5, #12]
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3263 .loc 1 1033 54 view .LVU1052
|
||
3264 00b2 9B08 lsrs r3, r3, #2
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
ARM GAS /tmp/ccH7dUYB.s page 175
|
||
|
||
|
||
3265 .loc 1 1033 44 view .LVU1053
|
||
3266 00b4 B4FBF3F3 udiv r3, r4, r3
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3267 .loc 1 1033 8 view .LVU1054
|
||
3268 00b8 1944 add r1, r1, r3
|
||
3269 00ba 2846 mov r0, r5
|
||
3270 .LVL369:
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3271 .loc 1 1033 8 view .LVU1055
|
||
3272 00bc FFF7FEFF bl move_window
|
||
3273 .LVL370:
|
||
1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF;
|
||
3274 .loc 1 1033 7 discriminator 1 view .LVU1056
|
||
3275 00c0 C8B9 cbnz r0, .L255
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3276 .loc 1 1034 4 is_stmt 1 view .LVU1057
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3277 .loc 1 1034 19 is_stmt 0 view .LVU1058
|
||
3278 00c2 05F13400 add r0, r5, #52
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3279 .loc 1 1034 34 view .LVU1059
|
||
3280 00c6 A400 lsls r4, r4, #2
|
||
3281 .LVL371:
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3282 .loc 1 1034 40 view .LVU1060
|
||
3283 00c8 AB89 ldrh r3, [r5, #12]
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3284 .loc 1 1034 38 view .LVU1061
|
||
3285 00ca B4FBF3F2 udiv r2, r4, r3
|
||
3286 00ce 03FB1244 mls r4, r3, r2, r4
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3287 .loc 1 1034 10 view .LVU1062
|
||
3288 00d2 2044 add r0, r0, r4
|
||
3289 00d4 FFF7FEFF bl ld_dword
|
||
3290 .LVL372:
|
||
1034:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
3291 .loc 1 1034 8 discriminator 1 view .LVU1063
|
||
3292 00d8 20F07040 bic r0, r0, #-268435456
|
||
3293 .LVL373:
|
||
1035:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
3294 .loc 1 1035 4 is_stmt 1 view .LVU1064
|
||
3295 00dc 00E0 b .L244
|
||
3296 .LVL374:
|
||
3297 .L249:
|
||
1012:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3298 .loc 1 1012 7 is_stmt 0 view .LVU1065
|
||
3299 00de 0120 movs r0, #1
|
||
3300 .LVL375:
|
||
3301 .L244:
|
||
1070:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3302 .loc 1 1070 1 view .LVU1066
|
||
3303 00e0 F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
3304 .LVL376:
|
||
3305 .L250:
|
||
1012:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3306 .loc 1 1012 7 view .LVU1067
|
||
3307 00e2 0120 movs r0, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 176
|
||
|
||
|
||
3308 .LVL377:
|
||
1012:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3309 .loc 1 1012 7 view .LVU1068
|
||
3310 00e4 FCE7 b .L244
|
||
3311 .LVL378:
|
||
3312 .L251:
|
||
1017:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 :
|
||
3313 .loc 1 1017 3 view .LVU1069
|
||
3314 00e6 0120 movs r0, #1
|
||
3315 .LVL379:
|
||
1017:Middlewares/Third_Party/FatFs/src/ff.c **** case FS_FAT12 :
|
||
3316 .loc 1 1017 3 view .LVU1070
|
||
3317 00e8 FAE7 b .L244
|
||
3318 .LVL380:
|
||
3319 .L253:
|
||
1015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3320 .loc 1 1015 7 view .LVU1071
|
||
3321 00ea 4FF0FF30 mov r0, #-1
|
||
3322 00ee F7E7 b .L244
|
||
3323 .LVL381:
|
||
3324 .L254:
|
||
1015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3325 .loc 1 1015 7 view .LVU1072
|
||
3326 00f0 4FF0FF30 mov r0, #-1
|
||
3327 00f4 F4E7 b .L244
|
||
3328 .L255:
|
||
1015:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3329 .loc 1 1015 7 view .LVU1073
|
||
3330 00f6 4FF0FF30 mov r0, #-1
|
||
1069:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3331 .loc 1 1069 2 is_stmt 1 view .LVU1074
|
||
1069:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3332 .loc 1 1069 9 is_stmt 0 view .LVU1075
|
||
3333 00fa F1E7 b .L244
|
||
3334 .cfi_endproc
|
||
3335 .LFE1200:
|
||
3337 .section .text.dir_sdi,"ax",%progbits
|
||
3338 .align 1
|
||
3339 .syntax unified
|
||
3340 .thumb
|
||
3341 .thumb_func
|
||
3343 dir_sdi:
|
||
3344 .LVL382:
|
||
3345 .LFB1205:
|
||
1474:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD csz, clst;
|
||
3346 .loc 1 1474 1 is_stmt 1 view -0
|
||
3347 .cfi_startproc
|
||
3348 @ args = 0, pretend = 0, frame = 0
|
||
3349 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1474:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD csz, clst;
|
||
3350 .loc 1 1474 1 is_stmt 0 view .LVU1077
|
||
3351 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
|
||
3352 .LCFI24:
|
||
3353 .cfi_def_cfa_offset 24
|
||
3354 .cfi_offset 4, -24
|
||
3355 .cfi_offset 5, -20
|
||
3356 .cfi_offset 6, -16
|
||
ARM GAS /tmp/ccH7dUYB.s page 177
|
||
|
||
|
||
3357 .cfi_offset 7, -12
|
||
3358 .cfi_offset 8, -8
|
||
3359 .cfi_offset 14, -4
|
||
1475:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
3360 .loc 1 1475 2 is_stmt 1 view .LVU1078
|
||
1476:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3361 .loc 1 1476 2 view .LVU1079
|
||
1476:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3362 .loc 1 1476 9 is_stmt 0 view .LVU1080
|
||
3363 0004 D0F80080 ldr r8, [r0]
|
||
3364 .LVL383:
|
||
1479:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_INT_ERR;
|
||
3365 .loc 1 1479 2 is_stmt 1 view .LVU1081
|
||
1479:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_INT_ERR;
|
||
3366 .loc 1 1479 5 is_stmt 0 view .LVU1082
|
||
3367 0008 B1F5001F cmp r1, #2097152
|
||
3368 000c 49D2 bcs .L265
|
||
3369 000e 0746 mov r7, r0
|
||
3370 0010 0E46 mov r6, r1
|
||
1479:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_INT_ERR;
|
||
3371 .loc 1 1479 84 discriminator 1 view .LVU1083
|
||
3372 0012 11F01F0F tst r1, #31
|
||
3373 0016 47D1 bne .L266
|
||
1482:Middlewares/Third_Party/FatFs/src/ff.c **** clst = dp->obj.sclust; /* Table start cluster (0:root) */
|
||
3374 .loc 1 1482 2 is_stmt 1 view .LVU1084
|
||
1482:Middlewares/Third_Party/FatFs/src/ff.c **** clst = dp->obj.sclust; /* Table start cluster (0:root) */
|
||
3375 .loc 1 1482 11 is_stmt 0 view .LVU1085
|
||
3376 0018 4161 str r1, [r0, #20]
|
||
1483:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0 && fs->fs_type >= FS_FAT32) { /* Replace cluster# 0 with root cluster# */
|
||
3377 .loc 1 1483 2 is_stmt 1 view .LVU1086
|
||
1483:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0 && fs->fs_type >= FS_FAT32) { /* Replace cluster# 0 with root cluster# */
|
||
3378 .loc 1 1483 7 is_stmt 0 view .LVU1087
|
||
3379 001a 8468 ldr r4, [r0, #8]
|
||
3380 .LVL384:
|
||
1484:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->dirbase;
|
||
3381 .loc 1 1484 2 is_stmt 1 view .LVU1088
|
||
1484:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->dirbase;
|
||
3382 .loc 1 1484 5 is_stmt 0 view .LVU1089
|
||
3383 001c 1CBB cbnz r4, .L260
|
||
1484:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->dirbase;
|
||
3384 .loc 1 1484 21 discriminator 1 view .LVU1090
|
||
3385 001e 98F80030 ldrb r3, [r8] @ zero_extendqisi2
|
||
1484:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fs->dirbase;
|
||
3386 .loc 1 1484 16 discriminator 1 view .LVU1091
|
||
3387 0022 022B cmp r3, #2
|
||
3388 0024 01D9 bls .L261
|
||
1485:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT) dp->obj.stat = 0; /* exFAT: Root dir has an FAT chain */
|
||
3389 .loc 1 1485 3 is_stmt 1 view .LVU1092
|
||
1485:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT) dp->obj.stat = 0; /* exFAT: Root dir has an FAT chain */
|
||
3390 .loc 1 1485 8 is_stmt 0 view .LVU1093
|
||
3391 0026 D8F82840 ldr r4, [r8, #40]
|
||
3392 .LVL385:
|
||
1486:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3393 .loc 1 1486 3 is_stmt 1 view .LVU1094
|
||
3394 .L261:
|
||
1489:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) return FR_INT_ERR; /* Is index out of range? */
|
||
3395 .loc 1 1489 2 view .LVU1095
|
||
ARM GAS /tmp/ccH7dUYB.s page 178
|
||
|
||
|
||
1489:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) return FR_INT_ERR; /* Is index out of range? */
|
||
3396 .loc 1 1489 5 is_stmt 0 view .LVU1096
|
||
3397 002a E4B9 cbnz r4, .L260
|
||
1490:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase;
|
||
3398 .loc 1 1490 3 is_stmt 1 view .LVU1097
|
||
1490:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase;
|
||
3399 .loc 1 1490 25 is_stmt 0 view .LVU1098
|
||
3400 002c B8F80830 ldrh r3, [r8, #8]
|
||
1490:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase;
|
||
3401 .loc 1 1490 6 view .LVU1099
|
||
3402 0030 B3EB561F cmp r3, r6, lsr #5
|
||
3403 0034 3AD9 bls .L267
|
||
1491:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3404 .loc 1 1491 3 is_stmt 1 view .LVU1100
|
||
1491:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3405 .loc 1 1491 16 is_stmt 0 view .LVU1101
|
||
3406 0036 D8F82830 ldr r3, [r8, #40]
|
||
1491:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3407 .loc 1 1491 12 view .LVU1102
|
||
3408 003a FB61 str r3, [r7, #28]
|
||
3409 .LVL386:
|
||
3410 .L262:
|
||
1503:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect) return FR_INT_ERR;
|
||
3411 .loc 1 1503 2 is_stmt 1 view .LVU1103
|
||
1503:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect) return FR_INT_ERR;
|
||
3412 .loc 1 1503 12 is_stmt 0 view .LVU1104
|
||
3413 003c BC61 str r4, [r7, #24]
|
||
1504:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect += ofs / SS(fs); /* Sector# of the directory entry */
|
||
3414 .loc 1 1504 2 is_stmt 1 view .LVU1105
|
||
1504:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect += ofs / SS(fs); /* Sector# of the directory entry */
|
||
3415 .loc 1 1504 9 is_stmt 0 view .LVU1106
|
||
3416 003e FB69 ldr r3, [r7, #28]
|
||
1504:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect += ofs / SS(fs); /* Sector# of the directory entry */
|
||
3417 .loc 1 1504 5 view .LVU1107
|
||
3418 0040 E3B3 cbz r3, .L271
|
||
1505:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + (ofs % SS(fs)); /* Pointer to the entry in the win[] */
|
||
3419 .loc 1 1505 2 is_stmt 1 view .LVU1108
|
||
1505:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + (ofs % SS(fs)); /* Pointer to the entry in the win[] */
|
||
3420 .loc 1 1505 20 is_stmt 0 view .LVU1109
|
||
3421 0042 B8F80C20 ldrh r2, [r8, #12]
|
||
1505:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + (ofs % SS(fs)); /* Pointer to the entry in the win[] */
|
||
3422 .loc 1 1505 18 view .LVU1110
|
||
3423 0046 B6FBF2F2 udiv r2, r6, r2
|
||
1505:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + (ofs % SS(fs)); /* Pointer to the entry in the win[] */
|
||
3424 .loc 1 1505 11 view .LVU1111
|
||
3425 004a 1344 add r3, r3, r2
|
||
3426 004c FB61 str r3, [r7, #28]
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3427 .loc 1 1506 2 is_stmt 1 view .LVU1112
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3428 .loc 1 1506 12 is_stmt 0 view .LVU1113
|
||
3429 004e 08F13403 add r3, r8, #52
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3430 .loc 1 1506 29 view .LVU1114
|
||
3431 0052 B8F80C20 ldrh r2, [r8, #12]
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3432 .loc 1 1506 27 view .LVU1115
|
||
ARM GAS /tmp/ccH7dUYB.s page 179
|
||
|
||
|
||
3433 0056 B6FBF2F1 udiv r1, r6, r2
|
||
3434 005a 02FB1161 mls r1, r2, r1, r6
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3435 .loc 1 1506 20 view .LVU1116
|
||
3436 005e 0B44 add r3, r3, r1
|
||
1506:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3437 .loc 1 1506 10 view .LVU1117
|
||
3438 0060 3B62 str r3, [r7, #32]
|
||
1508:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3439 .loc 1 1508 2 is_stmt 1 view .LVU1118
|
||
1508:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3440 .loc 1 1508 9 is_stmt 0 view .LVU1119
|
||
3441 0062 0020 movs r0, #0
|
||
3442 0064 1EE0 b .L259
|
||
3443 .LVL387:
|
||
3444 .L260:
|
||
1494:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs >= csz) { /* Follow cluster chain */
|
||
3445 .loc 1 1494 3 is_stmt 1 view .LVU1120
|
||
1494:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs >= csz) { /* Follow cluster chain */
|
||
3446 .loc 1 1494 18 is_stmt 0 view .LVU1121
|
||
3447 0066 B8F80A50 ldrh r5, [r8, #10]
|
||
1494:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs >= csz) { /* Follow cluster chain */
|
||
3448 .loc 1 1494 28 view .LVU1122
|
||
3449 006a B8F80C30 ldrh r3, [r8, #12]
|
||
1494:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs >= csz) { /* Follow cluster chain */
|
||
3450 .loc 1 1494 7 view .LVU1123
|
||
3451 006e 03FB05F5 mul r5, r3, r5
|
||
3452 .LVL388:
|
||
1495:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, clst); /* Get next cluster */
|
||
3453 .loc 1 1495 3 is_stmt 1 view .LVU1124
|
||
3454 .L263:
|
||
1495:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, clst); /* Get next cluster */
|
||
3455 .loc 1 1495 14 view .LVU1125
|
||
3456 0072 AE42 cmp r6, r5
|
||
3457 0074 0FD3 bcc .L273
|
||
1496:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
3458 .loc 1 1496 4 view .LVU1126
|
||
1496:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
3459 .loc 1 1496 11 is_stmt 0 view .LVU1127
|
||
3460 0076 2146 mov r1, r4
|
||
3461 0078 3846 mov r0, r7
|
||
3462 007a FFF7FEFF bl get_fat
|
||
3463 .LVL389:
|
||
3464 007e 0446 mov r4, r0
|
||
3465 .LVL390:
|
||
1497:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) return FR_INT_ERR; /* Reached to end of table or internal
|
||
3466 .loc 1 1497 4 is_stmt 1 view .LVU1128
|
||
1497:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) return FR_INT_ERR; /* Reached to end of table or internal
|
||
3467 .loc 1 1497 7 is_stmt 0 view .LVU1129
|
||
3468 0080 B0F1FF3F cmp r0, #-1
|
||
3469 0084 14D0 beq .L268
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3470 .loc 1 1498 4 is_stmt 1 view .LVU1130
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3471 .loc 1 1498 7 is_stmt 0 view .LVU1131
|
||
3472 0086 0128 cmp r0, #1
|
||
3473 0088 14D9 bls .L269
|
||
ARM GAS /tmp/ccH7dUYB.s page 180
|
||
|
||
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3474 .loc 1 1498 30 discriminator 2 view .LVU1132
|
||
3475 008a D8F81830 ldr r3, [r8, #24]
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3476 .loc 1 1498 17 discriminator 2 view .LVU1133
|
||
3477 008e 8342 cmp r3, r0
|
||
3478 0090 12D9 bls .L270
|
||
1499:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3479 .loc 1 1499 4 is_stmt 1 view .LVU1134
|
||
1499:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3480 .loc 1 1499 8 is_stmt 0 view .LVU1135
|
||
3481 0092 761B subs r6, r6, r5
|
||
3482 .LVL391:
|
||
1499:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3483 .loc 1 1499 8 view .LVU1136
|
||
3484 0094 EDE7 b .L263
|
||
3485 .LVL392:
|
||
3486 .L273:
|
||
1501:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3487 .loc 1 1501 3 is_stmt 1 view .LVU1137
|
||
1501:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3488 .loc 1 1501 14 is_stmt 0 view .LVU1138
|
||
3489 0096 2146 mov r1, r4
|
||
3490 0098 4046 mov r0, r8
|
||
3491 009a FFF7FEFF bl clust2sect
|
||
3492 .LVL393:
|
||
1501:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3493 .loc 1 1501 12 discriminator 1 view .LVU1139
|
||
3494 009e F861 str r0, [r7, #28]
|
||
3495 00a0 CCE7 b .L262
|
||
3496 .LVL394:
|
||
3497 .L265:
|
||
1480:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3498 .loc 1 1480 10 view .LVU1140
|
||
3499 00a2 0220 movs r0, #2
|
||
3500 .LVL395:
|
||
3501 .L259:
|
||
1509:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3502 .loc 1 1509 1 view .LVU1141
|
||
3503 00a4 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
|
||
3504 .LVL396:
|
||
3505 .L266:
|
||
1480:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3506 .loc 1 1480 10 view .LVU1142
|
||
3507 00a8 0220 movs r0, #2
|
||
3508 .LVL397:
|
||
1480:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3509 .loc 1 1480 10 view .LVU1143
|
||
3510 00aa FBE7 b .L259
|
||
3511 .LVL398:
|
||
3512 .L267:
|
||
1490:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase;
|
||
3513 .loc 1 1490 45 discriminator 1 view .LVU1144
|
||
3514 00ac 0220 movs r0, #2
|
||
3515 .LVL399:
|
||
1490:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase;
|
||
3516 .loc 1 1490 45 discriminator 1 view .LVU1145
|
||
ARM GAS /tmp/ccH7dUYB.s page 181
|
||
|
||
|
||
3517 00ae F9E7 b .L259
|
||
3518 .LVL400:
|
||
3519 .L268:
|
||
1497:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) return FR_INT_ERR; /* Reached to end of table or internal
|
||
3520 .loc 1 1497 35 discriminator 1 view .LVU1146
|
||
3521 00b0 0120 movs r0, #1
|
||
3522 .LVL401:
|
||
1497:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) return FR_INT_ERR; /* Reached to end of table or internal
|
||
3523 .loc 1 1497 35 discriminator 1 view .LVU1147
|
||
3524 00b2 F7E7 b .L259
|
||
3525 .LVL402:
|
||
3526 .L269:
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3527 .loc 1 1498 49 discriminator 3 view .LVU1148
|
||
3528 00b4 0220 movs r0, #2
|
||
3529 .LVL403:
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3530 .loc 1 1498 49 discriminator 3 view .LVU1149
|
||
3531 00b6 F5E7 b .L259
|
||
3532 .LVL404:
|
||
3533 .L270:
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3534 .loc 1 1498 49 discriminator 3 view .LVU1150
|
||
3535 00b8 0220 movs r0, #2
|
||
3536 .LVL405:
|
||
1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz;
|
||
3537 .loc 1 1498 49 discriminator 3 view .LVU1151
|
||
3538 00ba F3E7 b .L259
|
||
3539 .LVL406:
|
||
3540 .L271:
|
||
1504:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect += ofs / SS(fs); /* Sector# of the directory entry */
|
||
3541 .loc 1 1504 24 discriminator 1 view .LVU1152
|
||
3542 00bc 0220 movs r0, #2
|
||
3543 00be F1E7 b .L259
|
||
3544 .cfi_endproc
|
||
3545 .LFE1205:
|
||
3547 .section .text.create_chain,"ax",%progbits
|
||
3548 .align 1
|
||
3549 .syntax unified
|
||
3550 .thumb
|
||
3551 .thumb_func
|
||
3553 create_chain:
|
||
3554 .LVL407:
|
||
3555 .LFB1203:
|
||
1355:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cs, ncl, scl;
|
||
3556 .loc 1 1355 1 is_stmt 1 view -0
|
||
3557 .cfi_startproc
|
||
3558 @ args = 0, pretend = 0, frame = 0
|
||
3559 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1355:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cs, ncl, scl;
|
||
3560 .loc 1 1355 1 is_stmt 0 view .LVU1154
|
||
3561 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
|
||
3562 .LCFI25:
|
||
3563 .cfi_def_cfa_offset 24
|
||
3564 .cfi_offset 4, -24
|
||
3565 .cfi_offset 5, -20
|
||
3566 .cfi_offset 6, -16
|
||
ARM GAS /tmp/ccH7dUYB.s page 182
|
||
|
||
|
||
3567 .cfi_offset 7, -12
|
||
3568 .cfi_offset 8, -8
|
||
3569 .cfi_offset 14, -4
|
||
3570 0004 0546 mov r5, r0
|
||
1356:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3571 .loc 1 1356 2 is_stmt 1 view .LVU1155
|
||
1357:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
3572 .loc 1 1357 2 view .LVU1156
|
||
1358:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3573 .loc 1 1358 2 view .LVU1157
|
||
1358:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3574 .loc 1 1358 9 is_stmt 0 view .LVU1158
|
||
3575 0006 0668 ldr r6, [r0]
|
||
3576 .LVL408:
|
||
1361:Middlewares/Third_Party/FatFs/src/ff.c **** scl = fs->last_clst; /* Get suggested cluster to start from */
|
||
3577 .loc 1 1361 2 is_stmt 1 view .LVU1159
|
||
1361:Middlewares/Third_Party/FatFs/src/ff.c **** scl = fs->last_clst; /* Get suggested cluster to start from */
|
||
3578 .loc 1 1361 5 is_stmt 0 view .LVU1160
|
||
3579 0008 0F46 mov r7, r1
|
||
3580 000a 51B9 cbnz r1, .L275
|
||
1362:Middlewares/Third_Party/FatFs/src/ff.c **** if (scl == 0 || scl >= fs->n_fatent) scl = 1;
|
||
3581 .loc 1 1362 3 is_stmt 1 view .LVU1161
|
||
1362:Middlewares/Third_Party/FatFs/src/ff.c **** if (scl == 0 || scl >= fs->n_fatent) scl = 1;
|
||
3582 .loc 1 1362 7 is_stmt 0 view .LVU1162
|
||
3583 000c D6F81080 ldr r8, [r6, #16]
|
||
3584 .LVL409:
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3585 .loc 1 1363 3 is_stmt 1 view .LVU1163
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3586 .loc 1 1363 6 is_stmt 0 view .LVU1164
|
||
3587 0010 B8F1000F cmp r8, #0
|
||
3588 0014 12D0 beq .L284
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3589 .loc 1 1363 28 discriminator 2 view .LVU1165
|
||
3590 0016 B369 ldr r3, [r6, #24]
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3591 .loc 1 1363 16 discriminator 2 view .LVU1166
|
||
3592 0018 4345 cmp r3, r8
|
||
3593 001a 11D8 bhi .L276
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3594 .loc 1 1363 44 discriminator 3 view .LVU1167
|
||
3595 001c 4FF00108 mov r8, #1
|
||
3596 .LVL410:
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3597 .loc 1 1363 44 discriminator 3 view .LVU1168
|
||
3598 0020 0EE0 b .L276
|
||
3599 .LVL411:
|
||
3600 .L275:
|
||
1366:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < 2) return 1; /* Invalid FAT value */
|
||
3601 .loc 1 1366 3 is_stmt 1 view .LVU1169
|
||
1366:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < 2) return 1; /* Invalid FAT value */
|
||
3602 .loc 1 1366 8 is_stmt 0 view .LVU1170
|
||
3603 0022 FFF7FEFF bl get_fat
|
||
3604 .LVL412:
|
||
1366:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < 2) return 1; /* Invalid FAT value */
|
||
3605 .loc 1 1366 8 view .LVU1171
|
||
3606 0026 0346 mov r3, r0
|
||
ARM GAS /tmp/ccH7dUYB.s page 183
|
||
|
||
|
||
3607 .LVL413:
|
||
1367:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0xFFFFFFFF) return cs; /* A disk error occurred */
|
||
3608 .loc 1 1367 3 is_stmt 1 view .LVU1172
|
||
1367:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0xFFFFFFFF) return cs; /* A disk error occurred */
|
||
3609 .loc 1 1367 6 is_stmt 0 view .LVU1173
|
||
3610 0028 0128 cmp r0, #1
|
||
3611 002a 4CD9 bls .L286
|
||
1368:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < fs->n_fatent) return cs; /* It is already followed by next cluster */
|
||
3612 .loc 1 1368 3 is_stmt 1 view .LVU1174
|
||
1368:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < fs->n_fatent) return cs; /* It is already followed by next cluster */
|
||
3613 .loc 1 1368 6 is_stmt 0 view .LVU1175
|
||
3614 002c B0F1FF3F cmp r0, #-1
|
||
3615 0030 4ED0 beq .L274
|
||
1369:Middlewares/Third_Party/FatFs/src/ff.c **** scl = clst;
|
||
3616 .loc 1 1369 3 is_stmt 1 view .LVU1176
|
||
1369:Middlewares/Third_Party/FatFs/src/ff.c **** scl = clst;
|
||
3617 .loc 1 1369 14 is_stmt 0 view .LVU1177
|
||
3618 0032 B269 ldr r2, [r6, #24]
|
||
1369:Middlewares/Third_Party/FatFs/src/ff.c **** scl = clst;
|
||
3619 .loc 1 1369 6 view .LVU1178
|
||
3620 0034 8242 cmp r2, r0
|
||
3621 0036 4BD8 bhi .L274
|
||
1370:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3622 .loc 1 1370 7 view .LVU1179
|
||
3623 0038 B846 mov r8, r7
|
||
3624 003a 01E0 b .L276
|
||
3625 .LVL414:
|
||
3626 .L284:
|
||
1363:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3627 .loc 1 1363 44 discriminator 3 view .LVU1180
|
||
3628 003c 4FF00108 mov r8, #1
|
||
3629 .LVL415:
|
||
3630 .L276:
|
||
1400:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
3631 .loc 1 1400 3 is_stmt 1 view .LVU1181
|
||
1400:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
3632 .loc 1 1400 7 is_stmt 0 view .LVU1182
|
||
3633 0040 4446 mov r4, r8
|
||
3634 0042 0CE0 b .L280
|
||
3635 .LVL416:
|
||
3636 .L278:
|
||
1407:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0) break; /* Found a free cluster */
|
||
3637 .loc 1 1407 4 is_stmt 1 view .LVU1183
|
||
1407:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0) break; /* Found a free cluster */
|
||
3638 .loc 1 1407 9 is_stmt 0 view .LVU1184
|
||
3639 0044 2146 mov r1, r4
|
||
3640 0046 2846 mov r0, r5
|
||
3641 0048 FFF7FEFF bl get_fat
|
||
3642 .LVL417:
|
||
1408:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 1 || cs == 0xFFFFFFFF) return cs; /* An error occurred */
|
||
3643 .loc 1 1408 4 is_stmt 1 view .LVU1185
|
||
1408:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 1 || cs == 0xFFFFFFFF) return cs; /* An error occurred */
|
||
3644 .loc 1 1408 7 is_stmt 0 view .LVU1186
|
||
3645 004c 0346 mov r3, r0
|
||
3646 004e 78B1 cbz r0, .L279
|
||
1409:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == scl) return 0; /* No free cluster */
|
||
3647 .loc 1 1409 4 is_stmt 1 view .LVU1187
|
||
ARM GAS /tmp/ccH7dUYB.s page 184
|
||
|
||
|
||
1409:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == scl) return 0; /* No free cluster */
|
||
3648 .loc 1 1409 7 is_stmt 0 view .LVU1188
|
||
3649 0050 B0F1FF3F cmp r0, #-1
|
||
3650 0054 18BF it ne
|
||
3651 0056 0128 cmpne r0, #1
|
||
3652 0058 3AD0 beq .L274
|
||
1410:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3653 .loc 1 1410 4 is_stmt 1 view .LVU1189
|
||
1410:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3654 .loc 1 1410 7 is_stmt 0 view .LVU1190
|
||
3655 005a 4445 cmp r4, r8
|
||
3656 005c 37D0 beq .L291
|
||
3657 .LVL418:
|
||
3658 .L280:
|
||
1401:Middlewares/Third_Party/FatFs/src/ff.c **** ncl++; /* Next cluster */
|
||
3659 .loc 1 1401 3 is_stmt 1 view .LVU1191
|
||
1402:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl >= fs->n_fatent) { /* Check wrap-around */
|
||
3660 .loc 1 1402 4 view .LVU1192
|
||
1402:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl >= fs->n_fatent) { /* Check wrap-around */
|
||
3661 .loc 1 1402 7 is_stmt 0 view .LVU1193
|
||
3662 005e 0134 adds r4, r4, #1
|
||
3663 .LVL419:
|
||
1403:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = 2;
|
||
3664 .loc 1 1403 4 is_stmt 1 view .LVU1194
|
||
1403:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = 2;
|
||
3665 .loc 1 1403 17 is_stmt 0 view .LVU1195
|
||
3666 0060 B369 ldr r3, [r6, #24]
|
||
1403:Middlewares/Third_Party/FatFs/src/ff.c **** ncl = 2;
|
||
3667 .loc 1 1403 7 view .LVU1196
|
||
3668 0062 A342 cmp r3, r4
|
||
3669 0064 EED8 bhi .L278
|
||
1404:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl > scl) return 0; /* No free cluster */
|
||
3670 .loc 1 1404 5 is_stmt 1 view .LVU1197
|
||
3671 .LVL420:
|
||
1405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3672 .loc 1 1405 5 view .LVU1198
|
||
1405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3673 .loc 1 1405 8 is_stmt 0 view .LVU1199
|
||
3674 0066 B8F1010F cmp r8, #1
|
||
3675 006a 2ED9 bls .L287
|
||
1404:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl > scl) return 0; /* No free cluster */
|
||
3676 .loc 1 1404 9 view .LVU1200
|
||
3677 006c 0224 movs r4, #2
|
||
3678 006e E9E7 b .L278
|
||
3679 .LVL421:
|
||
3680 .L279:
|
||
1412:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && clst != 0) {
|
||
3681 .loc 1 1412 3 is_stmt 1 view .LVU1201
|
||
1412:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && clst != 0) {
|
||
3682 .loc 1 1412 9 is_stmt 0 view .LVU1202
|
||
3683 0070 4FF0FF32 mov r2, #-1
|
||
3684 0074 2146 mov r1, r4
|
||
3685 0076 3046 mov r0, r6
|
||
3686 .LVL422:
|
||
1412:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && clst != 0) {
|
||
3687 .loc 1 1412 9 view .LVU1203
|
||
3688 0078 FFF7FEFF bl put_fat
|
||
ARM GAS /tmp/ccH7dUYB.s page 185
|
||
|
||
|
||
3689 .LVL423:
|
||
1413:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, ncl); /* Link it from the previous one if needed */
|
||
3690 .loc 1 1413 3 is_stmt 1 view .LVU1204
|
||
1413:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, ncl); /* Link it from the previous one if needed */
|
||
3691 .loc 1 1413 11 is_stmt 0 view .LVU1205
|
||
3692 007c 0246 mov r2, r0
|
||
1413:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, ncl); /* Link it from the previous one if needed */
|
||
3693 .loc 1 1413 20 view .LVU1206
|
||
3694 007e B0FA80F0 clz r0, r0
|
||
3695 .LVL424:
|
||
1413:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, ncl); /* Link it from the previous one if needed */
|
||
3696 .loc 1 1413 20 view .LVU1207
|
||
3697 0082 4009 lsrs r0, r0, #5
|
||
3698 0084 002F cmp r7, #0
|
||
3699 0086 08BF it eq
|
||
3700 0088 0020 moveq r0, #0
|
||
1413:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, ncl); /* Link it from the previous one if needed */
|
||
3701 .loc 1 1413 6 view .LVU1208
|
||
3702 008a 70B9 cbnz r0, .L292
|
||
3703 .LVL425:
|
||
3704 .L281:
|
||
1418:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = ncl;
|
||
3705 .loc 1 1418 2 is_stmt 1 view .LVU1209
|
||
1418:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = ncl;
|
||
3706 .loc 1 1418 5 is_stmt 0 view .LVU1210
|
||
3707 008c A2B9 cbnz r2, .L282
|
||
1419:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->free_clst <= fs->n_fatent - 2) fs->free_clst--;
|
||
3708 .loc 1 1419 3 is_stmt 1 view .LVU1211
|
||
1419:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->free_clst <= fs->n_fatent - 2) fs->free_clst--;
|
||
3709 .loc 1 1419 17 is_stmt 0 view .LVU1212
|
||
3710 008e 3461 str r4, [r6, #16]
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3711 .loc 1 1420 3 is_stmt 1 view .LVU1213
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3712 .loc 1 1420 9 is_stmt 0 view .LVU1214
|
||
3713 0090 7269 ldr r2, [r6, #20]
|
||
3714 .LVL426:
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3715 .loc 1 1420 26 view .LVU1215
|
||
3716 0092 B369 ldr r3, [r6, #24]
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3717 .loc 1 1420 37 view .LVU1216
|
||
3718 0094 023B subs r3, r3, #2
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3719 .loc 1 1420 6 view .LVU1217
|
||
3720 0096 9A42 cmp r2, r3
|
||
3721 0098 01D8 bhi .L283
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3722 .loc 1 1420 42 is_stmt 1 discriminator 1 view .LVU1218
|
||
1420:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3723 .loc 1 1420 55 is_stmt 0 discriminator 1 view .LVU1219
|
||
3724 009a 013A subs r2, r2, #1
|
||
3725 009c 7261 str r2, [r6, #20]
|
||
3726 .L283:
|
||
1421:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3727 .loc 1 1421 3 is_stmt 1 view .LVU1220
|
||
1421:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
ARM GAS /tmp/ccH7dUYB.s page 186
|
||
|
||
|
||
3728 .loc 1 1421 5 is_stmt 0 view .LVU1221
|
||
3729 009e 3379 ldrb r3, [r6, #4] @ zero_extendqisi2
|
||
1421:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
3730 .loc 1 1421 16 view .LVU1222
|
||
3731 00a0 43F00103 orr r3, r3, #1
|
||
3732 00a4 3371 strb r3, [r6, #4]
|
||
3733 00a6 2346 mov r3, r4
|
||
3734 00a8 12E0 b .L274
|
||
3735 .LVL427:
|
||
3736 .L292:
|
||
1414:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3737 .loc 1 1414 4 is_stmt 1 view .LVU1223
|
||
1414:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3738 .loc 1 1414 10 is_stmt 0 view .LVU1224
|
||
3739 00aa 2246 mov r2, r4
|
||
3740 .LVL428:
|
||
1414:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3741 .loc 1 1414 10 view .LVU1225
|
||
3742 00ac 3946 mov r1, r7
|
||
3743 00ae 3046 mov r0, r6
|
||
3744 00b0 FFF7FEFF bl put_fat
|
||
3745 .LVL429:
|
||
3746 00b4 0246 mov r2, r0
|
||
3747 .LVL430:
|
||
1414:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3748 .loc 1 1414 10 view .LVU1226
|
||
3749 00b6 E9E7 b .L281
|
||
3750 .L282:
|
||
1423:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3751 .loc 1 1423 3 is_stmt 1 view .LVU1227
|
||
1423:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3752 .loc 1 1423 43 is_stmt 0 view .LVU1228
|
||
3753 00b8 012A cmp r2, #1
|
||
3754 00ba 01D0 beq .L293
|
||
1423:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3755 .loc 1 1423 43 discriminator 2 view .LVU1229
|
||
3756 00bc 0123 movs r3, #1
|
||
3757 .LVL431:
|
||
1423:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3758 .loc 1 1423 43 discriminator 2 view .LVU1230
|
||
3759 00be 07E0 b .L274
|
||
3760 .LVL432:
|
||
3761 .L293:
|
||
1423:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3762 .loc 1 1423 43 discriminator 1 view .LVU1231
|
||
3763 00c0 4FF0FF33 mov r3, #-1
|
||
3764 00c4 04E0 b .L274
|
||
3765 .LVL433:
|
||
3766 .L286:
|
||
1367:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs == 0xFFFFFFFF) return cs; /* A disk error occurred */
|
||
3767 .loc 1 1367 22 discriminator 1 view .LVU1232
|
||
3768 00c6 0123 movs r3, #1
|
||
3769 00c8 02E0 b .L274
|
||
3770 .LVL434:
|
||
3771 .L287:
|
||
1405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3772 .loc 1 1405 27 discriminator 1 view .LVU1233
|
||
ARM GAS /tmp/ccH7dUYB.s page 187
|
||
|
||
|
||
3773 00ca 0023 movs r3, #0
|
||
3774 00cc 00E0 b .L274
|
||
3775 .LVL435:
|
||
3776 .L291:
|
||
1410:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3777 .loc 1 1410 27 discriminator 1 view .LVU1234
|
||
3778 00ce 0023 movs r3, #0
|
||
3779 .LVL436:
|
||
3780 .L274:
|
||
1427:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3781 .loc 1 1427 1 view .LVU1235
|
||
3782 00d0 1846 mov r0, r3
|
||
3783 00d2 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
|
||
1427:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3784 .loc 1 1427 1 view .LVU1236
|
||
3785 .cfi_endproc
|
||
3786 .LFE1203:
|
||
3788 .section .text.remove_chain,"ax",%progbits
|
||
3789 .align 1
|
||
3790 .syntax unified
|
||
3791 .thumb
|
||
3792 .thumb_func
|
||
3794 remove_chain:
|
||
3795 .LVL437:
|
||
3796 .LFB1202:
|
||
1276:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
3797 .loc 1 1276 1 is_stmt 1 view -0
|
||
3798 .cfi_startproc
|
||
3799 @ args = 0, pretend = 0, frame = 0
|
||
3800 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1276:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_OK;
|
||
3801 .loc 1 1276 1 is_stmt 0 view .LVU1238
|
||
3802 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
|
||
3803 .LCFI26:
|
||
3804 .cfi_def_cfa_offset 24
|
||
3805 .cfi_offset 3, -24
|
||
3806 .cfi_offset 4, -20
|
||
3807 .cfi_offset 5, -16
|
||
3808 .cfi_offset 6, -12
|
||
3809 .cfi_offset 7, -8
|
||
3810 .cfi_offset 14, -4
|
||
3811 0002 0C46 mov r4, r1
|
||
1277:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD nxt;
|
||
3812 .loc 1 1277 2 is_stmt 1 view .LVU1239
|
||
3813 .LVL438:
|
||
1278:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
3814 .loc 1 1278 2 view .LVU1240
|
||
1279:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT || _USE_TRIM
|
||
3815 .loc 1 1279 2 view .LVU1241
|
||
1279:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT || _USE_TRIM
|
||
3816 .loc 1 1279 9 is_stmt 0 view .LVU1242
|
||
3817 0004 0568 ldr r5, [r0]
|
||
3818 .LVL439:
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3819 .loc 1 1287 2 is_stmt 1 view .LVU1243
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3820 .loc 1 1287 5 is_stmt 0 view .LVU1244
|
||
ARM GAS /tmp/ccH7dUYB.s page 188
|
||
|
||
|
||
3821 0006 0129 cmp r1, #1
|
||
3822 0008 2ED9 bls .L299
|
||
3823 000a 0646 mov r6, r0
|
||
3824 000c 1146 mov r1, r2
|
||
3825 .LVL440:
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3826 .loc 1 1287 28 discriminator 2 view .LVU1245
|
||
3827 000e AB69 ldr r3, [r5, #24]
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3828 .loc 1 1287 15 discriminator 2 view .LVU1246
|
||
3829 0010 A342 cmp r3, r4
|
||
3830 0012 2BD9 bls .L300
|
||
1290:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, pclst, 0xFFFFFFFF);
|
||
3831 .loc 1 1290 2 is_stmt 1 view .LVU1247
|
||
1290:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, pclst, 0xFFFFFFFF);
|
||
3832 .loc 1 1290 5 is_stmt 0 view .LVU1248
|
||
3833 0014 4AB1 cbz r2, .L298
|
||
1291:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3834 .loc 1 1291 3 is_stmt 1 view .LVU1249
|
||
1291:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3835 .loc 1 1291 9 is_stmt 0 view .LVU1250
|
||
3836 0016 4FF0FF32 mov r2, #-1
|
||
3837 .LVL441:
|
||
1291:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3838 .loc 1 1291 9 view .LVU1251
|
||
3839 001a 2846 mov r0, r5
|
||
3840 .LVL442:
|
||
1291:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3841 .loc 1 1291 9 view .LVU1252
|
||
3842 001c FFF7FEFF bl put_fat
|
||
3843 .LVL443:
|
||
1292:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3844 .loc 1 1292 3 is_stmt 1 view .LVU1253
|
||
1292:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3845 .loc 1 1292 6 is_stmt 0 view .LVU1254
|
||
3846 0020 0746 mov r7, r0
|
||
3847 0022 10B1 cbz r0, .L298
|
||
3848 0024 23E0 b .L295
|
||
3849 .LVL444:
|
||
3850 .L297:
|
||
1327:Middlewares/Third_Party/FatFs/src/ff.c **** } while (clst < fs->n_fatent); /* Repeat while not the last link */
|
||
3851 .loc 1 1327 3 is_stmt 1 view .LVU1255
|
||
1328:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3852 .loc 1 1328 16 view .LVU1256
|
||
3853 0026 A242 cmp r2, r4
|
||
3854 0028 21D9 bls .L295
|
||
3855 .LVL445:
|
||
3856 .L298:
|
||
1296:Middlewares/Third_Party/FatFs/src/ff.c **** nxt = get_fat(obj, clst); /* Get cluster status */
|
||
3857 .loc 1 1296 2 view .LVU1257
|
||
1297:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0) break; /* Empty cluster? */
|
||
3858 .loc 1 1297 3 view .LVU1258
|
||
3859 002a 2746 mov r7, r4
|
||
1297:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0) break; /* Empty cluster? */
|
||
3860 .loc 1 1297 9 is_stmt 0 view .LVU1259
|
||
3861 002c 2146 mov r1, r4
|
||
3862 002e 3046 mov r0, r6
|
||
ARM GAS /tmp/ccH7dUYB.s page 189
|
||
|
||
|
||
3863 0030 FFF7FEFF bl get_fat
|
||
3864 .LVL446:
|
||
1298:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 1) return FR_INT_ERR; /* Internal error? */
|
||
3865 .loc 1 1298 3 is_stmt 1 view .LVU1260
|
||
1298:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 1) return FR_INT_ERR; /* Internal error? */
|
||
3866 .loc 1 1298 6 is_stmt 0 view .LVU1261
|
||
3867 0034 0446 mov r4, r0
|
||
3868 .LVL447:
|
||
1298:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 1) return FR_INT_ERR; /* Internal error? */
|
||
3869 .loc 1 1298 6 view .LVU1262
|
||
3870 0036 E0B1 cbz r0, .L301
|
||
1299:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error? */
|
||
3871 .loc 1 1299 3 is_stmt 1 view .LVU1263
|
||
1299:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error? */
|
||
3872 .loc 1 1299 6 is_stmt 0 view .LVU1264
|
||
3873 0038 0128 cmp r0, #1
|
||
3874 003a 1CD0 beq .L302
|
||
1300:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
3875 .loc 1 1300 3 is_stmt 1 view .LVU1265
|
||
1300:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
3876 .loc 1 1300 6 is_stmt 0 view .LVU1266
|
||
3877 003c B0F1FF3F cmp r0, #-1
|
||
3878 0040 1BD0 beq .L303
|
||
1301:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, clst, 0); /* Mark the cluster 'free' on the FAT */
|
||
3879 .loc 1 1301 3 is_stmt 1 view .LVU1267
|
||
1302:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3880 .loc 1 1302 4 view .LVU1268
|
||
1302:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3881 .loc 1 1302 10 is_stmt 0 view .LVU1269
|
||
3882 0042 0022 movs r2, #0
|
||
3883 0044 3946 mov r1, r7
|
||
3884 0046 2846 mov r0, r5
|
||
3885 .LVL448:
|
||
1302:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
3886 .loc 1 1302 10 view .LVU1270
|
||
3887 0048 FFF7FEFF bl put_fat
|
||
3888 .LVL449:
|
||
1303:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3889 .loc 1 1303 4 is_stmt 1 view .LVU1271
|
||
1303:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3890 .loc 1 1303 7 is_stmt 0 view .LVU1272
|
||
3891 004c 0746 mov r7, r0
|
||
3892 .LVL450:
|
||
1303:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3893 .loc 1 1303 7 view .LVU1273
|
||
3894 004e 70B9 cbnz r0, .L295
|
||
1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++;
|
||
3895 .loc 1 1305 3 is_stmt 1 view .LVU1274
|
||
1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++;
|
||
3896 .loc 1 1305 9 is_stmt 0 view .LVU1275
|
||
3897 0050 6B69 ldr r3, [r5, #20]
|
||
1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++;
|
||
3898 .loc 1 1305 25 view .LVU1276
|
||
3899 0052 AA69 ldr r2, [r5, #24]
|
||
1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++;
|
||
3900 .loc 1 1305 36 view .LVU1277
|
||
3901 0054 911E subs r1, r2, #2
|
||
ARM GAS /tmp/ccH7dUYB.s page 190
|
||
|
||
|
||
1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++;
|
||
3902 .loc 1 1305 6 view .LVU1278
|
||
3903 0056 8B42 cmp r3, r1
|
||
3904 0058 E5D2 bcs .L297
|
||
1306:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3905 .loc 1 1306 4 is_stmt 1 view .LVU1279
|
||
1306:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1;
|
||
3906 .loc 1 1306 17 is_stmt 0 view .LVU1280
|
||
3907 005a 0133 adds r3, r3, #1
|
||
3908 005c 6B61 str r3, [r5, #20]
|
||
1307:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3909 .loc 1 1307 4 is_stmt 1 view .LVU1281
|
||
1307:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3910 .loc 1 1307 6 is_stmt 0 view .LVU1282
|
||
3911 005e 2B79 ldrb r3, [r5, #4] @ zero_extendqisi2
|
||
1307:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3912 .loc 1 1307 17 view .LVU1283
|
||
3913 0060 43F00103 orr r3, r3, #1
|
||
3914 0064 2B71 strb r3, [r5, #4]
|
||
3915 0066 DEE7 b .L297
|
||
3916 .LVL451:
|
||
3917 .L299:
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3918 .loc 1 1287 47 discriminator 3 view .LVU1284
|
||
3919 0068 0227 movs r7, #2
|
||
3920 006a 00E0 b .L295
|
||
3921 .LVL452:
|
||
3922 .L300:
|
||
1287:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3923 .loc 1 1287 47 discriminator 3 view .LVU1285
|
||
3924 006c 0227 movs r7, #2
|
||
3925 .LVL453:
|
||
3926 .L295:
|
||
1342:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
3927 .loc 1 1342 1 view .LVU1286
|
||
3928 006e 3846 mov r0, r7
|
||
3929 0070 F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
3930 .LVL454:
|
||
3931 .L301:
|
||
1341:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3932 .loc 1 1341 9 view .LVU1287
|
||
3933 0072 0027 movs r7, #0
|
||
3934 .LVL455:
|
||
1341:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3935 .loc 1 1341 9 view .LVU1288
|
||
3936 0074 FBE7 b .L295
|
||
3937 .LVL456:
|
||
3938 .L302:
|
||
1299:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error? */
|
||
3939 .loc 1 1299 24 discriminator 1 view .LVU1289
|
||
3940 0076 0227 movs r7, #2
|
||
3941 .LVL457:
|
||
1299:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error? */
|
||
3942 .loc 1 1299 24 discriminator 1 view .LVU1290
|
||
3943 0078 F9E7 b .L295
|
||
3944 .LVL458:
|
||
3945 .L303:
|
||
ARM GAS /tmp/ccH7dUYB.s page 191
|
||
|
||
|
||
1300:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
3946 .loc 1 1300 33 discriminator 1 view .LVU1291
|
||
3947 007a 0127 movs r7, #1
|
||
3948 .LVL459:
|
||
1300:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
3949 .loc 1 1300 33 discriminator 1 view .LVU1292
|
||
3950 007c F7E7 b .L295
|
||
3951 .cfi_endproc
|
||
3952 .LFE1202:
|
||
3954 .section .text.dir_remove,"ax",%progbits
|
||
3955 .align 1
|
||
3956 .syntax unified
|
||
3957 .thumb
|
||
3958 .thumb_func
|
||
3960 dir_remove:
|
||
3961 .LVL460:
|
||
3962 .LFB1213:
|
||
2399:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3963 .loc 1 2399 1 is_stmt 1 view -0
|
||
3964 .cfi_startproc
|
||
3965 @ args = 0, pretend = 0, frame = 0
|
||
3966 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2399:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
3967 .loc 1 2399 1 is_stmt 0 view .LVU1294
|
||
3968 0000 38B5 push {r3, r4, r5, lr}
|
||
3969 .LCFI27:
|
||
3970 .cfi_def_cfa_offset 16
|
||
3971 .cfi_offset 3, -16
|
||
3972 .cfi_offset 4, -12
|
||
3973 .cfi_offset 5, -8
|
||
3974 .cfi_offset 14, -4
|
||
3975 0002 0446 mov r4, r0
|
||
2400:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
3976 .loc 1 2400 2 is_stmt 1 view .LVU1295
|
||
2401:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
3977 .loc 1 2401 2 view .LVU1296
|
||
2401:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
3978 .loc 1 2401 9 is_stmt 0 view .LVU1297
|
||
3979 0004 0568 ldr r5, [r0]
|
||
3980 .LVL461:
|
||
2424:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3981 .loc 1 2424 2 is_stmt 1 view .LVU1298
|
||
2424:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3982 .loc 1 2424 8 is_stmt 0 view .LVU1299
|
||
3983 0006 C169 ldr r1, [r0, #28]
|
||
3984 0008 2846 mov r0, r5
|
||
3985 .LVL462:
|
||
2424:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
3986 .loc 1 2424 8 view .LVU1300
|
||
3987 000a FFF7FEFF bl move_window
|
||
3988 .LVL463:
|
||
2425:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir[DIR_Name] = DDEM;
|
||
3989 .loc 1 2425 2 is_stmt 1 view .LVU1301
|
||
2425:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir[DIR_Name] = DDEM;
|
||
3990 .loc 1 2425 5 is_stmt 0 view .LVU1302
|
||
3991 000e 20B9 cbnz r0, .L306
|
||
2426:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
ARM GAS /tmp/ccH7dUYB.s page 192
|
||
|
||
|
||
3992 .loc 1 2426 3 is_stmt 1 view .LVU1303
|
||
2426:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
3993 .loc 1 2426 5 is_stmt 0 view .LVU1304
|
||
3994 0010 236A ldr r3, [r4, #32]
|
||
2426:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
3995 .loc 1 2426 21 view .LVU1305
|
||
3996 0012 E522 movs r2, #229
|
||
3997 0014 1A70 strb r2, [r3]
|
||
2427:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3998 .loc 1 2427 3 is_stmt 1 view .LVU1306
|
||
2427:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
3999 .loc 1 2427 13 is_stmt 0 view .LVU1307
|
||
4000 0016 0123 movs r3, #1
|
||
4001 0018 EB70 strb r3, [r5, #3]
|
||
4002 .L306:
|
||
2431:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4003 .loc 1 2431 2 is_stmt 1 view .LVU1308
|
||
2432:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4004 .loc 1 2432 1 is_stmt 0 view .LVU1309
|
||
4005 001a 38BD pop {r3, r4, r5, pc}
|
||
2432:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4006 .loc 1 2432 1 view .LVU1310
|
||
4007 .cfi_endproc
|
||
4008 .LFE1213:
|
||
4010 .section .text.dir_next,"ax",%progbits
|
||
4011 .align 1
|
||
4012 .syntax unified
|
||
4013 .thumb
|
||
4014 .thumb_func
|
||
4016 dir_next:
|
||
4017 .LVL464:
|
||
4018 .LFB1206:
|
||
1523:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ofs, clst;
|
||
4019 .loc 1 1523 1 is_stmt 1 view -0
|
||
4020 .cfi_startproc
|
||
4021 @ args = 0, pretend = 0, frame = 0
|
||
4022 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1523:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ofs, clst;
|
||
4023 .loc 1 1523 1 is_stmt 0 view .LVU1312
|
||
4024 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
|
||
4025 .LCFI28:
|
||
4026 .cfi_def_cfa_offset 32
|
||
4027 .cfi_offset 3, -32
|
||
4028 .cfi_offset 4, -28
|
||
4029 .cfi_offset 5, -24
|
||
4030 .cfi_offset 6, -20
|
||
4031 .cfi_offset 7, -16
|
||
4032 .cfi_offset 8, -12
|
||
4033 .cfi_offset 9, -8
|
||
4034 .cfi_offset 14, -4
|
||
1524:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
4035 .loc 1 1524 2 is_stmt 1 view .LVU1313
|
||
1525:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4036 .loc 1 1525 2 view .LVU1314
|
||
1525:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4037 .loc 1 1525 9 is_stmt 0 view .LVU1315
|
||
4038 0004 0668 ldr r6, [r0]
|
||
ARM GAS /tmp/ccH7dUYB.s page 193
|
||
|
||
|
||
4039 .LVL465:
|
||
1527:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4040 .loc 1 1527 2 is_stmt 1 view .LVU1316
|
||
1530:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect || ofs >= (DWORD)((_FS_EXFAT && fs->fs_type == FS_EXFAT) ? MAX_DIR_EX : MAX_DIR)) re
|
||
4041 .loc 1 1530 2 view .LVU1317
|
||
1530:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp->sect || ofs >= (DWORD)((_FS_EXFAT && fs->fs_type == FS_EXFAT) ? MAX_DIR_EX : MAX_DIR)) re
|
||
4042 .loc 1 1530 10 is_stmt 0 view .LVU1318
|
||
4043 0006 4469 ldr r4, [r0, #20]
|
||
4044 .LVL466:
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4045 .loc 1 1531 2 is_stmt 1 view .LVU1319
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4046 .loc 1 1531 9 is_stmt 0 view .LVU1320
|
||
4047 0008 C369 ldr r3, [r0, #28]
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4048 .loc 1 1531 5 view .LVU1321
|
||
4049 000a 002B cmp r3, #0
|
||
4050 000c 74D0 beq .L316
|
||
4051 000e 0546 mov r5, r0
|
||
4052 0010 0F46 mov r7, r1
|
||
4053 0012 2034 adds r4, r4, #32
|
||
4054 .LVL467:
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4055 .loc 1 1531 16 discriminator 2 view .LVU1322
|
||
4056 0014 B4F5001F cmp r4, #2097152
|
||
4057 0018 70D2 bcs .L317
|
||
1533:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect++; /* Next sector */
|
||
4058 .loc 1 1533 2 is_stmt 1 view .LVU1323
|
||
1533:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect++; /* Next sector */
|
||
4059 .loc 1 1533 12 is_stmt 0 view .LVU1324
|
||
4060 001a B189 ldrh r1, [r6, #12]
|
||
4061 .LVL468:
|
||
1533:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect++; /* Next sector */
|
||
4062 .loc 1 1533 10 view .LVU1325
|
||
4063 001c B4FBF1F2 udiv r2, r4, r1
|
||
4064 0020 01FB1242 mls r2, r1, r2, r4
|
||
1533:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect++; /* Next sector */
|
||
4065 .loc 1 1533 5 view .LVU1326
|
||
4066 0024 3AB9 cbnz r2, .L310
|
||
1534:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4067 .loc 1 1534 3 is_stmt 1 view .LVU1327
|
||
1534:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4068 .loc 1 1534 11 is_stmt 0 view .LVU1328
|
||
4069 0026 0133 adds r3, r3, #1
|
||
4070 0028 C361 str r3, [r0, #28]
|
||
1536:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) { /* Report EOT if it reached end of static table */
|
||
4071 .loc 1 1536 3 is_stmt 1 view .LVU1329
|
||
1536:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) { /* Report EOT if it reached end of static table */
|
||
4072 .loc 1 1536 10 is_stmt 0 view .LVU1330
|
||
4073 002a 8169 ldr r1, [r0, #24]
|
||
1536:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) { /* Report EOT if it reached end of static table */
|
||
4074 .loc 1 1536 6 view .LVU1331
|
||
4075 002c A1B9 cbnz r1, .L311
|
||
1537:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
4076 .loc 1 1537 4 is_stmt 1 view .LVU1332
|
||
1537:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
4077 .loc 1 1537 26 is_stmt 0 view .LVU1333
|
||
ARM GAS /tmp/ccH7dUYB.s page 194
|
||
|
||
|
||
4078 002e 3389 ldrh r3, [r6, #8]
|
||
1537:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
4079 .loc 1 1537 7 view .LVU1334
|
||
4080 0030 B3EB541F cmp r3, r4, lsr #5
|
||
4081 0034 0CD9 bls .L326
|
||
4082 .LVL469:
|
||
4083 .L310:
|
||
1574:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + ofs % SS(fs); /* Pointer to the entry in the win[] */
|
||
4084 .loc 1 1574 2 is_stmt 1 view .LVU1335
|
||
1574:Middlewares/Third_Party/FatFs/src/ff.c **** dp->dir = fs->win + ofs % SS(fs); /* Pointer to the entry in the win[] */
|
||
4085 .loc 1 1574 11 is_stmt 0 view .LVU1336
|
||
4086 0036 6C61 str r4, [r5, #20]
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4087 .loc 1 1575 2 is_stmt 1 view .LVU1337
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4088 .loc 1 1575 12 is_stmt 0 view .LVU1338
|
||
4089 0038 06F13403 add r3, r6, #52
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4090 .loc 1 1575 28 view .LVU1339
|
||
4091 003c B289 ldrh r2, [r6, #12]
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4092 .loc 1 1575 26 view .LVU1340
|
||
4093 003e B4FBF2F1 udiv r1, r4, r2
|
||
4094 0042 02FB1144 mls r4, r2, r1, r4
|
||
4095 .LVL470:
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4096 .loc 1 1575 20 view .LVU1341
|
||
4097 0046 2344 add r3, r3, r4
|
||
1575:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4098 .loc 1 1575 10 view .LVU1342
|
||
4099 0048 2B62 str r3, [r5, #32]
|
||
1577:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4100 .loc 1 1577 2 is_stmt 1 view .LVU1343
|
||
1577:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4101 .loc 1 1577 9 is_stmt 0 view .LVU1344
|
||
4102 004a 0020 movs r0, #0
|
||
4103 .LVL471:
|
||
4104 .L309:
|
||
1578:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4105 .loc 1 1578 1 view .LVU1345
|
||
4106 004c BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
|
||
4107 .LVL472:
|
||
4108 .L326:
|
||
1538:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4109 .loc 1 1538 5 is_stmt 1 view .LVU1346
|
||
1538:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4110 .loc 1 1538 14 is_stmt 0 view .LVU1347
|
||
4111 0050 0023 movs r3, #0
|
||
4112 0052 C361 str r3, [r0, #28]
|
||
1538:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4113 .loc 1 1538 19 is_stmt 1 view .LVU1348
|
||
1538:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4114 .loc 1 1538 26 is_stmt 0 view .LVU1349
|
||
4115 0054 0420 movs r0, #4
|
||
4116 .LVL473:
|
||
1538:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4117 .loc 1 1538 26 view .LVU1350
|
||
ARM GAS /tmp/ccH7dUYB.s page 195
|
||
|
||
|
||
4118 0056 F9E7 b .L309
|
||
4119 .LVL474:
|
||
4120 .L311:
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
4121 .loc 1 1542 4 is_stmt 1 view .LVU1351
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
4122 .loc 1 1542 15 is_stmt 0 view .LVU1352
|
||
4123 0058 B289 ldrh r2, [r6, #12]
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
4124 .loc 1 1542 13 view .LVU1353
|
||
4125 005a B4FBF2F2 udiv r2, r4, r2
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
4126 .loc 1 1542 27 view .LVU1354
|
||
4127 005e 7389 ldrh r3, [r6, #10]
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
4128 .loc 1 1542 35 view .LVU1355
|
||
4129 0060 013B subs r3, r3, #1
|
||
1542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&dp->obj, dp->clust); /* Get next cluster */
|
||
4130 .loc 1 1542 7 view .LVU1356
|
||
4131 0062 12EA0308 ands r8, r2, r3
|
||
4132 0066 E6D1 bne .L310
|
||
1543:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) return FR_INT_ERR; /* Internal error */
|
||
4133 .loc 1 1543 5 is_stmt 1 view .LVU1357
|
||
1543:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) return FR_INT_ERR; /* Internal error */
|
||
4134 .loc 1 1543 12 is_stmt 0 view .LVU1358
|
||
4135 0068 FFF7FEFF bl get_fat
|
||
4136 .LVL475:
|
||
1543:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) return FR_INT_ERR; /* Internal error */
|
||
4137 .loc 1 1543 12 view .LVU1359
|
||
4138 006c 8146 mov r9, r0
|
||
4139 .LVL476:
|
||
1544:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4140 .loc 1 1544 5 is_stmt 1 view .LVU1360
|
||
1544:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4141 .loc 1 1544 8 is_stmt 0 view .LVU1361
|
||
4142 006e 0128 cmp r0, #1
|
||
4143 0070 46D9 bls .L318
|
||
1545:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent) { /* Reached end of dynamic table */
|
||
4144 .loc 1 1545 5 is_stmt 1 view .LVU1362
|
||
1545:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent) { /* Reached end of dynamic table */
|
||
4145 .loc 1 1545 8 is_stmt 0 view .LVU1363
|
||
4146 0072 B0F1FF3F cmp r0, #-1
|
||
4147 0076 45D0 beq .L319
|
||
1546:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4148 .loc 1 1546 5 is_stmt 1 view .LVU1364
|
||
1546:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4149 .loc 1 1546 19 is_stmt 0 view .LVU1365
|
||
4150 0078 B369 ldr r3, [r6, #24]
|
||
1546:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
4151 .loc 1 1546 8 view .LVU1366
|
||
4152 007a 8342 cmp r3, r0
|
||
4153 007c 34D8 bhi .L312
|
||
1548:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
4154 .loc 1 1548 6 is_stmt 1 view .LVU1367
|
||
1548:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE;
|
||
4155 .loc 1 1548 9 is_stmt 0 view .LVU1368
|
||
4156 007e 8FB1 cbz r7, .L327
|
||
ARM GAS /tmp/ccH7dUYB.s page 196
|
||
|
||
|
||
1551:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) return FR_DENIED; /* No free cluster */
|
||
4157 .loc 1 1551 6 is_stmt 1 view .LVU1369
|
||
1551:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) return FR_DENIED; /* No free cluster */
|
||
4158 .loc 1 1551 13 is_stmt 0 view .LVU1370
|
||
4159 0080 A969 ldr r1, [r5, #24]
|
||
4160 0082 2846 mov r0, r5
|
||
4161 .LVL477:
|
||
1551:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) return FR_DENIED; /* No free cluster */
|
||
4162 .loc 1 1551 13 view .LVU1371
|
||
4163 0084 FFF7FEFF bl create_chain
|
||
4164 .LVL478:
|
||
1552:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) return FR_INT_ERR; /* Internal error */
|
||
4165 .loc 1 1552 6 is_stmt 1 view .LVU1372
|
||
1552:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) return FR_INT_ERR; /* Internal error */
|
||
4166 .loc 1 1552 9 is_stmt 0 view .LVU1373
|
||
4167 0088 8146 mov r9, r0
|
||
4168 008a 0028 cmp r0, #0
|
||
4169 008c 3CD0 beq .L320
|
||
1553:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4170 .loc 1 1553 6 is_stmt 1 view .LVU1374
|
||
1553:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4171 .loc 1 1553 9 is_stmt 0 view .LVU1375
|
||
4172 008e 0128 cmp r0, #1
|
||
4173 0090 3CD0 beq .L321
|
||
1554:Middlewares/Third_Party/FatFs/src/ff.c **** /* Clean-up the stretched table */
|
||
4174 .loc 1 1554 6 is_stmt 1 view .LVU1376
|
||
1554:Middlewares/Third_Party/FatFs/src/ff.c **** /* Clean-up the stretched table */
|
||
4175 .loc 1 1554 9 is_stmt 0 view .LVU1377
|
||
4176 0092 B0F1FF3F cmp r0, #-1
|
||
4177 0096 3BD0 beq .L322
|
||
1556:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) return FR_DISK_ERR; /* Flush disk access window */
|
||
4178 .loc 1 1556 6 is_stmt 1 view .LVU1378
|
||
1557:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */
|
||
4179 .loc 1 1557 6 view .LVU1379
|
||
1557:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */
|
||
4180 .loc 1 1557 10 is_stmt 0 view .LVU1380
|
||
4181 0098 3046 mov r0, r6
|
||
4182 .LVL479:
|
||
1557:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */
|
||
4183 .loc 1 1557 10 view .LVU1381
|
||
4184 009a FFF7FEFF bl sync_window
|
||
4185 .LVL480:
|
||
1557:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */
|
||
4186 .loc 1 1557 9 discriminator 1 view .LVU1382
|
||
4187 009e 28B1 cbz r0, .L328
|
||
1557:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */
|
||
4188 .loc 1 1557 43 discriminator 1 view .LVU1383
|
||
4189 00a0 0120 movs r0, #1
|
||
4190 00a2 D3E7 b .L309
|
||
4191 .LVL481:
|
||
4192 .L327:
|
||
1549:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4193 .loc 1 1549 7 is_stmt 1 view .LVU1384
|
||
1549:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4194 .loc 1 1549 16 is_stmt 0 view .LVU1385
|
||
4195 00a4 0023 movs r3, #0
|
||
4196 00a6 EB61 str r3, [r5, #28]
|
||
ARM GAS /tmp/ccH7dUYB.s page 197
|
||
|
||
|
||
1549:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4197 .loc 1 1549 21 is_stmt 1 view .LVU1386
|
||
1549:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4198 .loc 1 1549 28 is_stmt 0 view .LVU1387
|
||
4199 00a8 0420 movs r0, #4
|
||
4200 .LVL482:
|
||
1549:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4201 .loc 1 1549 28 view .LVU1388
|
||
4202 00aa CFE7 b .L309
|
||
4203 .L328:
|
||
1558:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 0, fs->winsect = clust2sect(fs, clst); n < fs->csize; n++, fs->winsect++) { /* Fill t
|
||
4204 .loc 1 1558 6 is_stmt 1 view .LVU1389
|
||
4205 00ac B289 ldrh r2, [r6, #12]
|
||
4206 00ae 0021 movs r1, #0
|
||
4207 00b0 06F13400 add r0, r6, #52
|
||
4208 00b4 FFF7FEFF bl mem_set
|
||
4209 .LVL483:
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4210 .loc 1 1559 6 view .LVU1390
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4211 .loc 1 1559 32 is_stmt 0 view .LVU1391
|
||
4212 00b8 4946 mov r1, r9
|
||
4213 00ba 3046 mov r0, r6
|
||
4214 00bc FFF7FEFF bl clust2sect
|
||
4215 .LVL484:
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4216 .loc 1 1559 30 discriminator 1 view .LVU1392
|
||
4217 00c0 3063 str r0, [r6, #48]
|
||
4218 .LVL485:
|
||
4219 .L314:
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4220 .loc 1 1559 56 is_stmt 1 discriminator 1 view .LVU1393
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4221 .loc 1 1559 60 is_stmt 0 discriminator 1 view .LVU1394
|
||
4222 00c2 7389 ldrh r3, [r6, #10]
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4223 .loc 1 1559 56 discriminator 1 view .LVU1395
|
||
4224 00c4 9845 cmp r8, r3
|
||
4225 00c6 0BD2 bcs .L329
|
||
1560:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) return FR_DISK_ERR;
|
||
4226 .loc 1 1560 7 is_stmt 1 view .LVU1396
|
||
1560:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) return FR_DISK_ERR;
|
||
4227 .loc 1 1560 17 is_stmt 0 view .LVU1397
|
||
4228 00c8 0123 movs r3, #1
|
||
4229 00ca F370 strb r3, [r6, #3]
|
||
1561:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4230 .loc 1 1561 7 is_stmt 1 view .LVU1398
|
||
1561:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4231 .loc 1 1561 11 is_stmt 0 view .LVU1399
|
||
4232 00cc 3046 mov r0, r6
|
||
4233 00ce FFF7FEFF bl sync_window
|
||
4234 .LVL486:
|
||
1561:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4235 .loc 1 1561 10 discriminator 1 view .LVU1400
|
||
4236 00d2 F8B9 cbnz r0, .L324
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4237 .loc 1 1559 72 is_stmt 1 discriminator 2 view .LVU1401
|
||
ARM GAS /tmp/ccH7dUYB.s page 198
|
||
|
||
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4238 .loc 1 1559 70 is_stmt 0 discriminator 2 view .LVU1402
|
||
4239 00d4 08F10108 add r8, r8, #1
|
||
4240 .LVL487:
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4241 .loc 1 1559 76 discriminator 2 view .LVU1403
|
||
4242 00d8 336B ldr r3, [r6, #48]
|
||
1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
4243 .loc 1 1559 85 discriminator 2 view .LVU1404
|
||
4244 00da 0133 adds r3, r3, #1
|
||
4245 00dc 3363 str r3, [r6, #48]
|
||
4246 00de F0E7 b .L314
|
||
4247 .L329:
|
||
1563:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
4248 .loc 1 1563 6 is_stmt 1 view .LVU1405
|
||
1563:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
4249 .loc 1 1563 8 is_stmt 0 view .LVU1406
|
||
4250 00e0 336B ldr r3, [r6, #48]
|
||
1563:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
4251 .loc 1 1563 18 view .LVU1407
|
||
4252 00e2 A3EB0803 sub r3, r3, r8
|
||
4253 00e6 3363 str r3, [r6, #48]
|
||
4254 .LVL488:
|
||
4255 .L312:
|
||
1569:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = clust2sect(fs, clst);
|
||
4256 .loc 1 1569 5 is_stmt 1 view .LVU1408
|
||
1569:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = clust2sect(fs, clst);
|
||
4257 .loc 1 1569 15 is_stmt 0 view .LVU1409
|
||
4258 00e8 C5F81890 str r9, [r5, #24]
|
||
1570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4259 .loc 1 1570 5 is_stmt 1 view .LVU1410
|
||
1570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4260 .loc 1 1570 16 is_stmt 0 view .LVU1411
|
||
4261 00ec 4946 mov r1, r9
|
||
4262 00ee 3046 mov r0, r6
|
||
4263 00f0 FFF7FEFF bl clust2sect
|
||
4264 .LVL489:
|
||
1570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4265 .loc 1 1570 14 discriminator 1 view .LVU1412
|
||
4266 00f4 E861 str r0, [r5, #28]
|
||
4267 00f6 9EE7 b .L310
|
||
4268 .LVL490:
|
||
4269 .L316:
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4270 .loc 1 1531 105 discriminator 3 view .LVU1413
|
||
4271 00f8 0420 movs r0, #4
|
||
4272 .LVL491:
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4273 .loc 1 1531 105 discriminator 3 view .LVU1414
|
||
4274 00fa A7E7 b .L309
|
||
4275 .LVL492:
|
||
4276 .L317:
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4277 .loc 1 1531 105 discriminator 3 view .LVU1415
|
||
4278 00fc 0420 movs r0, #4
|
||
4279 .LVL493:
|
||
1531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 199
|
||
|
||
|
||
4280 .loc 1 1531 105 discriminator 3 view .LVU1416
|
||
4281 00fe A5E7 b .L309
|
||
4282 .LVL494:
|
||
4283 .L318:
|
||
1544:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4284 .loc 1 1544 27 discriminator 1 view .LVU1417
|
||
4285 0100 0220 movs r0, #2
|
||
4286 .LVL495:
|
||
1544:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4287 .loc 1 1544 27 discriminator 1 view .LVU1418
|
||
4288 0102 A3E7 b .L309
|
||
4289 .LVL496:
|
||
4290 .L319:
|
||
1545:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent) { /* Reached end of dynamic table */
|
||
4291 .loc 1 1545 36 discriminator 1 view .LVU1419
|
||
4292 0104 0120 movs r0, #1
|
||
4293 .LVL497:
|
||
1545:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent) { /* Reached end of dynamic table */
|
||
4294 .loc 1 1545 36 discriminator 1 view .LVU1420
|
||
4295 0106 A1E7 b .L309
|
||
4296 .LVL498:
|
||
4297 .L320:
|
||
1552:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) return FR_INT_ERR; /* Internal error */
|
||
4298 .loc 1 1552 28 discriminator 1 view .LVU1421
|
||
4299 0108 0720 movs r0, #7
|
||
4300 .LVL499:
|
||
1552:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) return FR_INT_ERR; /* Internal error */
|
||
4301 .loc 1 1552 28 discriminator 1 view .LVU1422
|
||
4302 010a 9FE7 b .L309
|
||
4303 .LVL500:
|
||
4304 .L321:
|
||
1553:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4305 .loc 1 1553 28 discriminator 1 view .LVU1423
|
||
4306 010c 0220 movs r0, #2
|
||
4307 .LVL501:
|
||
1553:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
|
||
4308 .loc 1 1553 28 discriminator 1 view .LVU1424
|
||
4309 010e 9DE7 b .L309
|
||
4310 .LVL502:
|
||
4311 .L322:
|
||
1554:Middlewares/Third_Party/FatFs/src/ff.c **** /* Clean-up the stretched table */
|
||
4312 .loc 1 1554 37 discriminator 1 view .LVU1425
|
||
4313 0110 0120 movs r0, #1
|
||
4314 .LVL503:
|
||
1554:Middlewares/Third_Party/FatFs/src/ff.c **** /* Clean-up the stretched table */
|
||
4315 .loc 1 1554 37 discriminator 1 view .LVU1426
|
||
4316 0112 9BE7 b .L309
|
||
4317 .LVL504:
|
||
4318 .L324:
|
||
1561:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4319 .loc 1 1561 44 discriminator 1 view .LVU1427
|
||
4320 0114 0120 movs r0, #1
|
||
4321 0116 99E7 b .L309
|
||
4322 .cfi_endproc
|
||
4323 .LFE1206:
|
||
4325 .section .text.dir_find,"ax",%progbits
|
||
4326 .align 1
|
||
ARM GAS /tmp/ccH7dUYB.s page 200
|
||
|
||
|
||
4327 .syntax unified
|
||
4328 .thumb
|
||
4329 .thumb_func
|
||
4331 dir_find:
|
||
4332 .LVL505:
|
||
4333 .LFB1211:
|
||
2213:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4334 .loc 1 2213 1 is_stmt 1 view -0
|
||
4335 .cfi_startproc
|
||
4336 @ args = 0, pretend = 0, frame = 0
|
||
4337 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2213:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4338 .loc 1 2213 1 is_stmt 0 view .LVU1429
|
||
4339 0000 70B5 push {r4, r5, r6, lr}
|
||
4340 .LCFI29:
|
||
4341 .cfi_def_cfa_offset 16
|
||
4342 .cfi_offset 4, -16
|
||
4343 .cfi_offset 5, -12
|
||
4344 .cfi_offset 6, -8
|
||
4345 .cfi_offset 14, -4
|
||
4346 0002 0446 mov r4, r0
|
||
2214:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
4347 .loc 1 2214 2 is_stmt 1 view .LVU1430
|
||
2215:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE c;
|
||
4348 .loc 1 2215 2 view .LVU1431
|
||
2215:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE c;
|
||
4349 .loc 1 2215 9 is_stmt 0 view .LVU1432
|
||
4350 0004 0668 ldr r6, [r0]
|
||
4351 .LVL506:
|
||
2216:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
4352 .loc 1 2216 2 is_stmt 1 view .LVU1433
|
||
2221:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
4353 .loc 1 2221 2 view .LVU1434
|
||
2221:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res;
|
||
4354 .loc 1 2221 8 is_stmt 0 view .LVU1435
|
||
4355 0006 0021 movs r1, #0
|
||
4356 0008 FFF7FEFF bl dir_sdi
|
||
4357 .LVL507:
|
||
2222:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4358 .loc 1 2222 2 is_stmt 1 view .LVU1436
|
||
2222:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4359 .loc 1 2222 5 is_stmt 0 view .LVU1437
|
||
4360 000c 0546 mov r5, r0
|
||
4361 000e 40B1 cbz r0, .L333
|
||
4362 .LVL508:
|
||
4363 .L331:
|
||
2281:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4364 .loc 1 2281 1 view .LVU1438
|
||
4365 0010 2846 mov r0, r5
|
||
4366 0012 70BD pop {r4, r5, r6, pc}
|
||
4367 .LVL509:
|
||
4368 .L332:
|
||
2277:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK);
|
||
4369 .loc 1 2277 3 is_stmt 1 view .LVU1439
|
||
2277:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK);
|
||
4370 .loc 1 2277 9 is_stmt 0 view .LVU1440
|
||
4371 0014 0021 movs r1, #0
|
||
ARM GAS /tmp/ccH7dUYB.s page 201
|
||
|
||
|
||
4372 0016 2046 mov r0, r4
|
||
4373 0018 FFF7FEFF bl dir_next
|
||
4374 .LVL510:
|
||
2278:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4375 .loc 1 2278 15 is_stmt 1 view .LVU1441
|
||
4376 001c 0546 mov r5, r0
|
||
4377 001e 0028 cmp r0, #0
|
||
4378 0020 F6D1 bne .L331
|
||
4379 .LVL511:
|
||
4380 .L333:
|
||
2247:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4381 .loc 1 2247 2 view .LVU1442
|
||
2248:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4382 .loc 1 2248 3 view .LVU1443
|
||
2248:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4383 .loc 1 2248 9 is_stmt 0 view .LVU1444
|
||
4384 0022 E169 ldr r1, [r4, #28]
|
||
4385 0024 3046 mov r0, r6
|
||
4386 .LVL512:
|
||
2248:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4387 .loc 1 2248 9 view .LVU1445
|
||
4388 0026 FFF7FEFF bl move_window
|
||
4389 .LVL513:
|
||
2249:Middlewares/Third_Party/FatFs/src/ff.c **** c = dp->dir[DIR_Name];
|
||
4390 .loc 1 2249 3 is_stmt 1 view .LVU1446
|
||
2249:Middlewares/Third_Party/FatFs/src/ff.c **** c = dp->dir[DIR_Name];
|
||
4391 .loc 1 2249 6 is_stmt 0 view .LVU1447
|
||
4392 002a 0546 mov r5, r0
|
||
4393 002c 0028 cmp r0, #0
|
||
4394 002e EFD1 bne .L331
|
||
2250:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) { res = FR_NO_FILE; break; } /* Reached to end of table */
|
||
4395 .loc 1 2250 3 is_stmt 1 view .LVU1448
|
||
2250:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) { res = FR_NO_FILE; break; } /* Reached to end of table */
|
||
4396 .loc 1 2250 9 is_stmt 0 view .LVU1449
|
||
4397 0030 206A ldr r0, [r4, #32]
|
||
4398 .LVL514:
|
||
2250:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) { res = FR_NO_FILE; break; } /* Reached to end of table */
|
||
4399 .loc 1 2250 5 view .LVU1450
|
||
4400 0032 0378 ldrb r3, [r0] @ zero_extendqisi2
|
||
4401 .LVL515:
|
||
2251:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4402 .loc 1 2251 3 is_stmt 1 view .LVU1451
|
||
2251:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4403 .loc 1 2251 6 is_stmt 0 view .LVU1452
|
||
4404 0034 7BB1 cbz r3, .L334
|
||
2274:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->dir[DIR_Attr] & AM_VOL) && !mem_cmp(dp->dir, dp->fn, 11)) break; /* Is it a valid entry
|
||
4405 .loc 1 2274 3 is_stmt 1 view .LVU1453
|
||
2274:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->dir[DIR_Attr] & AM_VOL) && !mem_cmp(dp->dir, dp->fn, 11)) break; /* Is it a valid entry
|
||
4406 .loc 1 2274 25 is_stmt 0 view .LVU1454
|
||
4407 0036 C37A ldrb r3, [r0, #11] @ zero_extendqisi2
|
||
2274:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->dir[DIR_Attr] & AM_VOL) && !mem_cmp(dp->dir, dp->fn, 11)) break; /* Is it a valid entry
|
||
4408 .loc 1 2274 36 view .LVU1455
|
||
4409 0038 03F03F03 and r3, r3, #63
|
||
2274:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->dir[DIR_Attr] & AM_VOL) && !mem_cmp(dp->dir, dp->fn, 11)) break; /* Is it a valid entry
|
||
4410 .loc 1 2274 16 view .LVU1456
|
||
4411 003c A371 strb r3, [r4, #6]
|
||
4412 .LVL516:
|
||
ARM GAS /tmp/ccH7dUYB.s page 202
|
||
|
||
|
||
2275:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4413 .loc 1 2275 3 is_stmt 1 view .LVU1457
|
||
2275:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4414 .loc 1 2275 16 is_stmt 0 view .LVU1458
|
||
4415 003e C37A ldrb r3, [r0, #11] @ zero_extendqisi2
|
||
2275:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4416 .loc 1 2275 6 view .LVU1459
|
||
4417 0040 13F0080F tst r3, #8
|
||
4418 0044 E6D1 bne .L332
|
||
2275:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4419 .loc 1 2275 41 discriminator 1 view .LVU1460
|
||
4420 0046 0B22 movs r2, #11
|
||
4421 0048 04F12401 add r1, r4, #36
|
||
4422 004c FFF7FEFF bl mem_cmp
|
||
4423 .LVL517:
|
||
2275:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4424 .loc 1 2275 37 discriminator 1 view .LVU1461
|
||
4425 0050 0028 cmp r0, #0
|
||
4426 0052 DFD1 bne .L332
|
||
4427 0054 DCE7 b .L331
|
||
4428 .LVL518:
|
||
4429 .L334:
|
||
2251:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4430 .loc 1 2251 21 discriminator 1 view .LVU1462
|
||
4431 0056 0425 movs r5, #4
|
||
4432 .LVL519:
|
||
2251:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4433 .loc 1 2251 21 discriminator 1 view .LVU1463
|
||
4434 0058 DAE7 b .L331
|
||
4435 .cfi_endproc
|
||
4436 .LFE1211:
|
||
4438 .section .text.follow_path,"ax",%progbits
|
||
4439 .align 1
|
||
4440 .syntax unified
|
||
4441 .thumb
|
||
4442 .thumb_func
|
||
4444 follow_path:
|
||
4445 .LVL520:
|
||
4446 .LFB1216:
|
||
2817:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4447 .loc 1 2817 1 is_stmt 1 view -0
|
||
4448 .cfi_startproc
|
||
4449 @ args = 0, pretend = 0, frame = 8
|
||
4450 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2817:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4451 .loc 1 2817 1 is_stmt 0 view .LVU1465
|
||
4452 0000 30B5 push {r4, r5, lr}
|
||
4453 .LCFI30:
|
||
4454 .cfi_def_cfa_offset 12
|
||
4455 .cfi_offset 4, -12
|
||
4456 .cfi_offset 5, -8
|
||
4457 .cfi_offset 14, -4
|
||
4458 0002 83B0 sub sp, sp, #12
|
||
4459 .LCFI31:
|
||
4460 .cfi_def_cfa_offset 24
|
||
4461 0004 0446 mov r4, r0
|
||
4462 0006 0191 str r1, [sp, #4]
|
||
ARM GAS /tmp/ccH7dUYB.s page 203
|
||
|
||
|
||
2818:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE ns;
|
||
4463 .loc 1 2818 2 is_stmt 1 view .LVU1466
|
||
2819:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID *obj = &dp->obj;
|
||
4464 .loc 1 2819 2 view .LVU1467
|
||
2820:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = obj->fs;
|
||
4465 .loc 1 2820 2 view .LVU1468
|
||
4466 .LVL521:
|
||
2821:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4467 .loc 1 2821 2 view .LVU1469
|
||
2821:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4468 .loc 1 2821 9 is_stmt 0 view .LVU1470
|
||
4469 0008 0568 ldr r5, [r0]
|
||
4470 .LVL522:
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4471 .loc 1 2830 3 is_stmt 1 view .LVU1471
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4472 .loc 1 2830 9 is_stmt 0 view .LVU1472
|
||
4473 000a 01E0 b .L337
|
||
4474 .L338:
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4475 .loc 1 2830 41 is_stmt 1 discriminator 2 view .LVU1473
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4476 .loc 1 2830 45 is_stmt 0 discriminator 2 view .LVU1474
|
||
4477 000c 0133 adds r3, r3, #1
|
||
4478 000e 0193 str r3, [sp, #4]
|
||
4479 .L337:
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4480 .loc 1 2830 23 is_stmt 1 discriminator 1 view .LVU1475
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4481 .loc 1 2830 10 is_stmt 0 discriminator 1 view .LVU1476
|
||
4482 0010 019B ldr r3, [sp, #4]
|
||
4483 0012 1A78 ldrb r2, [r3] @ zero_extendqisi2
|
||
2830:Middlewares/Third_Party/FatFs/src/ff.c **** obj->sclust = 0; /* Start from root directory */
|
||
4484 .loc 1 2830 23 discriminator 1 view .LVU1477
|
||
4485 0014 2F2A cmp r2, #47
|
||
4486 0016 F9D0 beq .L338
|
||
4487 0018 5C2A cmp r2, #92
|
||
4488 001a F7D0 beq .L338
|
||
2831:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4489 .loc 1 2831 3 is_stmt 1 view .LVU1478
|
||
2831:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4490 .loc 1 2831 15 is_stmt 0 view .LVU1479
|
||
4491 001c 0022 movs r2, #0
|
||
4492 001e A260 str r2, [r4, #8]
|
||
2850:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = NS_NONAME;
|
||
4493 .loc 1 2850 2 is_stmt 1 view .LVU1480
|
||
2850:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = NS_NONAME;
|
||
4494 .loc 1 2850 12 is_stmt 0 view .LVU1481
|
||
4495 0020 1B78 ldrb r3, [r3] @ zero_extendqisi2
|
||
2850:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = NS_NONAME;
|
||
4496 .loc 1 2850 5 view .LVU1482
|
||
4497 0022 1F2B cmp r3, #31
|
||
4498 0024 21D9 bls .L345
|
||
4499 .LVL523:
|
||
4500 .L339:
|
||
2855:Middlewares/Third_Party/FatFs/src/ff.c **** res = create_name(dp, &path); /* Get a segment name of the path */
|
||
4501 .loc 1 2855 3 is_stmt 1 view .LVU1483
|
||
ARM GAS /tmp/ccH7dUYB.s page 204
|
||
|
||
|
||
2856:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4502 .loc 1 2856 4 view .LVU1484
|
||
2856:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4503 .loc 1 2856 10 is_stmt 0 view .LVU1485
|
||
4504 0026 01A9 add r1, sp, #4
|
||
4505 0028 2046 mov r0, r4
|
||
4506 002a FFF7FEFF bl create_name
|
||
4507 .LVL524:
|
||
2857:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_find(dp); /* Find an object with the segment name */
|
||
4508 .loc 1 2857 4 is_stmt 1 view .LVU1486
|
||
2857:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_find(dp); /* Find an object with the segment name */
|
||
4509 .loc 1 2857 7 is_stmt 0 view .LVU1487
|
||
4510 002e 0346 mov r3, r0
|
||
4511 0030 18BB cbnz r0, .L340
|
||
2858:Middlewares/Third_Party/FatFs/src/ff.c **** ns = dp->fn[NSFLAG];
|
||
4512 .loc 1 2858 4 is_stmt 1 view .LVU1488
|
||
2858:Middlewares/Third_Party/FatFs/src/ff.c **** ns = dp->fn[NSFLAG];
|
||
4513 .loc 1 2858 10 is_stmt 0 view .LVU1489
|
||
4514 0032 2046 mov r0, r4
|
||
4515 .LVL525:
|
||
2858:Middlewares/Third_Party/FatFs/src/ff.c **** ns = dp->fn[NSFLAG];
|
||
4516 .loc 1 2858 10 view .LVU1490
|
||
4517 0034 FFF7FEFF bl dir_find
|
||
4518 .LVL526:
|
||
2859:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) { /* Failed to find the object */
|
||
4519 .loc 1 2859 4 is_stmt 1 view .LVU1491
|
||
2859:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) { /* Failed to find the object */
|
||
4520 .loc 1 2859 7 is_stmt 0 view .LVU1492
|
||
4521 0038 94F82F20 ldrb r2, [r4, #47] @ zero_extendqisi2
|
||
4522 .LVL527:
|
||
2860:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* Object is not found */
|
||
4523 .loc 1 2860 4 is_stmt 1 view .LVU1493
|
||
2860:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* Object is not found */
|
||
4524 .loc 1 2860 7 is_stmt 0 view .LVU1494
|
||
4525 003c 0346 mov r3, r0
|
||
4526 003e F8B9 cbnz r0, .L346
|
||
2872:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get into the sub-directory */
|
||
4527 .loc 1 2872 4 is_stmt 1 view .LVU1495
|
||
2872:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get into the sub-directory */
|
||
4528 .loc 1 2872 7 is_stmt 0 view .LVU1496
|
||
4529 0040 12F0040F tst r2, #4
|
||
4530 0044 19D1 bne .L340
|
||
2874:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_PATH; break;
|
||
4531 .loc 1 2874 4 is_stmt 1 view .LVU1497
|
||
2874:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_PATH; break;
|
||
4532 .loc 1 2874 13 is_stmt 0 view .LVU1498
|
||
4533 0046 A379 ldrb r3, [r4, #6] @ zero_extendqisi2
|
||
2874:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_PATH; break;
|
||
4534 .loc 1 2874 7 view .LVU1499
|
||
4535 0048 13F0100F tst r3, #16
|
||
4536 004c 1FD0 beq .L343
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4537 .loc 1 2888 5 is_stmt 1 view .LVU1500
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4538 .loc 1 2888 32 is_stmt 0 view .LVU1501
|
||
4539 004e 05F13401 add r1, r5, #52
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 205
|
||
|
||
|
||
4540 .loc 1 2888 44 view .LVU1502
|
||
4541 0052 6369 ldr r3, [r4, #20]
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4542 .loc 1 2888 53 view .LVU1503
|
||
4543 0054 AA89 ldrh r2, [r5, #12]
|
||
4544 .LVL528:
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4545 .loc 1 2888 51 view .LVU1504
|
||
4546 0056 B3FBF2F0 udiv r0, r3, r2
|
||
4547 .LVL529:
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4548 .loc 1 2888 51 view .LVU1505
|
||
4549 005a 02FB1033 mls r3, r2, r0, r3
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4550 .loc 1 2888 19 view .LVU1506
|
||
4551 005e 1944 add r1, r1, r3
|
||
4552 0060 2846 mov r0, r5
|
||
4553 0062 FFF7FEFF bl ld_clust
|
||
4554 .LVL530:
|
||
2888:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4555 .loc 1 2888 17 discriminator 1 view .LVU1507
|
||
4556 0066 A060 str r0, [r4, #8]
|
||
2855:Middlewares/Third_Party/FatFs/src/ff.c **** res = create_name(dp, &path); /* Get a segment name of the path */
|
||
4557 .loc 1 2855 3 is_stmt 1 view .LVU1508
|
||
2856:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4558 .loc 1 2856 8 is_stmt 0 view .LVU1509
|
||
4559 0068 DDE7 b .L339
|
||
4560 .LVL531:
|
||
4561 .L345:
|
||
2851:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0);
|
||
4562 .loc 1 2851 3 is_stmt 1 view .LVU1510
|
||
2851:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0);
|
||
4563 .loc 1 2851 18 is_stmt 0 view .LVU1511
|
||
4564 006a 8023 movs r3, #128
|
||
4565 006c 84F82F30 strb r3, [r4, #47]
|
||
2852:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4566 .loc 1 2852 3 is_stmt 1 view .LVU1512
|
||
2852:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4567 .loc 1 2852 9 is_stmt 0 view .LVU1513
|
||
4568 0070 1146 mov r1, r2
|
||
4569 .LVL532:
|
||
2852:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4570 .loc 1 2852 9 view .LVU1514
|
||
4571 0072 2046 mov r0, r4
|
||
4572 .LVL533:
|
||
2852:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4573 .loc 1 2852 9 view .LVU1515
|
||
4574 0074 FFF7FEFF bl dir_sdi
|
||
4575 .LVL534:
|
||
4576 0078 0346 mov r3, r0
|
||
4577 .LVL535:
|
||
4578 .L340:
|
||
2893:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4579 .loc 1 2893 2 is_stmt 1 view .LVU1516
|
||
2894:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4580 .loc 1 2894 1 is_stmt 0 view .LVU1517
|
||
4581 007a 1846 mov r0, r3
|
||
ARM GAS /tmp/ccH7dUYB.s page 206
|
||
|
||
|
||
4582 007c 03B0 add sp, sp, #12
|
||
4583 .LCFI32:
|
||
4584 .cfi_remember_state
|
||
4585 .cfi_def_cfa_offset 12
|
||
4586 @ sp needed
|
||
4587 007e 30BD pop {r4, r5, pc}
|
||
4588 .LVL536:
|
||
4589 .L346:
|
||
4590 .LCFI33:
|
||
4591 .cfi_restore_state
|
||
2861:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && (ns & NS_DOT)) { /* If dot entry is not exist, stay there */
|
||
4592 .loc 1 2861 5 is_stmt 1 view .LVU1518
|
||
2861:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && (ns & NS_DOT)) { /* If dot entry is not exist, stay there */
|
||
4593 .loc 1 2861 8 is_stmt 0 view .LVU1519
|
||
4594 0080 0428 cmp r0, #4
|
||
4595 0082 FAD1 bne .L340
|
||
2862:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(ns & NS_LAST)) continue; /* Continue to follow if not last segment */
|
||
4596 .loc 1 2862 6 is_stmt 1 view .LVU1520
|
||
2867:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4597 .loc 1 2867 7 view .LVU1521
|
||
2867:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4598 .loc 1 2867 10 is_stmt 0 view .LVU1522
|
||
4599 0084 12F0040F tst r2, #4
|
||
4600 0088 F7D1 bne .L340
|
||
2867:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4601 .loc 1 2867 32 discriminator 1 view .LVU1523
|
||
4602 008a 0523 movs r3, #5
|
||
4603 008c F5E7 b .L340
|
||
4604 .L343:
|
||
2875:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4605 .loc 1 2875 9 view .LVU1524
|
||
4606 008e 0523 movs r3, #5
|
||
4607 0090 F3E7 b .L340
|
||
4608 .cfi_endproc
|
||
4609 .LFE1216:
|
||
4611 .section .text.dir_alloc,"ax",%progbits
|
||
4612 .align 1
|
||
4613 .syntax unified
|
||
4614 .thumb
|
||
4615 .thumb_func
|
||
4617 dir_alloc:
|
||
4618 .LVL537:
|
||
4619 .LFB1207:
|
||
1593:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4620 .loc 1 1593 1 is_stmt 1 view -0
|
||
4621 .cfi_startproc
|
||
4622 @ args = 0, pretend = 0, frame = 0
|
||
4623 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1593:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4624 .loc 1 1593 1 is_stmt 0 view .LVU1526
|
||
4625 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
|
||
4626 .LCFI34:
|
||
4627 .cfi_def_cfa_offset 24
|
||
4628 .cfi_offset 3, -24
|
||
4629 .cfi_offset 4, -20
|
||
4630 .cfi_offset 5, -16
|
||
4631 .cfi_offset 6, -12
|
||
ARM GAS /tmp/ccH7dUYB.s page 207
|
||
|
||
|
||
4632 .cfi_offset 7, -8
|
||
4633 .cfi_offset 14, -4
|
||
4634 0002 0446 mov r4, r0
|
||
4635 0004 0E46 mov r6, r1
|
||
1594:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n;
|
||
4636 .loc 1 1594 2 is_stmt 1 view .LVU1527
|
||
1595:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
4637 .loc 1 1595 2 view .LVU1528
|
||
1596:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4638 .loc 1 1596 2 view .LVU1529
|
||
1596:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4639 .loc 1 1596 9 is_stmt 0 view .LVU1530
|
||
4640 0006 0768 ldr r7, [r0]
|
||
4641 .LVL538:
|
||
1599:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4642 .loc 1 1599 2 is_stmt 1 view .LVU1531
|
||
1599:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4643 .loc 1 1599 8 is_stmt 0 view .LVU1532
|
||
4644 0008 0021 movs r1, #0
|
||
4645 .LVL539:
|
||
1599:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4646 .loc 1 1599 8 view .LVU1533
|
||
4647 000a FFF7FEFF bl dir_sdi
|
||
4648 .LVL540:
|
||
1600:Middlewares/Third_Party/FatFs/src/ff.c **** n = 0;
|
||
4649 .loc 1 1600 2 is_stmt 1 view .LVU1534
|
||
1600:Middlewares/Third_Party/FatFs/src/ff.c **** n = 0;
|
||
4650 .loc 1 1600 5 is_stmt 0 view .LVU1535
|
||
4651 000e 0246 mov r2, r0
|
||
4652 0010 B8B9 cbnz r0, .L348
|
||
1601:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
4653 .loc 1 1601 5 view .LVU1536
|
||
4654 0012 0025 movs r5, #0
|
||
4655 0014 06E0 b .L350
|
||
4656 .LVL541:
|
||
4657 .L352:
|
||
1612:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4658 .loc 1 1612 7 view .LVU1537
|
||
4659 0016 0025 movs r5, #0
|
||
4660 .LVL542:
|
||
4661 .L349:
|
||
1614:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK); /* Next entry with table stretch enabled */
|
||
4662 .loc 1 1614 4 is_stmt 1 view .LVU1538
|
||
1614:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK); /* Next entry with table stretch enabled */
|
||
4663 .loc 1 1614 10 is_stmt 0 view .LVU1539
|
||
4664 0018 0121 movs r1, #1
|
||
4665 001a 2046 mov r0, r4
|
||
4666 .LVL543:
|
||
1614:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK); /* Next entry with table stretch enabled */
|
||
4667 .loc 1 1614 10 view .LVU1540
|
||
4668 001c FFF7FEFF bl dir_next
|
||
4669 .LVL544:
|
||
1615:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4670 .loc 1 1615 16 is_stmt 1 view .LVU1541
|
||
4671 0020 0246 mov r2, r0
|
||
4672 0022 70B9 cbnz r0, .L348
|
||
4673 .LVL545:
|
||
ARM GAS /tmp/ccH7dUYB.s page 208
|
||
|
||
|
||
4674 .L350:
|
||
1602:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4675 .loc 1 1602 3 view .LVU1542
|
||
1603:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4676 .loc 1 1603 4 view .LVU1543
|
||
1603:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4677 .loc 1 1603 10 is_stmt 0 view .LVU1544
|
||
4678 0024 E169 ldr r1, [r4, #28]
|
||
4679 0026 3846 mov r0, r7
|
||
4680 .LVL546:
|
||
1603:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4681 .loc 1 1603 10 view .LVU1545
|
||
4682 0028 FFF7FEFF bl move_window
|
||
4683 .LVL547:
|
||
1604:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4684 .loc 1 1604 4 is_stmt 1 view .LVU1546
|
||
1604:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
4685 .loc 1 1604 7 is_stmt 0 view .LVU1547
|
||
4686 002c 0246 mov r2, r0
|
||
4687 002e 40B9 cbnz r0, .L348
|
||
1608:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4688 .loc 1 1608 4 is_stmt 1 view .LVU1548
|
||
1608:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4689 .loc 1 1608 10 is_stmt 0 view .LVU1549
|
||
4690 0030 236A ldr r3, [r4, #32]
|
||
1608:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4691 .loc 1 1608 15 view .LVU1550
|
||
4692 0032 1B78 ldrb r3, [r3] @ zero_extendqisi2
|
||
1608:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
4693 .loc 1 1608 7 view .LVU1551
|
||
4694 0034 002B cmp r3, #0
|
||
4695 0036 18BF it ne
|
||
4696 0038 E52B cmpne r3, #229
|
||
4697 003a ECD1 bne .L352
|
||
1610:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4698 .loc 1 1610 5 is_stmt 1 view .LVU1552
|
||
1610:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4699 .loc 1 1610 8 is_stmt 0 view .LVU1553
|
||
4700 003c 0135 adds r5, r5, #1
|
||
4701 .LVL548:
|
||
1610:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
4702 .loc 1 1610 8 view .LVU1554
|
||
4703 003e B542 cmp r5, r6
|
||
4704 0040 EAD1 bne .L349
|
||
4705 .LVL549:
|
||
4706 .L348:
|
||
1618:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4707 .loc 1 1618 2 is_stmt 1 view .LVU1555
|
||
1618:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4708 .loc 1 1618 5 is_stmt 0 view .LVU1556
|
||
4709 0042 042A cmp r2, #4
|
||
4710 0044 01D0 beq .L355
|
||
4711 .LVL550:
|
||
4712 .L351:
|
||
1619:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4713 .loc 1 1619 2 is_stmt 1 view .LVU1557
|
||
1620:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 209
|
||
|
||
|
||
4714 .loc 1 1620 1 is_stmt 0 view .LVU1558
|
||
4715 0046 1046 mov r0, r2
|
||
4716 0048 F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
4717 .LVL551:
|
||
4718 .L355:
|
||
1618:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4719 .loc 1 1618 29 discriminator 1 view .LVU1559
|
||
4720 004a 0722 movs r2, #7
|
||
4721 .LVL552:
|
||
1618:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4722 .loc 1 1618 29 discriminator 1 view .LVU1560
|
||
4723 004c FBE7 b .L351
|
||
4724 .cfi_endproc
|
||
4725 .LFE1207:
|
||
4727 .section .text.dir_register,"ax",%progbits
|
||
4728 .align 1
|
||
4729 .syntax unified
|
||
4730 .thumb
|
||
4731 .thumb_func
|
||
4733 dir_register:
|
||
4734 .LVL553:
|
||
4735 .LFB1212:
|
||
2295:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4736 .loc 1 2295 1 is_stmt 1 view -0
|
||
4737 .cfi_startproc
|
||
4738 @ args = 0, pretend = 0, frame = 0
|
||
4739 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2295:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4740 .loc 1 2295 1 is_stmt 0 view .LVU1562
|
||
4741 0000 70B5 push {r4, r5, r6, lr}
|
||
4742 .LCFI35:
|
||
4743 .cfi_def_cfa_offset 16
|
||
4744 .cfi_offset 4, -16
|
||
4745 .cfi_offset 5, -12
|
||
4746 .cfi_offset 6, -8
|
||
4747 .cfi_offset 14, -4
|
||
4748 0002 0446 mov r4, r0
|
||
2296:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
4749 .loc 1 2296 2 is_stmt 1 view .LVU1563
|
||
2297:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4750 .loc 1 2297 2 view .LVU1564
|
||
2297:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4751 .loc 1 2297 9 is_stmt 0 view .LVU1565
|
||
4752 0004 0668 ldr r6, [r0]
|
||
4753 .LVL554:
|
||
2366:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4754 .loc 1 2366 2 is_stmt 1 view .LVU1566
|
||
2366:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4755 .loc 1 2366 8 is_stmt 0 view .LVU1567
|
||
4756 0006 0121 movs r1, #1
|
||
4757 0008 FFF7FEFF bl dir_alloc
|
||
4758 .LVL555:
|
||
2371:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4759 .loc 1 2371 2 is_stmt 1 view .LVU1568
|
||
2371:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4760 .loc 1 2371 5 is_stmt 0 view .LVU1569
|
||
4761 000c 0546 mov r5, r0
|
||
ARM GAS /tmp/ccH7dUYB.s page 210
|
||
|
||
|
||
4762 000e 08B1 cbz r0, .L359
|
||
4763 .LVL556:
|
||
4764 .L357:
|
||
2383:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4765 .loc 1 2383 2 is_stmt 1 view .LVU1570
|
||
2384:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4766 .loc 1 2384 1 is_stmt 0 view .LVU1571
|
||
4767 0010 2846 mov r0, r5
|
||
4768 0012 70BD pop {r4, r5, r6, pc}
|
||
4769 .LVL557:
|
||
4770 .L359:
|
||
2372:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4771 .loc 1 2372 3 is_stmt 1 view .LVU1572
|
||
2372:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4772 .loc 1 2372 9 is_stmt 0 view .LVU1573
|
||
4773 0014 E169 ldr r1, [r4, #28]
|
||
4774 0016 3046 mov r0, r6
|
||
4775 .LVL558:
|
||
2372:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4776 .loc 1 2372 9 view .LVU1574
|
||
4777 0018 FFF7FEFF bl move_window
|
||
4778 .LVL559:
|
||
2373:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dp->dir, 0, SZDIRE); /* Clean the entry */
|
||
4779 .loc 1 2373 3 is_stmt 1 view .LVU1575
|
||
2373:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dp->dir, 0, SZDIRE); /* Clean the entry */
|
||
4780 .loc 1 2373 6 is_stmt 0 view .LVU1576
|
||
4781 001c 0546 mov r5, r0
|
||
4782 001e 0028 cmp r0, #0
|
||
4783 0020 F6D1 bne .L357
|
||
2374:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dp->dir + DIR_Name, dp->fn, 11); /* Put SFN */
|
||
4784 .loc 1 2374 4 is_stmt 1 view .LVU1577
|
||
4785 0022 2022 movs r2, #32
|
||
4786 0024 0021 movs r1, #0
|
||
4787 0026 206A ldr r0, [r4, #32]
|
||
4788 .LVL560:
|
||
2374:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dp->dir + DIR_Name, dp->fn, 11); /* Put SFN */
|
||
4789 .loc 1 2374 4 is_stmt 0 view .LVU1578
|
||
4790 0028 FFF7FEFF bl mem_set
|
||
4791 .LVL561:
|
||
2375:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
4792 .loc 1 2375 4 is_stmt 1 view .LVU1579
|
||
4793 002c 0B22 movs r2, #11
|
||
4794 002e 04F12401 add r1, r4, #36
|
||
4795 0032 206A ldr r0, [r4, #32]
|
||
4796 0034 FFF7FEFF bl mem_cpy
|
||
4797 .LVL562:
|
||
2379:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4798 .loc 1 2379 4 view .LVU1580
|
||
2379:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4799 .loc 1 2379 14 is_stmt 0 view .LVU1581
|
||
4800 0038 0123 movs r3, #1
|
||
4801 003a F370 strb r3, [r6, #3]
|
||
4802 003c E8E7 b .L357
|
||
4803 .cfi_endproc
|
||
4804 .LFE1212:
|
||
4806 .section .text.dir_read,"ax",%progbits
|
||
4807 .align 1
|
||
ARM GAS /tmp/ccH7dUYB.s page 211
|
||
|
||
|
||
4808 .syntax unified
|
||
4809 .thumb
|
||
4810 .thumb_func
|
||
4812 dir_read:
|
||
4813 .LVL563:
|
||
4814 .LFB1210:
|
||
2135:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_NO_FILE;
|
||
4815 .loc 1 2135 1 is_stmt 1 view -0
|
||
4816 .cfi_startproc
|
||
4817 @ args = 0, pretend = 0, frame = 0
|
||
4818 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2135:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res = FR_NO_FILE;
|
||
4819 .loc 1 2135 1 is_stmt 0 view .LVU1583
|
||
4820 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
|
||
4821 .LCFI36:
|
||
4822 .cfi_def_cfa_offset 24
|
||
4823 .cfi_offset 3, -24
|
||
4824 .cfi_offset 4, -20
|
||
4825 .cfi_offset 5, -16
|
||
4826 .cfi_offset 6, -12
|
||
4827 .cfi_offset 7, -8
|
||
4828 .cfi_offset 14, -4
|
||
4829 0002 0446 mov r4, r0
|
||
4830 0004 0E46 mov r6, r1
|
||
2136:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
4831 .loc 1 2136 2 is_stmt 1 view .LVU1584
|
||
4832 .LVL564:
|
||
2137:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE a, c;
|
||
4833 .loc 1 2137 2 view .LVU1585
|
||
2137:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE a, c;
|
||
4834 .loc 1 2137 9 is_stmt 0 view .LVU1586
|
||
4835 0006 0568 ldr r5, [r0]
|
||
4836 .LVL565:
|
||
2138:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0
|
||
4837 .loc 1 2138 2 is_stmt 1 view .LVU1587
|
||
2143:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4838 .loc 1 2143 2 view .LVU1588
|
||
2136:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs = dp->obj.fs;
|
||
4839 .loc 1 2136 10 is_stmt 0 view .LVU1589
|
||
4840 0008 0427 movs r7, #4
|
||
2143:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4841 .loc 1 2143 8 view .LVU1590
|
||
4842 000a 05E0 b .L361
|
||
4843 .LVL566:
|
||
4844 .L363:
|
||
2193:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4845 .loc 1 2193 3 is_stmt 1 view .LVU1591
|
||
2193:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4846 .loc 1 2193 9 is_stmt 0 view .LVU1592
|
||
4847 000c 0021 movs r1, #0
|
||
4848 000e 2046 mov r0, r4
|
||
4849 .LVL567:
|
||
2193:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4850 .loc 1 2193 9 view .LVU1593
|
||
4851 0010 FFF7FEFF bl dir_next
|
||
4852 .LVL568:
|
||
2194:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 212
|
||
|
||
|
||
4853 .loc 1 2194 3 is_stmt 1 view .LVU1594
|
||
2194:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4854 .loc 1 2194 6 is_stmt 0 view .LVU1595
|
||
4855 0014 0746 mov r7, r0
|
||
4856 0016 E8B9 cbnz r0, .L362
|
||
4857 .LVL569:
|
||
4858 .L361:
|
||
2143:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4859 .loc 1 2143 9 is_stmt 1 view .LVU1596
|
||
2143:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4860 .loc 1 2143 11 is_stmt 0 view .LVU1597
|
||
4861 0018 E169 ldr r1, [r4, #28]
|
||
2143:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect);
|
||
4862 .loc 1 2143 9 view .LVU1598
|
||
4863 001a D9B1 cbz r1, .L362
|
||
2144:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4864 .loc 1 2144 3 is_stmt 1 view .LVU1599
|
||
2144:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
4865 .loc 1 2144 9 is_stmt 0 view .LVU1600
|
||
4866 001c 2846 mov r0, r5
|
||
4867 001e FFF7FEFF bl move_window
|
||
4868 .LVL570:
|
||
2145:Middlewares/Third_Party/FatFs/src/ff.c **** c = dp->dir[DIR_Name]; /* Test for the entry type */
|
||
4869 .loc 1 2145 3 is_stmt 1 view .LVU1601
|
||
2145:Middlewares/Third_Party/FatFs/src/ff.c **** c = dp->dir[DIR_Name]; /* Test for the entry type */
|
||
4870 .loc 1 2145 6 is_stmt 0 view .LVU1602
|
||
4871 0022 0746 mov r7, r0
|
||
4872 0024 B0B9 cbnz r0, .L362
|
||
2146:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) {
|
||
4873 .loc 1 2146 3 is_stmt 1 view .LVU1603
|
||
2146:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) {
|
||
4874 .loc 1 2146 9 is_stmt 0 view .LVU1604
|
||
4875 0026 236A ldr r3, [r4, #32]
|
||
2146:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) {
|
||
4876 .loc 1 2146 5 view .LVU1605
|
||
4877 0028 1A78 ldrb r2, [r3] @ zero_extendqisi2
|
||
4878 .LVL571:
|
||
2147:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE; break; /* Reached to end of the directory */
|
||
4879 .loc 1 2147 3 is_stmt 1 view .LVU1606
|
||
2147:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE; break; /* Reached to end of the directory */
|
||
4880 .loc 1 2147 6 is_stmt 0 view .LVU1607
|
||
4881 002a 92B1 cbz r2, .L366
|
||
2167:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4882 .loc 1 2167 4 is_stmt 1 view .LVU1608
|
||
2167:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4883 .loc 1 2167 30 is_stmt 0 view .LVU1609
|
||
4884 002c DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
|
||
2167:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4885 .loc 1 2167 21 view .LVU1610
|
||
4886 002e 03F03F03 and r3, r3, #63
|
||
4887 .LVL572:
|
||
2167:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */
|
||
4888 .loc 1 2167 17 view .LVU1611
|
||
4889 0032 A371 strb r3, [r4, #6]
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
4890 .loc 1 2188 4 is_stmt 1 view .LVU1612
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
ARM GAS /tmp/ccH7dUYB.s page 213
|
||
|
||
|
||
4891 .loc 1 2188 7 is_stmt 0 view .LVU1613
|
||
4892 0034 E52A cmp r2, #229
|
||
4893 0036 18BF it ne
|
||
4894 0038 2E2A cmpne r2, #46
|
||
4895 003a E7D0 beq .L363
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
4896 .loc 1 2188 30 discriminator 1 view .LVU1614
|
||
4897 003c 0F2B cmp r3, #15
|
||
4898 003e E5D0 beq .L363
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
4899 .loc 1 2188 57 discriminator 2 view .LVU1615
|
||
4900 0040 23F02003 bic r3, r3, #32
|
||
4901 .LVL573:
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
4902 .loc 1 2188 48 discriminator 2 view .LVU1616
|
||
4903 0044 082B cmp r3, #8
|
||
4904 0046 14BF ite ne
|
||
4905 0048 0023 movne r3, #0
|
||
4906 004a 0123 moveq r3, #1
|
||
2188:Middlewares/Third_Party/FatFs/src/ff.c **** break;
|
||
4907 .loc 1 2188 45 discriminator 2 view .LVU1617
|
||
4908 004c B342 cmp r3, r6
|
||
4909 004e DDD1 bne .L363
|
||
4910 0050 00E0 b .L362
|
||
4911 .LVL574:
|
||
4912 .L366:
|
||
2148:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4913 .loc 1 2148 8 view .LVU1618
|
||
4914 0052 0427 movs r7, #4
|
||
4915 .LVL575:
|
||
4916 .L362:
|
||
2197:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4917 .loc 1 2197 2 is_stmt 1 view .LVU1619
|
||
2197:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4918 .loc 1 2197 5 is_stmt 0 view .LVU1620
|
||
4919 0054 0FB1 cbz r7, .L365
|
||
2197:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4920 .loc 1 2197 20 is_stmt 1 discriminator 1 view .LVU1621
|
||
2197:Middlewares/Third_Party/FatFs/src/ff.c **** return res;
|
||
4921 .loc 1 2197 29 is_stmt 0 discriminator 1 view .LVU1622
|
||
4922 0056 0023 movs r3, #0
|
||
4923 0058 E361 str r3, [r4, #28]
|
||
4924 .L365:
|
||
2198:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4925 .loc 1 2198 2 is_stmt 1 view .LVU1623
|
||
2199:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4926 .loc 1 2199 1 is_stmt 0 view .LVU1624
|
||
4927 005a 3846 mov r0, r7
|
||
4928 005c F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
2199:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4929 .loc 1 2199 1 view .LVU1625
|
||
4930 .cfi_endproc
|
||
4931 .LFE1210:
|
||
4933 .section .text.sync_fs,"ax",%progbits
|
||
4934 .align 1
|
||
4935 .syntax unified
|
||
4936 .thumb
|
||
ARM GAS /tmp/ccH7dUYB.s page 214
|
||
|
||
|
||
4937 .thumb_func
|
||
4939 sync_fs:
|
||
4940 .LVL576:
|
||
4941 .LFB1198:
|
||
947:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4942 .loc 1 947 1 is_stmt 1 view -0
|
||
4943 .cfi_startproc
|
||
4944 @ args = 0, pretend = 0, frame = 0
|
||
4945 @ frame_needed = 0, uses_anonymous_args = 0
|
||
947:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
4946 .loc 1 947 1 is_stmt 0 view .LVU1627
|
||
4947 0000 70B5 push {r4, r5, r6, lr}
|
||
4948 .LCFI37:
|
||
4949 .cfi_def_cfa_offset 16
|
||
4950 .cfi_offset 4, -16
|
||
4951 .cfi_offset 5, -12
|
||
4952 .cfi_offset 6, -8
|
||
4953 .cfi_offset 14, -4
|
||
4954 0002 0446 mov r4, r0
|
||
948:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4955 .loc 1 948 2 is_stmt 1 view .LVU1628
|
||
951:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4956 .loc 1 951 2 view .LVU1629
|
||
951:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
4957 .loc 1 951 8 is_stmt 0 view .LVU1630
|
||
4958 0004 FFF7FEFF bl sync_window
|
||
4959 .LVL577:
|
||
952:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update FSInfo sector if needed */
|
||
4960 .loc 1 952 2 is_stmt 1 view .LVU1631
|
||
952:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update FSInfo sector if needed */
|
||
4961 .loc 1 952 5 is_stmt 0 view .LVU1632
|
||
4962 0008 0546 mov r5, r0
|
||
4963 000a 48B9 cbnz r0, .L369
|
||
954:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSInfo structure */
|
||
4964 .loc 1 954 3 is_stmt 1 view .LVU1633
|
||
954:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSInfo structure */
|
||
4965 .loc 1 954 9 is_stmt 0 view .LVU1634
|
||
4966 000c 2378 ldrb r3, [r4] @ zero_extendqisi2
|
||
954:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSInfo structure */
|
||
4967 .loc 1 954 6 view .LVU1635
|
||
4968 000e 032B cmp r3, #3
|
||
4969 0010 08D0 beq .L373
|
||
4970 .LVL578:
|
||
4971 .L370:
|
||
968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4972 .loc 1 968 3 is_stmt 1 view .LVU1636
|
||
968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4973 .loc 1 968 7 is_stmt 0 view .LVU1637
|
||
4974 0012 0022 movs r2, #0
|
||
4975 0014 1146 mov r1, r2
|
||
4976 0016 6078 ldrb r0, [r4, #1] @ zero_extendqisi2
|
||
4977 0018 FFF7FEFF bl disk_ioctl
|
||
4978 .LVL579:
|
||
968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4979 .loc 1 968 6 discriminator 1 view .LVU1638
|
||
4980 001c 00B1 cbz r0, .L369
|
||
968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 215
|
||
|
||
|
||
4981 .loc 1 968 56 discriminator 1 view .LVU1639
|
||
4982 001e 0125 movs r5, #1
|
||
4983 .LVL580:
|
||
4984 .L369:
|
||
971:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
4985 .loc 1 971 2 is_stmt 1 view .LVU1640
|
||
972:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
4986 .loc 1 972 1 is_stmt 0 view .LVU1641
|
||
4987 0020 2846 mov r0, r5
|
||
4988 0022 70BD pop {r4, r5, r6, pc}
|
||
4989 .LVL581:
|
||
4990 .L373:
|
||
954:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSInfo structure */
|
||
4991 .loc 1 954 36 discriminator 1 view .LVU1642
|
||
4992 0024 2379 ldrb r3, [r4, #4] @ zero_extendqisi2
|
||
954:Middlewares/Third_Party/FatFs/src/ff.c **** /* Create FSInfo structure */
|
||
4993 .loc 1 954 31 discriminator 1 view .LVU1643
|
||
4994 0026 012B cmp r3, #1
|
||
4995 0028 F3D1 bne .L370
|
||
956:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + BS_55AA, 0xAA55);
|
||
4996 .loc 1 956 4 is_stmt 1 view .LVU1644
|
||
956:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + BS_55AA, 0xAA55);
|
||
4997 .loc 1 956 14 is_stmt 0 view .LVU1645
|
||
4998 002a 04F13406 add r6, r4, #52
|
||
956:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + BS_55AA, 0xAA55);
|
||
4999 .loc 1 956 4 view .LVU1646
|
||
5000 002e A289 ldrh r2, [r4, #12]
|
||
5001 0030 0021 movs r1, #0
|
||
5002 0032 3046 mov r0, r6
|
||
5003 .LVL582:
|
||
956:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(fs->win + BS_55AA, 0xAA55);
|
||
5004 .loc 1 956 4 view .LVU1647
|
||
5005 0034 FFF7FEFF bl mem_set
|
||
5006 .LVL583:
|
||
957:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_LeadSig, 0x41615252);
|
||
5007 .loc 1 957 4 is_stmt 1 view .LVU1648
|
||
5008 0038 4AF65521 movw r1, #43605
|
||
5009 003c 04F23220 addw r0, r4, #562
|
||
5010 0040 FFF7FEFF bl st_word
|
||
5011 .LVL584:
|
||
958:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_StrucSig, 0x61417272);
|
||
5012 .loc 1 958 4 view .LVU1649
|
||
5013 0044 0E49 ldr r1, .L374
|
||
5014 0046 3046 mov r0, r6
|
||
5015 0048 FFF7FEFF bl st_dword
|
||
5016 .LVL585:
|
||
959:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_Free_Count, fs->free_clst);
|
||
5017 .loc 1 959 4 view .LVU1650
|
||
5018 004c 0D49 ldr r1, .L374+4
|
||
5019 004e 04F50670 add r0, r4, #536
|
||
5020 0052 FFF7FEFF bl st_dword
|
||
5021 .LVL586:
|
||
960:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->win + FSI_Nxt_Free, fs->last_clst);
|
||
5022 .loc 1 960 4 view .LVU1651
|
||
5023 0056 6169 ldr r1, [r4, #20]
|
||
5024 0058 04F50770 add r0, r4, #540
|
||
5025 005c FFF7FEFF bl st_dword
|
||
ARM GAS /tmp/ccH7dUYB.s page 216
|
||
|
||
|
||
5026 .LVL587:
|
||
961:Middlewares/Third_Party/FatFs/src/ff.c **** /* Write it into the FSInfo sector */
|
||
5027 .loc 1 961 4 view .LVU1652
|
||
5028 0060 2169 ldr r1, [r4, #16]
|
||
5029 0062 04F50870 add r0, r4, #544
|
||
5030 0066 FFF7FEFF bl st_dword
|
||
5031 .LVL588:
|
||
963:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, fs->winsect, 1);
|
||
5032 .loc 1 963 4 view .LVU1653
|
||
963:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, fs->winsect, 1);
|
||
5033 .loc 1 963 20 is_stmt 0 view .LVU1654
|
||
5034 006a 226A ldr r2, [r4, #32]
|
||
963:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, fs->winsect, 1);
|
||
5035 .loc 1 963 30 view .LVU1655
|
||
5036 006c 0132 adds r2, r2, #1
|
||
963:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(fs->drv, fs->win, fs->winsect, 1);
|
||
5037 .loc 1 963 16 view .LVU1656
|
||
5038 006e 2263 str r2, [r4, #48]
|
||
964:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag = 0;
|
||
5039 .loc 1 964 4 is_stmt 1 view .LVU1657
|
||
5040 0070 0123 movs r3, #1
|
||
5041 0072 3146 mov r1, r6
|
||
5042 0074 6078 ldrb r0, [r4, #1] @ zero_extendqisi2
|
||
5043 0076 FFF7FEFF bl disk_write
|
||
5044 .LVL589:
|
||
965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5045 .loc 1 965 4 view .LVU1658
|
||
965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5046 .loc 1 965 17 is_stmt 0 view .LVU1659
|
||
5047 007a 0023 movs r3, #0
|
||
5048 007c 2371 strb r3, [r4, #4]
|
||
5049 007e C8E7 b .L370
|
||
5050 .L375:
|
||
5051 .align 2
|
||
5052 .L374:
|
||
5053 0080 52526141 .word 1096897106
|
||
5054 0084 72724161 .word 1631679090
|
||
5055 .cfi_endproc
|
||
5056 .LFE1198:
|
||
5058 .section .text.f_mount,"ax",%progbits
|
||
5059 .align 1
|
||
5060 .global f_mount
|
||
5061 .syntax unified
|
||
5062 .thumb
|
||
5063 .thumb_func
|
||
5065 f_mount:
|
||
5066 .LVL590:
|
||
5067 .LFB1221:
|
||
3265:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *cfs;
|
||
5068 .loc 1 3265 1 is_stmt 1 view -0
|
||
5069 .cfi_startproc
|
||
5070 @ args = 0, pretend = 0, frame = 16
|
||
5071 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3265:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *cfs;
|
||
5072 .loc 1 3265 1 is_stmt 0 view .LVU1661
|
||
5073 0000 70B5 push {r4, r5, r6, lr}
|
||
5074 .LCFI38:
|
||
ARM GAS /tmp/ccH7dUYB.s page 217
|
||
|
||
|
||
5075 .cfi_def_cfa_offset 16
|
||
5076 .cfi_offset 4, -16
|
||
5077 .cfi_offset 5, -12
|
||
5078 .cfi_offset 6, -8
|
||
5079 .cfi_offset 14, -4
|
||
5080 0002 84B0 sub sp, sp, #16
|
||
5081 .LCFI39:
|
||
5082 .cfi_def_cfa_offset 32
|
||
5083 0004 0190 str r0, [sp, #4]
|
||
5084 0006 0091 str r1, [sp]
|
||
5085 0008 1646 mov r6, r2
|
||
3266:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
5086 .loc 1 3266 2 is_stmt 1 view .LVU1662
|
||
3267:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5087 .loc 1 3267 2 view .LVU1663
|
||
3268:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR *rp = path;
|
||
5088 .loc 1 3268 2 view .LVU1664
|
||
3269:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5089 .loc 1 3269 2 view .LVU1665
|
||
3269:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5090 .loc 1 3269 15 is_stmt 0 view .LVU1666
|
||
5091 000a 0391 str r1, [sp, #12]
|
||
3273:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
5092 .loc 1 3273 2 is_stmt 1 view .LVU1667
|
||
3273:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
5093 .loc 1 3273 8 is_stmt 0 view .LVU1668
|
||
5094 000c 03A8 add r0, sp, #12
|
||
5095 .LVL591:
|
||
3273:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
5096 .loc 1 3273 8 view .LVU1669
|
||
5097 000e FFF7FEFF bl get_ldnumber
|
||
5098 .LVL592:
|
||
3274:Middlewares/Third_Party/FatFs/src/ff.c **** cfs = FatFs[vol]; /* Pointer to fs object */
|
||
5099 .loc 1 3274 2 is_stmt 1 view .LVU1670
|
||
3274:Middlewares/Third_Party/FatFs/src/ff.c **** cfs = FatFs[vol]; /* Pointer to fs object */
|
||
5100 .loc 1 3274 5 is_stmt 0 view .LVU1671
|
||
5101 0012 041E subs r4, r0, #0
|
||
5102 0014 20DB blt .L380
|
||
3275:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5103 .loc 1 3275 2 is_stmt 1 view .LVU1672
|
||
3275:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5104 .loc 1 3275 6 is_stmt 0 view .LVU1673
|
||
5105 0016 114B ldr r3, .L384
|
||
5106 0018 53F82450 ldr r5, [r3, r4, lsl #2]
|
||
5107 .LVL593:
|
||
3277:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5108 .loc 1 3277 2 is_stmt 1 view .LVU1674
|
||
3277:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5109 .loc 1 3277 5 is_stmt 0 view .LVU1675
|
||
5110 001c 25B1 cbz r5, .L378
|
||
3279:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5111 .loc 1 3279 3 is_stmt 1 view .LVU1676
|
||
5112 001e 2846 mov r0, r5
|
||
5113 .LVL594:
|
||
3279:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5114 .loc 1 3279 3 is_stmt 0 view .LVU1677
|
||
5115 0020 FFF7FEFF bl clear_lock
|
||
ARM GAS /tmp/ccH7dUYB.s page 218
|
||
|
||
|
||
5116 .LVL595:
|
||
3284:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5117 .loc 1 3284 3 is_stmt 1 view .LVU1678
|
||
3284:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5118 .loc 1 3284 16 is_stmt 0 view .LVU1679
|
||
5119 0024 0023 movs r3, #0
|
||
5120 0026 2B70 strb r3, [r5]
|
||
5121 .L378:
|
||
3287:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = 0; /* Clear new fs object */
|
||
5122 .loc 1 3287 2 is_stmt 1 view .LVU1680
|
||
3287:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = 0; /* Clear new fs object */
|
||
5123 .loc 1 3287 6 is_stmt 0 view .LVU1681
|
||
5124 0028 019B ldr r3, [sp, #4]
|
||
3287:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = 0; /* Clear new fs object */
|
||
5125 .loc 1 3287 5 view .LVU1682
|
||
5126 002a 0BB1 cbz r3, .L379
|
||
3288:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT /* Create sync object for the new volume */
|
||
5127 .loc 1 3288 3 is_stmt 1 view .LVU1683
|
||
3288:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT /* Create sync object for the new volume */
|
||
5128 .loc 1 3288 15 is_stmt 0 view .LVU1684
|
||
5129 002c 0022 movs r2, #0
|
||
5130 002e 1A70 strb r2, [r3]
|
||
5131 .L379:
|
||
3293:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5132 .loc 1 3293 2 is_stmt 1 view .LVU1685
|
||
3293:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5133 .loc 1 3293 13 is_stmt 0 view .LVU1686
|
||
5134 0030 019B ldr r3, [sp, #4]
|
||
5135 0032 0A4A ldr r2, .L384
|
||
5136 0034 42F82430 str r3, [r2, r4, lsl #2]
|
||
3295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5137 .loc 1 3295 2 is_stmt 1 view .LVU1687
|
||
3295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5138 .loc 1 3295 17 is_stmt 0 view .LVU1688
|
||
5139 0038 721E subs r2, r6, #1
|
||
5140 003a 18BF it ne
|
||
5141 003c 0122 movne r2, #1
|
||
3295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5142 .loc 1 3295 10 view .LVU1689
|
||
5143 003e 002B cmp r3, #0
|
||
5144 0040 08BF it eq
|
||
5145 0042 42F00102 orreq r2, r2, #1
|
||
3295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5146 .loc 1 3295 5 view .LVU1690
|
||
5147 0046 12B1 cbz r2, .L383
|
||
3295:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5148 .loc 1 3295 30 discriminator 1 view .LVU1691
|
||
5149 0048 0020 movs r0, #0
|
||
5150 .LVL596:
|
||
5151 .L377:
|
||
3299:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5152 .loc 1 3299 1 view .LVU1692
|
||
5153 004a 04B0 add sp, sp, #16
|
||
5154 .LCFI40:
|
||
5155 .cfi_remember_state
|
||
5156 .cfi_def_cfa_offset 16
|
||
5157 @ sp needed
|
||
ARM GAS /tmp/ccH7dUYB.s page 219
|
||
|
||
|
||
5158 004c 70BD pop {r4, r5, r6, pc}
|
||
5159 .LVL597:
|
||
5160 .L383:
|
||
5161 .LCFI41:
|
||
5162 .cfi_restore_state
|
||
3297:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
5163 .loc 1 3297 2 is_stmt 1 view .LVU1693
|
||
3297:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res);
|
||
5164 .loc 1 3297 8 is_stmt 0 view .LVU1694
|
||
5165 004e 01A9 add r1, sp, #4
|
||
5166 0050 6846 mov r0, sp
|
||
5167 0052 FFF7FEFF bl find_volume
|
||
5168 .LVL598:
|
||
3298:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5169 .loc 1 3298 2 is_stmt 1 view .LVU1695
|
||
5170 0056 F8E7 b .L377
|
||
5171 .LVL599:
|
||
5172 .L380:
|
||
3274:Middlewares/Third_Party/FatFs/src/ff.c **** cfs = FatFs[vol]; /* Pointer to fs object */
|
||
5173 .loc 1 3274 22 is_stmt 0 discriminator 1 view .LVU1696
|
||
5174 0058 0B20 movs r0, #11
|
||
5175 .LVL600:
|
||
3274:Middlewares/Third_Party/FatFs/src/ff.c **** cfs = FatFs[vol]; /* Pointer to fs object */
|
||
5176 .loc 1 3274 22 discriminator 1 view .LVU1697
|
||
5177 005a F6E7 b .L377
|
||
5178 .L385:
|
||
5179 .align 2
|
||
5180 .L384:
|
||
5181 005c 00000000 .word FatFs
|
||
5182 .cfi_endproc
|
||
5183 .LFE1221:
|
||
5185 .section .text.f_open,"ax",%progbits
|
||
5186 .align 1
|
||
5187 .global f_open
|
||
5188 .syntax unified
|
||
5189 .thumb
|
||
5190 .thumb_func
|
||
5192 f_open:
|
||
5193 .LVL601:
|
||
5194 .LFB1222:
|
||
3313:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5195 .loc 1 3313 1 is_stmt 1 view -0
|
||
5196 .cfi_startproc
|
||
5197 @ args = 0, pretend = 0, frame = 64
|
||
5198 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3313:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5199 .loc 1 3313 1 is_stmt 0 view .LVU1699
|
||
5200 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
|
||
5201 .LCFI42:
|
||
5202 .cfi_def_cfa_offset 28
|
||
5203 .cfi_offset 4, -28
|
||
5204 .cfi_offset 5, -24
|
||
5205 .cfi_offset 6, -20
|
||
5206 .cfi_offset 7, -16
|
||
5207 .cfi_offset 8, -12
|
||
5208 .cfi_offset 9, -8
|
||
5209 .cfi_offset 14, -4
|
||
ARM GAS /tmp/ccH7dUYB.s page 220
|
||
|
||
|
||
5210 0004 91B0 sub sp, sp, #68
|
||
5211 .LCFI43:
|
||
5212 .cfi_def_cfa_offset 96
|
||
5213 0006 0191 str r1, [sp, #4]
|
||
3314:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
5214 .loc 1 3314 2 is_stmt 1 view .LVU1700
|
||
3315:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
5215 .loc 1 3315 2 view .LVU1701
|
||
3316:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5216 .loc 1 3316 2 view .LVU1702
|
||
3318:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ofs;
|
||
5217 .loc 1 3318 2 view .LVU1703
|
||
3319:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5218 .loc 1 3319 2 view .LVU1704
|
||
3324:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5219 .loc 1 3324 2 view .LVU1705
|
||
3324:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5220 .loc 1 3324 5 is_stmt 0 view .LVU1706
|
||
5221 0008 0028 cmp r0, #0
|
||
5222 000a 00F01081 beq .L401
|
||
5223 000e 1446 mov r4, r2
|
||
5224 0010 0646 mov r6, r0
|
||
3327:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, mode);
|
||
5225 .loc 1 3327 2 is_stmt 1 view .LVU1707
|
||
3327:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, mode);
|
||
5226 .loc 1 3327 7 is_stmt 0 view .LVU1708
|
||
5227 0012 02F03F07 and r7, r2, #63
|
||
5228 .LVL602:
|
||
3328:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5229 .loc 1 3328 2 is_stmt 1 view .LVU1709
|
||
3328:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5230 .loc 1 3328 8 is_stmt 0 view .LVU1710
|
||
5231 0016 3A46 mov r2, r7
|
||
5232 0018 03A9 add r1, sp, #12
|
||
5233 .LVL603:
|
||
3328:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5234 .loc 1 3328 8 view .LVU1711
|
||
5235 001a 01A8 add r0, sp, #4
|
||
5236 .LVL604:
|
||
3328:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5237 .loc 1 3328 8 view .LVU1712
|
||
5238 001c FFF7FEFF bl find_volume
|
||
5239 .LVL605:
|
||
3329:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
5240 .loc 1 3329 2 is_stmt 1 view .LVU1713
|
||
3329:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
5241 .loc 1 3329 5 is_stmt 0 view .LVU1714
|
||
5242 0020 0546 mov r5, r0
|
||
5243 0022 28B1 cbz r0, .L415
|
||
5244 .LVL606:
|
||
5245 .L388:
|
||
3499:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5246 .loc 1 3499 20 is_stmt 1 discriminator 1 view .LVU1715
|
||
3499:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5247 .loc 1 3499 31 is_stmt 0 discriminator 1 view .LVU1716
|
||
5248 0024 0023 movs r3, #0
|
||
5249 0026 3360 str r3, [r6]
|
||
ARM GAS /tmp/ccH7dUYB.s page 221
|
||
|
||
|
||
5250 .LVL607:
|
||
5251 .L387:
|
||
3502:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5252 .loc 1 3502 1 view .LVU1717
|
||
5253 0028 2846 mov r0, r5
|
||
5254 002a 11B0 add sp, sp, #68
|
||
5255 .LCFI44:
|
||
5256 .cfi_remember_state
|
||
5257 .cfi_def_cfa_offset 28
|
||
5258 @ sp needed
|
||
5259 002c BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
|
||
5260 .LVL608:
|
||
5261 .L415:
|
||
5262 .LCFI45:
|
||
5263 .cfi_restore_state
|
||
3330:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
5264 .loc 1 3330 3 is_stmt 1 view .LVU1718
|
||
3330:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
5265 .loc 1 3330 13 is_stmt 0 view .LVU1719
|
||
5266 0030 039B ldr r3, [sp, #12]
|
||
5267 0032 0493 str r3, [sp, #16]
|
||
3331:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
5268 .loc 1 3331 18 is_stmt 1 view .LVU1720
|
||
3332:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY /* R/W configuration */
|
||
5269 .loc 1 3332 3 view .LVU1721
|
||
3332:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY /* R/W configuration */
|
||
5270 .loc 1 3332 9 is_stmt 0 view .LVU1722
|
||
5271 0034 0199 ldr r1, [sp, #4]
|
||
5272 0036 04A8 add r0, sp, #16
|
||
5273 .LVL609:
|
||
3332:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY /* R/W configuration */
|
||
5274 .loc 1 3332 9 view .LVU1723
|
||
5275 0038 FFF7FEFF bl follow_path
|
||
5276 .LVL610:
|
||
3334:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* Origin directory itself? */
|
||
5277 .loc 1 3334 3 is_stmt 1 view .LVU1724
|
||
3334:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* Origin directory itself? */
|
||
5278 .loc 1 3334 6 is_stmt 0 view .LVU1725
|
||
5279 003c 0546 mov r5, r0
|
||
5280 003e 60B9 cbnz r0, .L389
|
||
3335:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
5281 .loc 1 3335 4 is_stmt 1 view .LVU1726
|
||
3335:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
5282 .loc 1 3335 8 is_stmt 0 view .LVU1727
|
||
5283 0040 9DF93F30 ldrsb r3, [sp, #63]
|
||
3335:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
5284 .loc 1 3335 7 view .LVU1728
|
||
5285 0044 002B cmp r3, #0
|
||
5286 0046 52DB blt .L402
|
||
3340:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5287 .loc 1 3340 5 is_stmt 1 view .LVU1729
|
||
3340:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5288 .loc 1 3340 11 is_stmt 0 view .LVU1730
|
||
5289 0048 14F03E0F tst r4, #62
|
||
5290 004c 14BF ite ne
|
||
5291 004e 0121 movne r1, #1
|
||
5292 0050 0021 moveq r1, #0
|
||
ARM GAS /tmp/ccH7dUYB.s page 222
|
||
|
||
|
||
5293 0052 04A8 add r0, sp, #16
|
||
5294 .LVL611:
|
||
3340:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5295 .loc 1 3340 11 view .LVU1731
|
||
5296 0054 FFF7FEFF bl chk_lock
|
||
5297 .LVL612:
|
||
5298 0058 0546 mov r5, r0
|
||
5299 .LVL613:
|
||
5300 .L389:
|
||
3345:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) { /* No file, create new */
|
||
5301 .loc 1 3345 3 is_stmt 1 view .LVU1732
|
||
3345:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) { /* No file, create new */
|
||
5302 .loc 1 3345 6 is_stmt 0 view .LVU1733
|
||
5303 005a 14F01C0F tst r4, #28
|
||
5304 005e 5CD0 beq .L390
|
||
3346:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* There is no file to open, create a new entry */
|
||
5305 .loc 1 3346 4 is_stmt 1 view .LVU1734
|
||
3346:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) { /* There is no file to open, create a new entry */
|
||
5306 .loc 1 3346 7 is_stmt 0 view .LVU1735
|
||
5307 0060 002D cmp r5, #0
|
||
5308 0062 50D0 beq .L391
|
||
3347:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5309 .loc 1 3347 5 is_stmt 1 view .LVU1736
|
||
3347:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5310 .loc 1 3347 8 is_stmt 0 view .LVU1737
|
||
5311 0064 042D cmp r5, #4
|
||
5312 0066 44D0 beq .L416
|
||
5313 .LVL614:
|
||
5314 .L392:
|
||
3354:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5315 .loc 1 3354 5 is_stmt 1 view .LVU1738
|
||
3354:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5316 .loc 1 3354 10 is_stmt 0 view .LVU1739
|
||
5317 0068 47F00807 orr r7, r7, #8
|
||
5318 .LVL615:
|
||
5319 .L393:
|
||
3363:Middlewares/Third_Party/FatFs/src/ff.c **** dw = GET_FATTIME();
|
||
5320 .loc 1 3363 4 is_stmt 1 view .LVU1740
|
||
3363:Middlewares/Third_Party/FatFs/src/ff.c **** dw = GET_FATTIME();
|
||
5321 .loc 1 3363 7 is_stmt 0 view .LVU1741
|
||
5322 006c 002D cmp r5, #0
|
||
5323 006e D9D1 bne .L388
|
||
3363:Middlewares/Third_Party/FatFs/src/ff.c **** dw = GET_FATTIME();
|
||
5324 .loc 1 3363 21 discriminator 1 view .LVU1742
|
||
5325 0070 17F0080F tst r7, #8
|
||
5326 0074 61D0 beq .L394
|
||
3364:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5327 .loc 1 3364 5 is_stmt 1 view .LVU1743
|
||
3364:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5328 .loc 1 3364 10 is_stmt 0 view .LVU1744
|
||
5329 0076 FFF7FEFF bl get_fattime
|
||
5330 .LVL616:
|
||
5331 007a 0446 mov r4, r0
|
||
5332 .LVL617:
|
||
3392:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_ModTime, dw); /* Set modified time */
|
||
5333 .loc 1 3392 6 is_stmt 1 view .LVU1745
|
||
5334 007c 0146 mov r1, r0
|
||
ARM GAS /tmp/ccH7dUYB.s page 223
|
||
|
||
|
||
5335 007e 0C98 ldr r0, [sp, #48]
|
||
5336 .LVL618:
|
||
3392:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_ModTime, dw); /* Set modified time */
|
||
5337 .loc 1 3392 6 is_stmt 0 view .LVU1746
|
||
5338 0080 0E30 adds r0, r0, #14
|
||
5339 0082 FFF7FEFF bl st_dword
|
||
5340 .LVL619:
|
||
3393:Middlewares/Third_Party/FatFs/src/ff.c **** dj.dir[DIR_Attr] = AM_ARC; /* Reset attribute */
|
||
5341 .loc 1 3393 6 is_stmt 1 view .LVU1747
|
||
5342 0086 2146 mov r1, r4
|
||
5343 0088 0C98 ldr r0, [sp, #48]
|
||
5344 008a 1630 adds r0, r0, #22
|
||
5345 008c FFF7FEFF bl st_dword
|
||
5346 .LVL620:
|
||
3394:Middlewares/Third_Party/FatFs/src/ff.c **** cl = ld_clust(fs, dj.dir); /* Get cluster chain */
|
||
5347 .loc 1 3394 6 view .LVU1748
|
||
3394:Middlewares/Third_Party/FatFs/src/ff.c **** cl = ld_clust(fs, dj.dir); /* Get cluster chain */
|
||
5348 .loc 1 3394 23 is_stmt 0 view .LVU1749
|
||
5349 0090 0C9B ldr r3, [sp, #48]
|
||
5350 0092 2022 movs r2, #32
|
||
5351 0094 DA72 strb r2, [r3, #11]
|
||
3395:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dj.dir, 0); /* Reset file allocation info */
|
||
5352 .loc 1 3395 6 is_stmt 1 view .LVU1750
|
||
3395:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dj.dir, 0); /* Reset file allocation info */
|
||
5353 .loc 1 3395 11 is_stmt 0 view .LVU1751
|
||
5354 0096 DDF80C80 ldr r8, [sp, #12]
|
||
3395:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dj.dir, 0); /* Reset file allocation info */
|
||
5355 .loc 1 3395 26 view .LVU1752
|
||
5356 009a DDF83090 ldr r9, [sp, #48]
|
||
3395:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dj.dir, 0); /* Reset file allocation info */
|
||
5357 .loc 1 3395 11 view .LVU1753
|
||
5358 009e 4946 mov r1, r9
|
||
5359 00a0 4046 mov r0, r8
|
||
5360 00a2 FFF7FEFF bl ld_clust
|
||
5361 .LVL621:
|
||
5362 00a6 0446 mov r4, r0
|
||
5363 .LVL622:
|
||
3396:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_FileSize, 0);
|
||
5364 .loc 1 3396 6 is_stmt 1 view .LVU1754
|
||
5365 00a8 0022 movs r2, #0
|
||
5366 00aa 4946 mov r1, r9
|
||
5367 00ac 4046 mov r0, r8
|
||
5368 .LVL623:
|
||
3396:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_FileSize, 0);
|
||
5369 .loc 1 3396 6 is_stmt 0 view .LVU1755
|
||
5370 00ae FFF7FEFF bl st_clust
|
||
5371 .LVL624:
|
||
3397:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
5372 .loc 1 3397 6 is_stmt 1 view .LVU1756
|
||
5373 00b2 0021 movs r1, #0
|
||
5374 00b4 0C98 ldr r0, [sp, #48]
|
||
5375 00b6 1C30 adds r0, r0, #28
|
||
5376 00b8 FFF7FEFF bl st_dword
|
||
5377 .LVL625:
|
||
3398:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5378 .loc 1 3398 6 view .LVU1757
|
||
3398:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 224
|
||
|
||
|
||
5379 .loc 1 3398 16 is_stmt 0 view .LVU1758
|
||
5380 00bc 039B ldr r3, [sp, #12]
|
||
5381 00be 0122 movs r2, #1
|
||
5382 00c0 DA70 strb r2, [r3, #3]
|
||
3400:Middlewares/Third_Party/FatFs/src/ff.c **** dw = fs->winsect;
|
||
5383 .loc 1 3400 6 is_stmt 1 view .LVU1759
|
||
3400:Middlewares/Third_Party/FatFs/src/ff.c **** dw = fs->winsect;
|
||
5384 .loc 1 3400 9 is_stmt 0 view .LVU1760
|
||
5385 00c2 002C cmp r4, #0
|
||
5386 00c4 39D0 beq .L394
|
||
3401:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&dj.obj, cl, 0);
|
||
5387 .loc 1 3401 7 is_stmt 1 view .LVU1761
|
||
3401:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&dj.obj, cl, 0);
|
||
5388 .loc 1 3401 14 is_stmt 0 view .LVU1762
|
||
5389 00c6 039B ldr r3, [sp, #12]
|
||
3401:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&dj.obj, cl, 0);
|
||
5390 .loc 1 3401 10 view .LVU1763
|
||
5391 00c8 D3F83080 ldr r8, [r3, #48]
|
||
5392 .LVL626:
|
||
3402:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5393 .loc 1 3402 7 is_stmt 1 view .LVU1764
|
||
3402:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
5394 .loc 1 3402 13 is_stmt 0 view .LVU1765
|
||
5395 00cc 0022 movs r2, #0
|
||
5396 00ce 2146 mov r1, r4
|
||
5397 00d0 04A8 add r0, sp, #16
|
||
5398 00d2 FFF7FEFF bl remove_chain
|
||
5399 .LVL627:
|
||
3403:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dw);
|
||
5400 .loc 1 3403 7 is_stmt 1 view .LVU1766
|
||
3403:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dw);
|
||
5401 .loc 1 3403 10 is_stmt 0 view .LVU1767
|
||
5402 00d6 0546 mov r5, r0
|
||
5403 00d8 0028 cmp r0, #0
|
||
5404 00da A3D1 bne .L388
|
||
3404:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = cl - 1; /* Reuse the cluster hole */
|
||
5405 .loc 1 3404 8 is_stmt 1 view .LVU1768
|
||
3404:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = cl - 1; /* Reuse the cluster hole */
|
||
5406 .loc 1 3404 14 is_stmt 0 view .LVU1769
|
||
5407 00dc 4146 mov r1, r8
|
||
5408 00de 0398 ldr r0, [sp, #12]
|
||
5409 .LVL628:
|
||
3404:Middlewares/Third_Party/FatFs/src/ff.c **** fs->last_clst = cl - 1; /* Reuse the cluster hole */
|
||
5410 .loc 1 3404 14 view .LVU1770
|
||
5411 00e0 FFF7FEFF bl move_window
|
||
5412 .LVL629:
|
||
5413 00e4 0546 mov r5, r0
|
||
5414 .LVL630:
|
||
3405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5415 .loc 1 3405 8 is_stmt 1 view .LVU1771
|
||
3405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5416 .loc 1 3405 27 is_stmt 0 view .LVU1772
|
||
5417 00e6 013C subs r4, r4, #1
|
||
5418 .LVL631:
|
||
3405:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5419 .loc 1 3405 22 view .LVU1773
|
||
5420 00e8 039B ldr r3, [sp, #12]
|
||
ARM GAS /tmp/ccH7dUYB.s page 225
|
||
|
||
|
||
5421 00ea 1C61 str r4, [r3, #16]
|
||
5422 00ec 25E0 b .L394
|
||
5423 .LVL632:
|
||
5424 .L402:
|
||
3336:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5425 .loc 1 3336 9 view .LVU1774
|
||
5426 00ee 0625 movs r5, #6
|
||
5427 00f0 B3E7 b .L389
|
||
5428 .LVL633:
|
||
5429 .L416:
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5430 .loc 1 3349 6 is_stmt 1 view .LVU1775
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5431 .loc 1 3349 12 is_stmt 0 view .LVU1776
|
||
5432 00f2 FFF7FEFF bl enq_lock
|
||
5433 .LVL634:
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5434 .loc 1 3349 43 discriminator 1 view .LVU1777
|
||
5435 00f6 08B9 cbnz r0, .L417
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5436 .loc 1 3349 43 discriminator 2 view .LVU1778
|
||
5437 00f8 1225 movs r5, #18
|
||
5438 .LVL635:
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5439 .loc 1 3349 43 discriminator 2 view .LVU1779
|
||
5440 00fa B5E7 b .L392
|
||
5441 .LVL636:
|
||
5442 .L417:
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5443 .loc 1 3349 25 discriminator 1 view .LVU1780
|
||
5444 00fc 04A8 add r0, sp, #16
|
||
5445 00fe FFF7FEFF bl dir_register
|
||
5446 .LVL637:
|
||
5447 0102 0546 mov r5, r0
|
||
5448 .LVL638:
|
||
3349:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
5449 .loc 1 3349 25 discriminator 1 view .LVU1781
|
||
5450 0104 B0E7 b .L392
|
||
5451 .LVL639:
|
||
5452 .L391:
|
||
3357:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
5453 .loc 1 3357 5 is_stmt 1 view .LVU1782
|
||
3357:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
5454 .loc 1 3357 15 is_stmt 0 view .LVU1783
|
||
5455 0106 9DF81630 ldrb r3, [sp, #22] @ zero_extendqisi2
|
||
3357:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
5456 .loc 1 3357 8 view .LVU1784
|
||
5457 010a 13F0110F tst r3, #17
|
||
5458 010e 13D1 bne .L404
|
||
3360:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5459 .loc 1 3360 6 is_stmt 1 view .LVU1785
|
||
3360:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5460 .loc 1 3360 9 is_stmt 0 view .LVU1786
|
||
5461 0110 14F0040F tst r4, #4
|
||
5462 0114 AAD0 beq .L393
|
||
3360:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5463 .loc 1 3360 36 discriminator 1 view .LVU1787
|
||
ARM GAS /tmp/ccH7dUYB.s page 226
|
||
|
||
|
||
5464 0116 0825 movs r5, #8
|
||
5465 .LVL640:
|
||
3360:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5466 .loc 1 3360 36 discriminator 1 view .LVU1788
|
||
5467 0118 84E7 b .L388
|
||
5468 .LVL641:
|
||
5469 .L390:
|
||
3412:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* It is a directory */
|
||
5470 .loc 1 3412 4 is_stmt 1 view .LVU1789
|
||
3412:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* It is a directory */
|
||
5471 .loc 1 3412 7 is_stmt 0 view .LVU1790
|
||
5472 011a 002D cmp r5, #0
|
||
5473 011c 82D1 bne .L388
|
||
3413:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE;
|
||
5474 .loc 1 3413 5 is_stmt 1 view .LVU1791
|
||
3413:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE;
|
||
5475 .loc 1 3413 15 is_stmt 0 view .LVU1792
|
||
5476 011e 9DF81630 ldrb r3, [sp, #22] @ zero_extendqisi2
|
||
3413:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_NO_FILE;
|
||
5477 .loc 1 3413 8 view .LVU1793
|
||
5478 0122 13F0100F tst r3, #16
|
||
5479 0126 7ED1 bne .L406
|
||
3416:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
5480 .loc 1 3416 6 is_stmt 1 view .LVU1794
|
||
3416:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
5481 .loc 1 3416 9 is_stmt 0 view .LVU1795
|
||
5482 0128 14F0020F tst r4, #2
|
||
5483 012c 05D0 beq .L394
|
||
3416:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED;
|
||
5484 .loc 1 3416 28 discriminator 1 view .LVU1796
|
||
5485 012e 13F0010F tst r3, #1
|
||
5486 0132 02D0 beq .L394
|
||
3417:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5487 .loc 1 3417 11 view .LVU1797
|
||
5488 0134 0725 movs r5, #7
|
||
5489 .LVL642:
|
||
3417:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5490 .loc 1 3417 11 view .LVU1798
|
||
5491 0136 75E7 b .L388
|
||
5492 .LVL643:
|
||
5493 .L404:
|
||
3358:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5494 .loc 1 3358 10 view .LVU1799
|
||
5495 0138 0725 movs r5, #7
|
||
5496 .LVL644:
|
||
5497 .L394:
|
||
3422:Middlewares/Third_Party/FatFs/src/ff.c **** if (mode & FA_CREATE_ALWAYS) /* Set file change flag if created or overwritten */
|
||
5498 .loc 1 3422 3 is_stmt 1 view .LVU1800
|
||
3422:Middlewares/Third_Party/FatFs/src/ff.c **** if (mode & FA_CREATE_ALWAYS) /* Set file change flag if created or overwritten */
|
||
5499 .loc 1 3422 6 is_stmt 0 view .LVU1801
|
||
5500 013a 002D cmp r5, #0
|
||
5501 013c 7FF472AF bne .L388
|
||
3423:Middlewares/Third_Party/FatFs/src/ff.c **** mode |= FA_MODIFIED;
|
||
5502 .loc 1 3423 4 is_stmt 1 view .LVU1802
|
||
3423:Middlewares/Third_Party/FatFs/src/ff.c **** mode |= FA_MODIFIED;
|
||
5503 .loc 1 3423 7 is_stmt 0 view .LVU1803
|
||
5504 0140 17F0080F tst r7, #8
|
||
ARM GAS /tmp/ccH7dUYB.s page 227
|
||
|
||
|
||
5505 0144 01D0 beq .L395
|
||
3424:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_sect = fs->winsect; /* Pointer to the directory entry */
|
||
5506 .loc 1 3424 5 is_stmt 1 view .LVU1804
|
||
3424:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_sect = fs->winsect; /* Pointer to the directory entry */
|
||
5507 .loc 1 3424 10 is_stmt 0 view .LVU1805
|
||
5508 0146 47F04007 orr r7, r7, #64
|
||
5509 .LVL645:
|
||
5510 .L395:
|
||
3425:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_ptr = dj.dir;
|
||
5511 .loc 1 3425 4 is_stmt 1 view .LVU1806
|
||
3425:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_ptr = dj.dir;
|
||
5512 .loc 1 3425 21 is_stmt 0 view .LVU1807
|
||
5513 014a 039B ldr r3, [sp, #12]
|
||
5514 014c 1B6B ldr r3, [r3, #48]
|
||
3425:Middlewares/Third_Party/FatFs/src/ff.c **** fp->dir_ptr = dj.dir;
|
||
5515 .loc 1 3425 17 view .LVU1808
|
||
5516 014e 7362 str r3, [r6, #36]
|
||
3426:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5517 .loc 1 3426 4 is_stmt 1 view .LVU1809
|
||
3426:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5518 .loc 1 3426 20 is_stmt 0 view .LVU1810
|
||
5519 0150 0C9B ldr r3, [sp, #48]
|
||
3426:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
5520 .loc 1 3426 16 view .LVU1811
|
||
5521 0152 B362 str r3, [r6, #40]
|
||
3428:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fp->obj.lockid) res = FR_INT_ERR;
|
||
5522 .loc 1 3428 4 is_stmt 1 view .LVU1812
|
||
3428:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fp->obj.lockid) res = FR_INT_ERR;
|
||
5523 .loc 1 3428 21 is_stmt 0 view .LVU1813
|
||
5524 0154 012F cmp r7, #1
|
||
5525 0156 94BF ite ls
|
||
5526 0158 0021 movls r1, #0
|
||
5527 015a 0121 movhi r1, #1
|
||
5528 015c 04A8 add r0, sp, #16
|
||
5529 015e FFF7FEFF bl inc_lock
|
||
5530 .LVL646:
|
||
3428:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fp->obj.lockid) res = FR_INT_ERR;
|
||
5531 .loc 1 3428 19 discriminator 1 view .LVU1814
|
||
5532 0162 3061 str r0, [r6, #16]
|
||
3429:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5533 .loc 1 3429 4 is_stmt 1 view .LVU1815
|
||
3429:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5534 .loc 1 3429 7 is_stmt 0 view .LVU1816
|
||
5535 0164 08B9 cbnz r0, .L418
|
||
3429:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5536 .loc 1 3429 29 discriminator 1 view .LVU1817
|
||
5537 0166 0225 movs r5, #2
|
||
5538 .LVL647:
|
||
3429:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5539 .loc 1 3429 29 discriminator 1 view .LVU1818
|
||
5540 0168 5CE7 b .L388
|
||
5541 .LVL648:
|
||
5542 .L418:
|
||
3444:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
5543 .loc 1 3444 3 is_stmt 1 view .LVU1819
|
||
3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize);
|
||
5544 .loc 1 3456 5 view .LVU1820
|
||
ARM GAS /tmp/ccH7dUYB.s page 228
|
||
|
||
|
||
3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize);
|
||
5545 .loc 1 3456 22 is_stmt 0 view .LVU1821
|
||
5546 016a 039C ldr r4, [sp, #12]
|
||
3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize);
|
||
5547 .loc 1 3456 37 view .LVU1822
|
||
5548 016c DDF83080 ldr r8, [sp, #48]
|
||
3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize);
|
||
5549 .loc 1 3456 22 view .LVU1823
|
||
5550 0170 4146 mov r1, r8
|
||
5551 0172 2046 mov r0, r4
|
||
5552 0174 FFF7FEFF bl ld_clust
|
||
5553 .LVL649:
|
||
3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize);
|
||
5554 .loc 1 3456 20 discriminator 1 view .LVU1824
|
||
5555 0178 B060 str r0, [r6, #8]
|
||
3457:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5556 .loc 1 3457 5 is_stmt 1 view .LVU1825
|
||
3457:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5557 .loc 1 3457 23 is_stmt 0 view .LVU1826
|
||
5558 017a 08F11C00 add r0, r8, #28
|
||
5559 017e FFF7FEFF bl ld_dword
|
||
5560 .LVL650:
|
||
3457:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5561 .loc 1 3457 21 discriminator 1 view .LVU1827
|
||
5562 0182 F060 str r0, [r6, #12]
|
||
3460:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5563 .loc 1 3460 4 is_stmt 1 view .LVU1828
|
||
3460:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5564 .loc 1 3460 14 is_stmt 0 view .LVU1829
|
||
5565 0184 0021 movs r1, #0
|
||
5566 0186 F162 str r1, [r6, #44]
|
||
3462:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.id = fs->id;
|
||
5567 .loc 1 3462 4 is_stmt 1 view .LVU1830
|
||
3462:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.id = fs->id;
|
||
5568 .loc 1 3462 15 is_stmt 0 view .LVU1831
|
||
5569 0188 3460 str r4, [r6]
|
||
3463:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag = mode; /* Set file access mode */
|
||
5570 .loc 1 3463 4 is_stmt 1 view .LVU1832
|
||
3463:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag = mode; /* Set file access mode */
|
||
5571 .loc 1 3463 19 is_stmt 0 view .LVU1833
|
||
5572 018a E388 ldrh r3, [r4, #6]
|
||
3463:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag = mode; /* Set file access mode */
|
||
5573 .loc 1 3463 15 view .LVU1834
|
||
5574 018c B380 strh r3, [r6, #4] @ movhi
|
||
3464:Middlewares/Third_Party/FatFs/src/ff.c **** fp->err = 0; /* Clear error flag */
|
||
5575 .loc 1 3464 4 is_stmt 1 view .LVU1835
|
||
3464:Middlewares/Third_Party/FatFs/src/ff.c **** fp->err = 0; /* Clear error flag */
|
||
5576 .loc 1 3464 13 is_stmt 0 view .LVU1836
|
||
5577 018e 3775 strb r7, [r6, #20]
|
||
3465:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = 0; /* Invalidate current data sector */
|
||
5578 .loc 1 3465 4 is_stmt 1 view .LVU1837
|
||
3465:Middlewares/Third_Party/FatFs/src/ff.c **** fp->sect = 0; /* Invalidate current data sector */
|
||
5579 .loc 1 3465 12 is_stmt 0 view .LVU1838
|
||
5580 0190 7175 strb r1, [r6, #21]
|
||
3466:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = 0; /* Set file pointer top of the file */
|
||
5581 .loc 1 3466 4 is_stmt 1 view .LVU1839
|
||
3466:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = 0; /* Set file pointer top of the file */
|
||
ARM GAS /tmp/ccH7dUYB.s page 229
|
||
|
||
|
||
5582 .loc 1 3466 13 is_stmt 0 view .LVU1840
|
||
5583 0192 3162 str r1, [r6, #32]
|
||
3467:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5584 .loc 1 3467 4 is_stmt 1 view .LVU1841
|
||
3467:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5585 .loc 1 3467 13 is_stmt 0 view .LVU1842
|
||
5586 0194 B161 str r1, [r6, #24]
|
||
3470:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5587 .loc 1 3470 4 is_stmt 1 view .LVU1843
|
||
3470:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5588 .loc 1 3470 14 is_stmt 0 view .LVU1844
|
||
5589 0196 06F13008 add r8, r6, #48
|
||
3470:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5590 .loc 1 3470 4 view .LVU1845
|
||
5591 019a 4FF48052 mov r2, #4096
|
||
5592 019e 4046 mov r0, r8
|
||
5593 01a0 FFF7FEFF bl mem_set
|
||
5594 .LVL651:
|
||
3472:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = fp->obj.objsize; /* Offset to seek */
|
||
5595 .loc 1 3472 4 is_stmt 1 view .LVU1846
|
||
3472:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = fp->obj.objsize; /* Offset to seek */
|
||
5596 .loc 1 3472 7 is_stmt 0 view .LVU1847
|
||
5597 01a4 17F0200F tst r7, #32
|
||
5598 01a8 39D0 beq .L396
|
||
3472:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = fp->obj.objsize; /* Offset to seek */
|
||
5599 .loc 1 3472 38 discriminator 1 view .LVU1848
|
||
5600 01aa F468 ldr r4, [r6, #12]
|
||
3472:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = fp->obj.objsize; /* Offset to seek */
|
||
5601 .loc 1 3472 28 discriminator 1 view .LVU1849
|
||
5602 01ac 002C cmp r4, #0
|
||
5603 01ae 36D0 beq .L396
|
||
3473:Middlewares/Third_Party/FatFs/src/ff.c **** bcs = (DWORD)fs->csize * SS(fs); /* Cluster size in byte */
|
||
5604 .loc 1 3473 5 is_stmt 1 view .LVU1850
|
||
3473:Middlewares/Third_Party/FatFs/src/ff.c **** bcs = (DWORD)fs->csize * SS(fs); /* Cluster size in byte */
|
||
5605 .loc 1 3473 14 is_stmt 0 view .LVU1851
|
||
5606 01b0 B461 str r4, [r6, #24]
|
||
3474:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow the cluster chain */
|
||
5607 .loc 1 3474 5 is_stmt 1 view .LVU1852
|
||
3474:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow the cluster chain */
|
||
5608 .loc 1 3474 20 is_stmt 0 view .LVU1853
|
||
5609 01b2 039B ldr r3, [sp, #12]
|
||
5610 01b4 5F89 ldrh r7, [r3, #10]
|
||
5611 .LVL652:
|
||
3474:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow the cluster chain */
|
||
5612 .loc 1 3474 30 view .LVU1854
|
||
5613 01b6 9B89 ldrh r3, [r3, #12]
|
||
3474:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow the cluster chain */
|
||
5614 .loc 1 3474 9 view .LVU1855
|
||
5615 01b8 03FB07F7 mul r7, r3, r7
|
||
5616 .LVL653:
|
||
3475:Middlewares/Third_Party/FatFs/src/ff.c **** for (ofs = fp->obj.objsize; res == FR_OK && ofs > bcs; ofs -= bcs) {
|
||
5617 .loc 1 3475 5 is_stmt 1 view .LVU1856
|
||
3475:Middlewares/Third_Party/FatFs/src/ff.c **** for (ofs = fp->obj.objsize; res == FR_OK && ofs > bcs; ofs -= bcs) {
|
||
5618 .loc 1 3475 10 is_stmt 0 view .LVU1857
|
||
5619 01bc B168 ldr r1, [r6, #8]
|
||
5620 .LVL654:
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
ARM GAS /tmp/ccH7dUYB.s page 230
|
||
|
||
|
||
5621 .loc 1 3476 5 is_stmt 1 view .LVU1858
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
5622 .loc 1 3476 5 is_stmt 0 view .LVU1859
|
||
5623 01be 01E0 b .L397
|
||
5624 .LVL655:
|
||
5625 .L409:
|
||
3478:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
5626 .loc 1 3478 25 discriminator 1 view .LVU1860
|
||
5627 01c0 0225 movs r5, #2
|
||
5628 .LVL656:
|
||
5629 .L398:
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
5630 .loc 1 3476 64 is_stmt 1 discriminator 2 view .LVU1861
|
||
5631 01c2 E41B subs r4, r4, r7
|
||
5632 .LVL657:
|
||
5633 .L397:
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
5634 .loc 1 3476 46 discriminator 1 view .LVU1862
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
5635 .loc 1 3476 53 is_stmt 0 discriminator 1 view .LVU1863
|
||
5636 01c4 BC42 cmp r4, r7
|
||
5637 01c6 94BF ite ls
|
||
5638 01c8 0023 movls r3, #0
|
||
5639 01ca 0123 movhi r3, #1
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
5640 .loc 1 3476 46 discriminator 1 view .LVU1864
|
||
5641 01cc 5DB9 cbnz r5, .L413
|
||
3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst);
|
||
5642 .loc 1 3476 46 discriminator 1 view .LVU1865
|
||
5643 01ce 53B1 cbz r3, .L413
|
||
3477:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) res = FR_INT_ERR;
|
||
5644 .loc 1 3477 6 is_stmt 1 view .LVU1866
|
||
3477:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) res = FR_INT_ERR;
|
||
5645 .loc 1 3477 13 is_stmt 0 view .LVU1867
|
||
5646 01d0 3046 mov r0, r6
|
||
5647 01d2 FFF7FEFF bl get_fat
|
||
5648 .LVL658:
|
||
3477:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1) res = FR_INT_ERR;
|
||
5649 .loc 1 3477 13 view .LVU1868
|
||
5650 01d6 0146 mov r1, r0
|
||
5651 .LVL659:
|
||
3478:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
5652 .loc 1 3478 6 is_stmt 1 view .LVU1869
|
||
3478:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
5653 .loc 1 3478 9 is_stmt 0 view .LVU1870
|
||
5654 01d8 0128 cmp r0, #1
|
||
5655 01da F1D9 bls .L409
|
||
3479:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5656 .loc 1 3479 6 is_stmt 1 view .LVU1871
|
||
3479:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5657 .loc 1 3479 9 is_stmt 0 view .LVU1872
|
||
5658 01dc B0F1FF3F cmp r0, #-1
|
||
5659 01e0 EFD1 bne .L398
|
||
3479:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5660 .loc 1 3479 34 discriminator 1 view .LVU1873
|
||
5661 01e2 0125 movs r5, #1
|
||
5662 .LVL660:
|
||
ARM GAS /tmp/ccH7dUYB.s page 231
|
||
|
||
|
||
3479:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5663 .loc 1 3479 34 discriminator 1 view .LVU1874
|
||
5664 01e4 EDE7 b .L398
|
||
5665 .LVL661:
|
||
5666 .L413:
|
||
3481:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ofs % SS(fs)) { /* Fill sector buffer if not on the sector boundary */
|
||
5667 .loc 1 3481 5 is_stmt 1 view .LVU1875
|
||
3481:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ofs % SS(fs)) { /* Fill sector buffer if not on the sector boundary */
|
||
5668 .loc 1 3481 15 is_stmt 0 view .LVU1876
|
||
5669 01e6 F161 str r1, [r6, #28]
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
5670 .loc 1 3482 5 is_stmt 1 view .LVU1877
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
5671 .loc 1 3482 8 is_stmt 0 view .LVU1878
|
||
5672 01e8 002D cmp r5, #0
|
||
5673 01ea 7FF41BAF bne .L388
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
5674 .loc 1 3482 31 discriminator 1 view .LVU1879
|
||
5675 01ee 039F ldr r7, [sp, #12]
|
||
5676 .LVL662:
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
5677 .loc 1 3482 31 discriminator 1 view .LVU1880
|
||
5678 01f0 B7F80C90 ldrh r9, [r7, #12]
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
5679 .loc 1 3482 29 discriminator 1 view .LVU1881
|
||
5680 01f4 B4FBF9F3 udiv r3, r4, r9
|
||
5681 01f8 09FB1343 mls r3, r9, r3, r4
|
||
3482:Middlewares/Third_Party/FatFs/src/ff.c **** if ((sc = clust2sect(fs, clst)) == 0) {
|
||
5682 .loc 1 3482 22 discriminator 1 view .LVU1882
|
||
5683 01fc 7BB1 cbz r3, .L396
|
||
3483:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
5684 .loc 1 3483 6 is_stmt 1 view .LVU1883
|
||
3483:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
5685 .loc 1 3483 16 is_stmt 0 view .LVU1884
|
||
5686 01fe 3846 mov r0, r7
|
||
5687 0200 FFF7FEFF bl clust2sect
|
||
5688 .LVL663:
|
||
3483:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
5689 .loc 1 3483 9 discriminator 1 view .LVU1885
|
||
5690 0204 08B9 cbnz r0, .L419
|
||
3484:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5691 .loc 1 3484 11 view .LVU1886
|
||
5692 0206 0225 movs r5, #2
|
||
5693 .LVL664:
|
||
3484:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5694 .loc 1 3484 11 view .LVU1887
|
||
5695 0208 0CE7 b .L388
|
||
5696 .LVL665:
|
||
5697 .L419:
|
||
3486:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
5698 .loc 1 3486 7 is_stmt 1 view .LVU1888
|
||
3486:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
5699 .loc 1 3486 23 is_stmt 0 view .LVU1889
|
||
5700 020a B4FBF9F2 udiv r2, r4, r9
|
||
3486:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
5701 .loc 1 3486 21 view .LVU1890
|
||
5702 020e 0244 add r2, r2, r0
|
||
ARM GAS /tmp/ccH7dUYB.s page 232
|
||
|
||
|
||
3486:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
5703 .loc 1 3486 16 view .LVU1891
|
||
5704 0210 3262 str r2, [r6, #32]
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5705 .loc 1 3488 7 is_stmt 1 view .LVU1892
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5706 .loc 1 3488 11 is_stmt 0 view .LVU1893
|
||
5707 0212 0123 movs r3, #1
|
||
5708 0214 4146 mov r1, r8
|
||
5709 0216 7878 ldrb r0, [r7, #1] @ zero_extendqisi2
|
||
5710 .LVL666:
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5711 .loc 1 3488 11 view .LVU1894
|
||
5712 0218 FFF7FEFF bl disk_read
|
||
5713 .LVL667:
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5714 .loc 1 3488 10 discriminator 1 view .LVU1895
|
||
5715 021c 28B9 cbnz r0, .L412
|
||
5716 .LVL668:
|
||
5717 .L396:
|
||
3496:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5718 .loc 1 3496 16 is_stmt 1 view .LVU1896
|
||
3499:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5719 .loc 1 3499 2 view .LVU1897
|
||
3499:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5720 .loc 1 3499 5 is_stmt 0 view .LVU1898
|
||
5721 021e 002D cmp r5, #0
|
||
5722 0220 3FF402AF beq .L387
|
||
3499:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5723 .loc 1 3499 5 view .LVU1899
|
||
5724 0224 FEE6 b .L388
|
||
5725 .LVL669:
|
||
5726 .L406:
|
||
3414:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5727 .loc 1 3414 10 view .LVU1900
|
||
5728 0226 0425 movs r5, #4
|
||
5729 .LVL670:
|
||
3414:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
5730 .loc 1 3414 10 view .LVU1901
|
||
5731 0228 FCE6 b .L388
|
||
5732 .LVL671:
|
||
5733 .L412:
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5734 .loc 1 3488 67 discriminator 1 view .LVU1902
|
||
5735 022a 0125 movs r5, #1
|
||
5736 .LVL672:
|
||
3488:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5737 .loc 1 3488 67 discriminator 1 view .LVU1903
|
||
5738 022c FAE6 b .L388
|
||
5739 .LVL673:
|
||
5740 .L401:
|
||
3324:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5741 .loc 1 3324 18 discriminator 1 view .LVU1904
|
||
5742 022e 0925 movs r5, #9
|
||
5743 0230 FAE6 b .L387
|
||
5744 .cfi_endproc
|
||
5745 .LFE1222:
|
||
ARM GAS /tmp/ccH7dUYB.s page 233
|
||
|
||
|
||
5747 .section .text.f_read,"ax",%progbits
|
||
5748 .align 1
|
||
5749 .global f_read
|
||
5750 .syntax unified
|
||
5751 .thumb
|
||
5752 .thumb_func
|
||
5754 f_read:
|
||
5755 .LVL674:
|
||
5756 .LFB1223:
|
||
3517:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5757 .loc 1 3517 1 is_stmt 1 view -0
|
||
5758 .cfi_startproc
|
||
5759 @ args = 0, pretend = 0, frame = 16
|
||
5760 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3517:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
5761 .loc 1 3517 1 is_stmt 0 view .LVU1906
|
||
5762 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
5763 .LCFI46:
|
||
5764 .cfi_def_cfa_offset 36
|
||
5765 .cfi_offset 4, -36
|
||
5766 .cfi_offset 5, -32
|
||
5767 .cfi_offset 6, -28
|
||
5768 .cfi_offset 7, -24
|
||
5769 .cfi_offset 8, -20
|
||
5770 .cfi_offset 9, -16
|
||
5771 .cfi_offset 10, -12
|
||
5772 .cfi_offset 11, -8
|
||
5773 .cfi_offset 14, -4
|
||
5774 0004 85B0 sub sp, sp, #20
|
||
5775 .LCFI47:
|
||
5776 .cfi_def_cfa_offset 56
|
||
5777 0006 0446 mov r4, r0
|
||
5778 0008 0F46 mov r7, r1
|
||
5779 000a 1546 mov r5, r2
|
||
5780 000c 9846 mov r8, r3
|
||
3518:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
5781 .loc 1 3518 2 is_stmt 1 view .LVU1907
|
||
3519:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, sect;
|
||
5782 .loc 1 3519 2 view .LVU1908
|
||
3520:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t remain;
|
||
5783 .loc 1 3520 2 view .LVU1909
|
||
3521:Middlewares/Third_Party/FatFs/src/ff.c **** UINT rcnt, cc, csect;
|
||
5784 .loc 1 3521 2 view .LVU1910
|
||
3522:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *rbuff = (BYTE*)buff;
|
||
5785 .loc 1 3522 2 view .LVU1911
|
||
3523:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5786 .loc 1 3523 2 view .LVU1912
|
||
5787 .LVL675:
|
||
3526:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
5788 .loc 1 3526 2 view .LVU1913
|
||
3526:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
5789 .loc 1 3526 6 is_stmt 0 view .LVU1914
|
||
5790 000e 0023 movs r3, #0
|
||
5791 .LVL676:
|
||
3526:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
5792 .loc 1 3526 6 view .LVU1915
|
||
5793 0010 C8F80030 str r3, [r8]
|
||
ARM GAS /tmp/ccH7dUYB.s page 234
|
||
|
||
|
||
3527:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
5794 .loc 1 3527 2 is_stmt 1 view .LVU1916
|
||
3527:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
5795 .loc 1 3527 8 is_stmt 0 view .LVU1917
|
||
5796 0014 03A9 add r1, sp, #12
|
||
5797 .LVL677:
|
||
3527:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
5798 .loc 1 3527 8 view .LVU1918
|
||
5799 0016 FFF7FEFF bl validate
|
||
5800 .LVL678:
|
||
3528:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_READ)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
5801 .loc 1 3528 2 is_stmt 1 view .LVU1919
|
||
3528:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_READ)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
5802 .loc 1 3528 5 is_stmt 0 view .LVU1920
|
||
5803 001a 0190 str r0, [sp, #4]
|
||
5804 001c 0028 cmp r0, #0
|
||
5805 001e 40F0B980 bne .L423
|
||
3528:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_READ)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
5806 .loc 1 3528 27 discriminator 2 view .LVU1921
|
||
5807 0022 637D ldrb r3, [r4, #21] @ zero_extendqisi2
|
||
5808 0024 0193 str r3, [sp, #4]
|
||
5809 .LVL679:
|
||
3528:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_READ)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
5810 .loc 1 3528 19 discriminator 2 view .LVU1922
|
||
5811 0026 002B cmp r3, #0
|
||
5812 0028 40F0B480 bne .L423
|
||
3529:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
5813 .loc 1 3529 2 is_stmt 1 view .LVU1923
|
||
3529:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
5814 .loc 1 3529 10 is_stmt 0 view .LVU1924
|
||
5815 002c 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
5816 .LVL680:
|
||
3529:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
5817 .loc 1 3529 5 view .LVU1925
|
||
5818 002e 13F0010F tst r3, #1
|
||
5819 0032 00F0CE80 beq .L445
|
||
3530:Middlewares/Third_Party/FatFs/src/ff.c **** if (btr > remain) btr = (UINT)remain; /* Truncate btr by remaining bytes */
|
||
5820 .loc 1 3530 2 is_stmt 1 view .LVU1926
|
||
3530:Middlewares/Third_Party/FatFs/src/ff.c **** if (btr > remain) btr = (UINT)remain; /* Truncate btr by remaining bytes */
|
||
5821 .loc 1 3530 18 is_stmt 0 view .LVU1927
|
||
5822 0036 E668 ldr r6, [r4, #12]
|
||
3530:Middlewares/Third_Party/FatFs/src/ff.c **** if (btr > remain) btr = (UINT)remain; /* Truncate btr by remaining bytes */
|
||
5823 .loc 1 3530 31 view .LVU1928
|
||
5824 0038 A369 ldr r3, [r4, #24]
|
||
3530:Middlewares/Third_Party/FatFs/src/ff.c **** if (btr > remain) btr = (UINT)remain; /* Truncate btr by remaining bytes */
|
||
5825 .loc 1 3530 9 view .LVU1929
|
||
5826 003a F61A subs r6, r6, r3
|
||
5827 .LVL681:
|
||
3531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5828 .loc 1 3531 2 is_stmt 1 view .LVU1930
|
||
3531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5829 .loc 1 3531 5 is_stmt 0 view .LVU1931
|
||
5830 003c AE42 cmp r6, r5
|
||
5831 003e 67D3 bcc .L443
|
||
5832 0040 2E46 mov r6, r5
|
||
5833 .LVL682:
|
||
3531:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 235
|
||
|
||
|
||
5834 .loc 1 3531 5 view .LVU1932
|
||
5835 0042 65E0 b .L443
|
||
5836 .LVL683:
|
||
5837 .L428:
|
||
3542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
5838 .loc 1 3542 6 is_stmt 1 view .LVU1933
|
||
3542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
5839 .loc 1 3542 12 is_stmt 0 view .LVU1934
|
||
5840 0044 E36A ldr r3, [r4, #44]
|
||
3542:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
5841 .loc 1 3542 9 view .LVU1935
|
||
5842 0046 1BB1 cbz r3, .L430
|
||
3543:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
5843 .loc 1 3543 7 is_stmt 1 view .LVU1936
|
||
3543:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
5844 .loc 1 3543 14 is_stmt 0 view .LVU1937
|
||
5845 0048 2046 mov r0, r4
|
||
5846 004a FFF7FEFF bl clmt_clust
|
||
5847 .LVL684:
|
||
3543:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
5848 .loc 1 3543 14 view .LVU1938
|
||
5849 004e 73E0 b .L429
|
||
5850 .LVL685:
|
||
5851 .L430:
|
||
3547:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5852 .loc 1 3547 7 is_stmt 1 view .LVU1939
|
||
3547:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5853 .loc 1 3547 14 is_stmt 0 view .LVU1940
|
||
5854 0050 E169 ldr r1, [r4, #28]
|
||
5855 0052 2046 mov r0, r4
|
||
5856 0054 FFF7FEFF bl get_fat
|
||
5857 .LVL686:
|
||
3547:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5858 .loc 1 3547 14 view .LVU1941
|
||
5859 0058 6EE0 b .L429
|
||
5860 .L452:
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
5861 .loc 1 3550 19 is_stmt 1 discriminator 1 view .LVU1942
|
||
5862 005a 4FF0020A mov r10, #2
|
||
5863 005e 84F815A0 strb r10, [r4, #21]
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
5864 .loc 1 3550 19 discriminator 1 view .LVU1943
|
||
5865 0062 CDF804A0 str r10, [sp, #4]
|
||
5866 .LVL687:
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
5867 .loc 1 3550 19 is_stmt 0 view .LVU1944
|
||
5868 0066 95E0 b .L423
|
||
5869 .LVL688:
|
||
5870 .L453:
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
5871 .loc 1 3551 29 is_stmt 1 discriminator 1 view .LVU1945
|
||
5872 0068 4FF0010A mov r10, #1
|
||
5873 006c 84F815A0 strb r10, [r4, #21]
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
5874 .loc 1 3551 29 discriminator 1 view .LVU1946
|
||
5875 0070 CDF804A0 str r10, [sp, #4]
|
||
5876 .LVL689:
|
||
ARM GAS /tmp/ccH7dUYB.s page 236
|
||
|
||
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
5877 .loc 1 3551 29 is_stmt 0 view .LVU1947
|
||
5878 0074 8EE0 b .L423
|
||
5879 .LVL690:
|
||
5880 .L454:
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
5881 .loc 1 3555 15 is_stmt 1 discriminator 1 view .LVU1948
|
||
5882 0076 4FF0020A mov r10, #2
|
||
5883 007a 84F815A0 strb r10, [r4, #21]
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
5884 .loc 1 3555 15 discriminator 1 view .LVU1949
|
||
5885 007e CDF804A0 str r10, [sp, #4]
|
||
5886 .LVL691:
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
5887 .loc 1 3555 15 is_stmt 0 view .LVU1950
|
||
5888 0082 87E0 b .L423
|
||
5889 .LVL692:
|
||
5890 .L436:
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
5891 .loc 1 3562 78 is_stmt 1 discriminator 2 view .LVU1951
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
5892 .loc 1 3569 5 view .LVU1952
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
5893 .loc 1 3569 9 is_stmt 0 view .LVU1953
|
||
5894 0084 94F91430 ldrsb r3, [r4, #20]
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
5895 .loc 1 3569 8 view .LVU1954
|
||
5896 0088 002B cmp r3, #0
|
||
5897 008a 04DB blt .L449
|
||
5898 .L437:
|
||
3574:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
5899 .loc 1 3574 5 is_stmt 1 view .LVU1955
|
||
3574:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
5900 .loc 1 3574 12 is_stmt 0 view .LVU1956
|
||
5901 008c 039B ldr r3, [sp, #12]
|
||
5902 008e 9D89 ldrh r5, [r3, #12]
|
||
5903 .LVL693:
|
||
3574:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
5904 .loc 1 3574 10 view .LVU1957
|
||
5905 0090 0AFB05F5 mul r5, r10, r5
|
||
5906 .LVL694:
|
||
3575:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5907 .loc 1 3575 5 is_stmt 1 view .LVU1958
|
||
5908 0094 32E0 b .L438
|
||
5909 .LVL695:
|
||
5910 .L449:
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
5911 .loc 1 3569 36 is_stmt 0 discriminator 1 view .LVU1959
|
||
5912 0096 236A ldr r3, [r4, #32]
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
5913 .loc 1 3569 43 discriminator 1 view .LVU1960
|
||
5914 0098 A3EB0903 sub r3, r3, r9
|
||
3569:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(rbuff + ((fp->sect - sect) * SS(fs)), fp->buf, SS(fs));
|
||
5915 .loc 1 3569 31 discriminator 1 view .LVU1961
|
||
5916 009c 5345 cmp r3, r10
|
||
5917 009e F5D2 bcs .L437
|
||
3570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 237
|
||
|
||
|
||
5918 .loc 1 3570 6 is_stmt 1 view .LVU1962
|
||
3570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5919 .loc 1 3570 43 is_stmt 0 view .LVU1963
|
||
5920 00a0 039A ldr r2, [sp, #12]
|
||
5921 00a2 9289 ldrh r2, [r2, #12]
|
||
3570:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5922 .loc 1 3570 6 view .LVU1964
|
||
5923 00a4 04F13001 add r1, r4, #48
|
||
5924 00a8 02FB0370 mla r0, r2, r3, r7
|
||
5925 00ac FFF7FEFF bl mem_cpy
|
||
5926 .LVL696:
|
||
5927 00b0 ECE7 b .L437
|
||
5928 .L434:
|
||
3578:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5929 .loc 1 3578 4 is_stmt 1 view .LVU1965
|
||
3578:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5930 .loc 1 3578 10 is_stmt 0 view .LVU1966
|
||
5931 00b2 226A ldr r2, [r4, #32]
|
||
3578:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
5932 .loc 1 3578 7 view .LVU1967
|
||
5933 00b4 4A45 cmp r2, r9
|
||
5934 00b6 0DD0 beq .L439
|
||
3580:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
5935 .loc 1 3580 5 is_stmt 1 view .LVU1968
|
||
3580:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
5936 .loc 1 3580 9 is_stmt 0 view .LVU1969
|
||
5937 00b8 94F91430 ldrsb r3, [r4, #20]
|
||
3580:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
5938 .loc 1 3580 8 view .LVU1970
|
||
5939 00bc 002B cmp r3, #0
|
||
5940 00be 6DDB blt .L450
|
||
5941 .L440:
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5942 .loc 1 3585 5 is_stmt 1 view .LVU1971
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5943 .loc 1 3585 9 is_stmt 0 view .LVU1972
|
||
5944 00c0 0123 movs r3, #1
|
||
5945 00c2 4A46 mov r2, r9
|
||
5946 00c4 04F13001 add r1, r4, #48
|
||
5947 00c8 0398 ldr r0, [sp, #12]
|
||
5948 00ca 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
5949 00cc FFF7FEFF bl disk_read
|
||
5950 .LVL697:
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5951 .loc 1 3585 8 discriminator 1 view .LVU1973
|
||
5952 00d0 0028 cmp r0, #0
|
||
5953 00d2 77D1 bne .L451
|
||
5954 .L439:
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5955 .loc 1 3585 79 is_stmt 1 discriminator 2 view .LVU1974
|
||
3588:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5956 .loc 1 3588 4 view .LVU1975
|
||
3588:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
5957 .loc 1 3588 13 is_stmt 0 view .LVU1976
|
||
5958 00d4 C4F82090 str r9, [r4, #32]
|
||
5959 .LVL698:
|
||
5960 .L426:
|
||
ARM GAS /tmp/ccH7dUYB.s page 238
|
||
|
||
|
||
3590:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */
|
||
5961 .loc 1 3590 3 is_stmt 1 view .LVU1977
|
||
3590:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */
|
||
5962 .loc 1 3590 10 is_stmt 0 view .LVU1978
|
||
5963 00d8 039B ldr r3, [sp, #12]
|
||
5964 00da 9D89 ldrh r5, [r3, #12]
|
||
3590:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */
|
||
5965 .loc 1 3590 27 view .LVU1979
|
||
5966 00dc A369 ldr r3, [r4, #24]
|
||
3590:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */
|
||
5967 .loc 1 3590 34 view .LVU1980
|
||
5968 00de B3FBF5F2 udiv r2, r3, r5
|
||
5969 00e2 05FB1233 mls r3, r5, r2, r3
|
||
3590:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */
|
||
5970 .loc 1 3590 8 view .LVU1981
|
||
5971 00e6 ED1A subs r5, r5, r3
|
||
5972 .LVL699:
|
||
3591:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
5973 .loc 1 3591 3 is_stmt 1 view .LVU1982
|
||
3591:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
5974 .loc 1 3591 6 is_stmt 0 view .LVU1983
|
||
5975 00e8 AE42 cmp r6, r5
|
||
5976 00ea 00D2 bcs .L442
|
||
3591:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
5977 .loc 1 3591 24 discriminator 1 view .LVU1984
|
||
5978 00ec 3546 mov r5, r6
|
||
5979 .LVL700:
|
||
5980 .L442:
|
||
3596:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5981 .loc 1 3596 3 is_stmt 1 view .LVU1985
|
||
3596:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5982 .loc 1 3596 18 is_stmt 0 view .LVU1986
|
||
5983 00ee 04F13001 add r1, r4, #48
|
||
3596:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
5984 .loc 1 3596 3 view .LVU1987
|
||
5985 00f2 2A46 mov r2, r5
|
||
5986 00f4 1944 add r1, r1, r3
|
||
5987 00f6 3846 mov r0, r7
|
||
5988 00f8 FFF7FEFF bl mem_cpy
|
||
5989 .LVL701:
|
||
5990 .L438:
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
5991 .loc 1 3534 47 is_stmt 1 view .LVU1988
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
5992 .loc 1 3534 9 is_stmt 0 view .LVU1989
|
||
5993 00fc 2F44 add r7, r7, r5
|
||
5994 .LVL702:
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
5995 .loc 1 3534 20 view .LVU1990
|
||
5996 00fe A369 ldr r3, [r4, #24]
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
5997 .loc 1 3534 27 view .LVU1991
|
||
5998 0100 2B44 add r3, r3, r5
|
||
5999 0102 A361 str r3, [r4, #24]
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6000 .loc 1 3534 36 view .LVU1992
|
||
6001 0104 D8F80030 ldr r3, [r8]
|
||
ARM GAS /tmp/ccH7dUYB.s page 239
|
||
|
||
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6002 .loc 1 3534 40 view .LVU1993
|
||
6003 0108 2B44 add r3, r3, r5
|
||
6004 010a C8F80030 str r3, [r8]
|
||
3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6005 .loc 1 3534 53 view .LVU1994
|
||
6006 010e 761B subs r6, r6, r5
|
||
6007 .LVL703:
|
||
6008 .L443:
|
||
3533:Middlewares/Third_Party/FatFs/src/ff.c **** rbuff += rcnt, fp->fptr += rcnt, *br += rcnt, btr -= rcnt) {
|
||
6009 .loc 1 3533 11 is_stmt 1 view .LVU1995
|
||
6010 0110 002E cmp r6, #0
|
||
6011 0112 3FD0 beq .L423
|
||
3535:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
6012 .loc 1 3535 3 view .LVU1996
|
||
3535:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
6013 .loc 1 3535 9 is_stmt 0 view .LVU1997
|
||
6014 0114 A169 ldr r1, [r4, #24]
|
||
3535:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
6015 .loc 1 3535 18 view .LVU1998
|
||
6016 0116 039A ldr r2, [sp, #12]
|
||
6017 0118 9589 ldrh r5, [r2, #12]
|
||
3535:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
6018 .loc 1 3535 16 view .LVU1999
|
||
6019 011a B1FBF5F3 udiv r3, r1, r5
|
||
6020 011e 05FB1313 mls r3, r5, r3, r1
|
||
3535:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */
|
||
6021 .loc 1 3535 6 view .LVU2000
|
||
6022 0122 002B cmp r3, #0
|
||
6023 0124 D8D1 bne .L426
|
||
3536:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6024 .loc 1 3536 4 is_stmt 1 view .LVU2001
|
||
3536:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6025 .loc 1 3536 28 is_stmt 0 view .LVU2002
|
||
6026 0126 B1FBF5F5 udiv r5, r1, r5
|
||
3536:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6027 .loc 1 3536 42 view .LVU2003
|
||
6028 012a 5389 ldrh r3, [r2, #10]
|
||
3536:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6029 .loc 1 3536 50 view .LVU2004
|
||
6030 012c 013B subs r3, r3, #1
|
||
6031 .LVL704:
|
||
3537:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
6032 .loc 1 3537 4 is_stmt 1 view .LVU2005
|
||
3537:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
6033 .loc 1 3537 7 is_stmt 0 view .LVU2006
|
||
6034 012e 1D40 ands r5, r5, r3
|
||
6035 .LVL705:
|
||
3537:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
6036 .loc 1 3537 7 view .LVU2007
|
||
6037 0130 08D1 bne .L427
|
||
3538:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow cluster chain from the origin */
|
||
6038 .loc 1 3538 5 is_stmt 1 view .LVU2008
|
||
3538:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow cluster chain from the origin */
|
||
6039 .loc 1 3538 8 is_stmt 0 view .LVU2009
|
||
6040 0132 0029 cmp r1, #0
|
||
6041 0134 86D1 bne .L428
|
||
ARM GAS /tmp/ccH7dUYB.s page 240
|
||
|
||
|
||
3539:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Middle or end of the file */
|
||
6042 .loc 1 3539 6 is_stmt 1 view .LVU2010
|
||
3539:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Middle or end of the file */
|
||
6043 .loc 1 3539 11 is_stmt 0 view .LVU2011
|
||
6044 0136 A068 ldr r0, [r4, #8]
|
||
6045 .LVL706:
|
||
6046 .L429:
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6047 .loc 1 3550 5 is_stmt 1 view .LVU2012
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6048 .loc 1 3550 8 is_stmt 0 view .LVU2013
|
||
6049 0138 0128 cmp r0, #1
|
||
6050 013a 8ED9 bls .L452
|
||
3550:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6051 .loc 1 3550 40 is_stmt 1 discriminator 2 view .LVU2014
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6052 .loc 1 3551 5 view .LVU2015
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6053 .loc 1 3551 8 is_stmt 0 view .LVU2016
|
||
6054 013c B0F1FF3F cmp r0, #-1
|
||
6055 0140 92D0 beq .L453
|
||
3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6056 .loc 1 3551 51 is_stmt 1 discriminator 2 view .LVU2017
|
||
3552:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6057 .loc 1 3552 5 view .LVU2018
|
||
3552:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6058 .loc 1 3552 15 is_stmt 0 view .LVU2019
|
||
6059 0142 E061 str r0, [r4, #28]
|
||
6060 .LVL707:
|
||
6061 .L427:
|
||
3554:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
6062 .loc 1 3554 4 is_stmt 1 view .LVU2020
|
||
3554:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
6063 .loc 1 3554 11 is_stmt 0 view .LVU2021
|
||
6064 0144 DDF80CB0 ldr fp, [sp, #12]
|
||
6065 0148 E169 ldr r1, [r4, #28]
|
||
6066 014a 5846 mov r0, fp
|
||
6067 014c FFF7FEFF bl clust2sect
|
||
6068 .LVL708:
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6069 .loc 1 3555 4 is_stmt 1 view .LVU2022
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6070 .loc 1 3555 7 is_stmt 0 view .LVU2023
|
||
6071 0150 8146 mov r9, r0
|
||
6072 0152 0028 cmp r0, #0
|
||
6073 0154 8FD0 beq .L454
|
||
3555:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6074 .loc 1 3555 36 is_stmt 1 discriminator 2 view .LVU2024
|
||
3556:Middlewares/Third_Party/FatFs/src/ff.c **** cc = btr / SS(fs); /* When remaining bytes >= sector size, */
|
||
6075 .loc 1 3556 4 view .LVU2025
|
||
3556:Middlewares/Third_Party/FatFs/src/ff.c **** cc = btr / SS(fs); /* When remaining bytes >= sector size, */
|
||
6076 .loc 1 3556 9 is_stmt 0 view .LVU2026
|
||
6077 0156 A944 add r9, r9, r5
|
||
6078 .LVL709:
|
||
3557:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Read maximum contiguous sectors directly */
|
||
6079 .loc 1 3557 4 is_stmt 1 view .LVU2027
|
||
3557:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Read maximum contiguous sectors directly */
|
||
ARM GAS /tmp/ccH7dUYB.s page 241
|
||
|
||
|
||
6080 .loc 1 3557 15 is_stmt 0 view .LVU2028
|
||
6081 0158 BBF80C30 ldrh r3, [fp, #12]
|
||
3557:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Read maximum contiguous sectors directly */
|
||
6082 .loc 1 3557 7 view .LVU2029
|
||
6083 015c B6FBF3FA udiv r10, r6, r3
|
||
6084 .LVL710:
|
||
3558:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect + cc > fs->csize) { /* Clip at cluster boundary */
|
||
6085 .loc 1 3558 4 is_stmt 1 view .LVU2030
|
||
3558:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect + cc > fs->csize) { /* Clip at cluster boundary */
|
||
6086 .loc 1 3558 7 is_stmt 0 view .LVU2031
|
||
6087 0160 B342 cmp r3, r6
|
||
6088 0162 A6D8 bhi .L434
|
||
3559:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6089 .loc 1 3559 5 is_stmt 1 view .LVU2032
|
||
3559:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6090 .loc 1 3559 15 is_stmt 0 view .LVU2033
|
||
6091 0164 05EB0A03 add r3, r5, r10
|
||
3559:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6092 .loc 1 3559 24 view .LVU2034
|
||
6093 0168 BBF80A20 ldrh r2, [fp, #10]
|
||
3559:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6094 .loc 1 3559 8 view .LVU2035
|
||
6095 016c 9342 cmp r3, r2
|
||
6096 016e 01D9 bls .L435
|
||
3560:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6097 .loc 1 3560 6 is_stmt 1 view .LVU2036
|
||
3560:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6098 .loc 1 3560 9 is_stmt 0 view .LVU2037
|
||
6099 0170 A2EB050A sub r10, r2, r5
|
||
6100 .LVL711:
|
||
6101 .L435:
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
6102 .loc 1 3562 5 is_stmt 1 view .LVU2038
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
6103 .loc 1 3562 9 is_stmt 0 view .LVU2039
|
||
6104 0174 5346 mov r3, r10
|
||
6105 0176 4A46 mov r2, r9
|
||
6106 0178 3946 mov r1, r7
|
||
6107 017a 9BF80100 ldrb r0, [fp, #1] @ zero_extendqisi2
|
||
6108 017e FFF7FEFF bl disk_read
|
||
6109 .LVL712:
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
6110 .loc 1 3562 8 discriminator 1 view .LVU2040
|
||
6111 0182 0028 cmp r0, #0
|
||
6112 0184 3FF47EAF beq .L436
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
6113 .loc 1 3562 56 is_stmt 1 discriminator 1 view .LVU2041
|
||
6114 0188 4FF0010A mov r10, #1
|
||
6115 .LVL713:
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
6116 .loc 1 3562 56 is_stmt 0 discriminator 1 view .LVU2042
|
||
6117 018c 84F815A0 strb r10, [r4, #21]
|
||
3562:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it
|
||
6118 .loc 1 3562 56 is_stmt 1 discriminator 1 view .LVU2043
|
||
6119 0190 CDF804A0 str r10, [sp, #4]
|
||
6120 .LVL714:
|
||
6121 .L423:
|
||
ARM GAS /tmp/ccH7dUYB.s page 242
|
||
|
||
|
||
3601:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6122 .loc 1 3601 1 is_stmt 0 view .LVU2044
|
||
6123 0194 0198 ldr r0, [sp, #4]
|
||
6124 0196 05B0 add sp, sp, #20
|
||
6125 .LCFI48:
|
||
6126 .cfi_remember_state
|
||
6127 .cfi_def_cfa_offset 36
|
||
6128 @ sp needed
|
||
6129 0198 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
6130 .LVL715:
|
||
6131 .L450:
|
||
6132 .LCFI49:
|
||
6133 .cfi_restore_state
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6134 .loc 1 3581 6 is_stmt 1 view .LVU2045
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6135 .loc 1 3581 10 is_stmt 0 view .LVU2046
|
||
6136 019c 0123 movs r3, #1
|
||
6137 019e 04F13001 add r1, r4, #48
|
||
6138 01a2 9BF80100 ldrb r0, [fp, #1] @ zero_extendqisi2
|
||
6139 01a6 FFF7FEFF bl disk_write
|
||
6140 .LVL716:
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6141 .loc 1 3581 9 discriminator 1 view .LVU2047
|
||
6142 01aa 20B9 cbnz r0, .L455
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6143 .loc 1 3581 85 is_stmt 1 discriminator 2 view .LVU2048
|
||
3582:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6144 .loc 1 3582 6 view .LVU2049
|
||
3582:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6145 .loc 1 3582 8 is_stmt 0 view .LVU2050
|
||
6146 01ac 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3582:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6147 .loc 1 3582 15 view .LVU2051
|
||
6148 01ae 03F07F03 and r3, r3, #127
|
||
6149 01b2 2375 strb r3, [r4, #20]
|
||
6150 01b4 84E7 b .L440
|
||
6151 .L455:
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6152 .loc 1 3581 63 is_stmt 1 discriminator 1 view .LVU2052
|
||
6153 01b6 4FF0010A mov r10, #1
|
||
6154 .LVL717:
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6155 .loc 1 3581 63 is_stmt 0 discriminator 1 view .LVU2053
|
||
6156 01ba 84F815A0 strb r10, [r4, #21]
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6157 .loc 1 3581 63 is_stmt 1 discriminator 1 view .LVU2054
|
||
6158 01be CDF804A0 str r10, [sp, #4]
|
||
6159 .LVL718:
|
||
3581:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6160 .loc 1 3581 63 is_stmt 0 view .LVU2055
|
||
6161 01c2 E7E7 b .L423
|
||
6162 .LVL719:
|
||
6163 .L451:
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6164 .loc 1 3585 57 is_stmt 1 discriminator 1 view .LVU2056
|
||
6165 01c4 4FF0010A mov r10, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 243
|
||
|
||
|
||
6166 .LVL720:
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6167 .loc 1 3585 57 is_stmt 0 discriminator 1 view .LVU2057
|
||
6168 01c8 84F815A0 strb r10, [r4, #21]
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6169 .loc 1 3585 57 is_stmt 1 discriminator 1 view .LVU2058
|
||
6170 01cc CDF804A0 str r10, [sp, #4]
|
||
6171 .LVL721:
|
||
3585:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6172 .loc 1 3585 57 is_stmt 0 view .LVU2059
|
||
6173 01d0 E0E7 b .L423
|
||
6174 .LVL722:
|
||
6175 .L445:
|
||
3529:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
6176 .loc 1 3529 29 discriminator 1 view .LVU2060
|
||
6177 01d2 0723 movs r3, #7
|
||
6178 01d4 0193 str r3, [sp, #4]
|
||
6179 .LVL723:
|
||
3529:Middlewares/Third_Party/FatFs/src/ff.c **** remain = fp->obj.objsize - fp->fptr;
|
||
6180 .loc 1 3529 29 discriminator 1 view .LVU2061
|
||
6181 01d6 DDE7 b .L423
|
||
6182 .cfi_endproc
|
||
6183 .LFE1223:
|
||
6185 .section .text.f_write,"ax",%progbits
|
||
6186 .align 1
|
||
6187 .global f_write
|
||
6188 .syntax unified
|
||
6189 .thumb
|
||
6190 .thumb_func
|
||
6192 f_write:
|
||
6193 .LVL724:
|
||
6194 .LFB1224:
|
||
3617:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
6195 .loc 1 3617 1 is_stmt 1 view -0
|
||
6196 .cfi_startproc
|
||
6197 @ args = 0, pretend = 0, frame = 16
|
||
6198 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3617:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
6199 .loc 1 3617 1 is_stmt 0 view .LVU2063
|
||
6200 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
6201 .LCFI50:
|
||
6202 .cfi_def_cfa_offset 36
|
||
6203 .cfi_offset 4, -36
|
||
6204 .cfi_offset 5, -32
|
||
6205 .cfi_offset 6, -28
|
||
6206 .cfi_offset 7, -24
|
||
6207 .cfi_offset 8, -20
|
||
6208 .cfi_offset 9, -16
|
||
6209 .cfi_offset 10, -12
|
||
6210 .cfi_offset 11, -8
|
||
6211 .cfi_offset 14, -4
|
||
6212 0004 85B0 sub sp, sp, #20
|
||
6213 .LCFI51:
|
||
6214 .cfi_def_cfa_offset 56
|
||
6215 0006 0446 mov r4, r0
|
||
6216 0008 0F46 mov r7, r1
|
||
6217 000a 1546 mov r5, r2
|
||
ARM GAS /tmp/ccH7dUYB.s page 244
|
||
|
||
|
||
6218 000c 9846 mov r8, r3
|
||
3618:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
6219 .loc 1 3618 2 is_stmt 1 view .LVU2064
|
||
3619:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, sect;
|
||
6220 .loc 1 3619 2 view .LVU2065
|
||
3620:Middlewares/Third_Party/FatFs/src/ff.c **** UINT wcnt, cc, csect;
|
||
6221 .loc 1 3620 2 view .LVU2066
|
||
3621:Middlewares/Third_Party/FatFs/src/ff.c **** const BYTE *wbuff = (const BYTE*)buff;
|
||
6222 .loc 1 3621 2 view .LVU2067
|
||
3622:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6223 .loc 1 3622 2 view .LVU2068
|
||
6224 .LVL725:
|
||
3625:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
6225 .loc 1 3625 2 view .LVU2069
|
||
3625:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
6226 .loc 1 3625 6 is_stmt 0 view .LVU2070
|
||
6227 000e 0023 movs r3, #0
|
||
6228 .LVL726:
|
||
3625:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */
|
||
6229 .loc 1 3625 6 view .LVU2071
|
||
6230 0010 C8F80030 str r3, [r8]
|
||
3626:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
6231 .loc 1 3626 2 is_stmt 1 view .LVU2072
|
||
3626:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
6232 .loc 1 3626 8 is_stmt 0 view .LVU2073
|
||
6233 0014 03A9 add r1, sp, #12
|
||
6234 .LVL727:
|
||
3626:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */
|
||
6235 .loc 1 3626 8 view .LVU2074
|
||
6236 0016 FFF7FEFF bl validate
|
||
6237 .LVL728:
|
||
3627:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
6238 .loc 1 3627 2 is_stmt 1 view .LVU2075
|
||
3627:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
6239 .loc 1 3627 5 is_stmt 0 view .LVU2076
|
||
6240 001a 0190 str r0, [sp, #4]
|
||
6241 001c 0028 cmp r0, #0
|
||
6242 001e 4AD1 bne .L459
|
||
3627:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
6243 .loc 1 3627 27 discriminator 2 view .LVU2077
|
||
6244 0020 637D ldrb r3, [r4, #21] @ zero_extendqisi2
|
||
6245 0022 0193 str r3, [sp, #4]
|
||
6246 .LVL729:
|
||
3627:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
6247 .loc 1 3627 19 discriminator 2 view .LVU2078
|
||
6248 0024 002B cmp r3, #0
|
||
6249 0026 46D1 bne .L459
|
||
3628:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6250 .loc 1 3628 2 is_stmt 1 view .LVU2079
|
||
3628:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6251 .loc 1 3628 10 is_stmt 0 view .LVU2080
|
||
6252 0028 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
6253 .LVL730:
|
||
3628:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6254 .loc 1 3628 5 view .LVU2081
|
||
6255 002a 13F0020F tst r3, #2
|
||
6256 002e 00F0EC80 beq .L482
|
||
ARM GAS /tmp/ccH7dUYB.s page 245
|
||
|
||
|
||
3631:Middlewares/Third_Party/FatFs/src/ff.c **** btw = (UINT)(0xFFFFFFFF - (DWORD)fp->fptr);
|
||
6257 .loc 1 3631 2 is_stmt 1 view .LVU2082
|
||
3631:Middlewares/Third_Party/FatFs/src/ff.c **** btw = (UINT)(0xFFFFFFFF - (DWORD)fp->fptr);
|
||
6258 .loc 1 3631 59 is_stmt 0 view .LVU2083
|
||
6259 0032 A369 ldr r3, [r4, #24]
|
||
3631:Middlewares/Third_Party/FatFs/src/ff.c **** btw = (UINT)(0xFFFFFFFF - (DWORD)fp->fptr);
|
||
6260 .loc 1 3631 5 view .LVU2084
|
||
6261 0034 EB42 cmn r3, r5
|
||
6262 0036 C0F0B680 bcc .L480
|
||
3632:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6263 .loc 1 3632 3 is_stmt 1 view .LVU2085
|
||
3632:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6264 .loc 1 3632 7 is_stmt 0 view .LVU2086
|
||
6265 003a DD43 mvns r5, r3
|
||
6266 .LVL731:
|
||
3632:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6267 .loc 1 3632 7 view .LVU2087
|
||
6268 003c B3E0 b .L480
|
||
6269 .LVL732:
|
||
6270 .L463:
|
||
3647:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
6271 .loc 1 3647 6 is_stmt 1 view .LVU2088
|
||
3647:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
6272 .loc 1 3647 12 is_stmt 0 view .LVU2089
|
||
6273 003e E36A ldr r3, [r4, #44]
|
||
3647:Middlewares/Third_Party/FatFs/src/ff.c **** clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
|
||
6274 .loc 1 3647 9 view .LVU2090
|
||
6275 0040 002B cmp r3, #0
|
||
6276 0042 3CD0 beq .L466
|
||
3648:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
6277 .loc 1 3648 7 is_stmt 1 view .LVU2091
|
||
3648:Middlewares/Third_Party/FatFs/src/ff.c **** } else
|
||
6278 .loc 1 3648 14 is_stmt 0 view .LVU2092
|
||
6279 0044 2046 mov r0, r4
|
||
6280 0046 FFF7FEFF bl clmt_clust
|
||
6281 .LVL733:
|
||
6282 .L465:
|
||
3655:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
6283 .loc 1 3655 5 is_stmt 1 view .LVU2093
|
||
3655:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
6284 .loc 1 3655 8 is_stmt 0 view .LVU2094
|
||
6285 004a 0028 cmp r0, #0
|
||
6286 004c 00F0D880 beq .L467
|
||
6287 .L464:
|
||
6288 .LVL734:
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6289 .loc 1 3656 5 is_stmt 1 view .LVU2095
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6290 .loc 1 3656 8 is_stmt 0 view .LVU2096
|
||
6291 0050 0128 cmp r0, #1
|
||
6292 0052 39D0 beq .L485
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6293 .loc 1 3656 41 is_stmt 1 discriminator 2 view .LVU2097
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6294 .loc 1 3657 5 view .LVU2098
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6295 .loc 1 3657 8 is_stmt 0 view .LVU2099
|
||
ARM GAS /tmp/ccH7dUYB.s page 246
|
||
|
||
|
||
6296 0054 B0F1FF3F cmp r0, #-1
|
||
6297 0058 3DD0 beq .L486
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6298 .loc 1 3657 51 is_stmt 1 discriminator 2 view .LVU2100
|
||
3658:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->obj.sclust == 0) fp->obj.sclust = clst; /* Set start cluster if the first write */
|
||
6299 .loc 1 3658 5 view .LVU2101
|
||
3658:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->obj.sclust == 0) fp->obj.sclust = clst; /* Set start cluster if the first write */
|
||
6300 .loc 1 3658 15 is_stmt 0 view .LVU2102
|
||
6301 005a E061 str r0, [r4, #28]
|
||
3659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6302 .loc 1 3659 5 is_stmt 1 view .LVU2103
|
||
3659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6303 .loc 1 3659 16 is_stmt 0 view .LVU2104
|
||
6304 005c A368 ldr r3, [r4, #8]
|
||
3659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6305 .loc 1 3659 8 view .LVU2105
|
||
6306 005e 03B9 cbnz r3, .L462
|
||
3659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6307 .loc 1 3659 30 is_stmt 1 discriminator 1 view .LVU2106
|
||
3659:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6308 .loc 1 3659 45 is_stmt 0 discriminator 1 view .LVU2107
|
||
6309 0060 A060 str r0, [r4, #8]
|
||
6310 .L462:
|
||
3664:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
6311 .loc 1 3664 4 is_stmt 1 view .LVU2108
|
||
3664:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
6312 .loc 1 3664 8 is_stmt 0 view .LVU2109
|
||
6313 0062 94F91430 ldrsb r3, [r4, #20]
|
||
3664:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
6314 .loc 1 3664 7 view .LVU2110
|
||
6315 0066 002B cmp r3, #0
|
||
6316 0068 3CDB blt .L487
|
||
6317 .L470:
|
||
3669:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
6318 .loc 1 3669 4 is_stmt 1 view .LVU2111
|
||
3669:Middlewares/Third_Party/FatFs/src/ff.c **** if (!sect) ABORT(fs, FR_INT_ERR);
|
||
6319 .loc 1 3669 11 is_stmt 0 view .LVU2112
|
||
6320 006a DDF80CB0 ldr fp, [sp, #12]
|
||
6321 006e E169 ldr r1, [r4, #28]
|
||
6322 0070 5846 mov r0, fp
|
||
6323 0072 FFF7FEFF bl clust2sect
|
||
6324 .LVL735:
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6325 .loc 1 3670 4 is_stmt 1 view .LVU2113
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6326 .loc 1 3670 7 is_stmt 0 view .LVU2114
|
||
6327 0076 8146 mov r9, r0
|
||
6328 0078 0028 cmp r0, #0
|
||
6329 007a 48D0 beq .L488
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6330 .loc 1 3670 36 is_stmt 1 discriminator 2 view .LVU2115
|
||
3671:Middlewares/Third_Party/FatFs/src/ff.c **** cc = btw / SS(fs); /* When remaining bytes >= sector size, */
|
||
6331 .loc 1 3671 4 view .LVU2116
|
||
3671:Middlewares/Third_Party/FatFs/src/ff.c **** cc = btw / SS(fs); /* When remaining bytes >= sector size, */
|
||
6332 .loc 1 3671 9 is_stmt 0 view .LVU2117
|
||
6333 007c B144 add r9, r9, r6
|
||
6334 .LVL736:
|
||
ARM GAS /tmp/ccH7dUYB.s page 247
|
||
|
||
|
||
3672:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Write maximum contiguous sectors directly */
|
||
6335 .loc 1 3672 4 is_stmt 1 view .LVU2118
|
||
3672:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Write maximum contiguous sectors directly */
|
||
6336 .loc 1 3672 15 is_stmt 0 view .LVU2119
|
||
6337 007e BBF80C30 ldrh r3, [fp, #12]
|
||
3672:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Write maximum contiguous sectors directly */
|
||
6338 .loc 1 3672 7 view .LVU2120
|
||
6339 0082 B5FBF3FA udiv r10, r5, r3
|
||
6340 .LVL737:
|
||
3673:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect + cc > fs->csize) { /* Clip at cluster boundary */
|
||
6341 .loc 1 3673 4 is_stmt 1 view .LVU2121
|
||
3673:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect + cc > fs->csize) { /* Clip at cluster boundary */
|
||
6342 .loc 1 3673 7 is_stmt 0 view .LVU2122
|
||
6343 0086 AB42 cmp r3, r5
|
||
6344 0088 5FD8 bhi .L473
|
||
3674:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6345 .loc 1 3674 5 is_stmt 1 view .LVU2123
|
||
3674:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6346 .loc 1 3674 15 is_stmt 0 view .LVU2124
|
||
6347 008a 06EB0A03 add r3, r6, r10
|
||
3674:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6348 .loc 1 3674 24 view .LVU2125
|
||
6349 008e BBF80A20 ldrh r2, [fp, #10]
|
||
3674:Middlewares/Third_Party/FatFs/src/ff.c **** cc = fs->csize - csect;
|
||
6350 .loc 1 3674 8 view .LVU2126
|
||
6351 0092 9342 cmp r3, r2
|
||
6352 0094 01D9 bls .L474
|
||
3675:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6353 .loc 1 3675 6 is_stmt 1 view .LVU2127
|
||
3675:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6354 .loc 1 3675 9 is_stmt 0 view .LVU2128
|
||
6355 0096 A2EB060A sub r10, r2, r6
|
||
6356 .LVL738:
|
||
6357 .L474:
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6358 .loc 1 3677 5 is_stmt 1 view .LVU2129
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6359 .loc 1 3677 9 is_stmt 0 view .LVU2130
|
||
6360 009a 5346 mov r3, r10
|
||
6361 009c 4A46 mov r2, r9
|
||
6362 009e 3946 mov r1, r7
|
||
6363 00a0 9BF80100 ldrb r0, [fp, #1] @ zero_extendqisi2
|
||
6364 00a4 FFF7FEFF bl disk_write
|
||
6365 .LVL739:
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6366 .loc 1 3677 8 discriminator 1 view .LVU2131
|
||
6367 00a8 C0B3 cbz r0, .L475
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6368 .loc 1 3677 57 is_stmt 1 discriminator 1 view .LVU2132
|
||
6369 00aa 4FF0010A mov r10, #1
|
||
6370 .LVL740:
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6371 .loc 1 3677 57 is_stmt 0 discriminator 1 view .LVU2133
|
||
6372 00ae 84F815A0 strb r10, [r4, #21]
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6373 .loc 1 3677 57 is_stmt 1 discriminator 1 view .LVU2134
|
||
6374 00b2 CDF804A0 str r10, [sp, #4]
|
||
ARM GAS /tmp/ccH7dUYB.s page 248
|
||
|
||
|
||
6375 .LVL741:
|
||
6376 .L459:
|
||
3723:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6377 .loc 1 3723 1 is_stmt 0 view .LVU2135
|
||
6378 00b6 0198 ldr r0, [sp, #4]
|
||
6379 00b8 05B0 add sp, sp, #20
|
||
6380 .LCFI52:
|
||
6381 .cfi_remember_state
|
||
6382 .cfi_def_cfa_offset 36
|
||
6383 @ sp needed
|
||
6384 00ba BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
6385 .LVL742:
|
||
6386 .L466:
|
||
6387 .LCFI53:
|
||
6388 .cfi_restore_state
|
||
3652:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6389 .loc 1 3652 7 is_stmt 1 view .LVU2136
|
||
3652:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6390 .loc 1 3652 14 is_stmt 0 view .LVU2137
|
||
6391 00be E169 ldr r1, [r4, #28]
|
||
6392 00c0 2046 mov r0, r4
|
||
6393 00c2 FFF7FEFF bl create_chain
|
||
6394 .LVL743:
|
||
3652:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6395 .loc 1 3652 14 view .LVU2138
|
||
6396 00c6 C0E7 b .L465
|
||
6397 .LVL744:
|
||
6398 .L485:
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6399 .loc 1 3656 20 is_stmt 1 discriminator 1 view .LVU2139
|
||
6400 00c8 4FF0020A mov r10, #2
|
||
6401 00cc 84F815A0 strb r10, [r4, #21]
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6402 .loc 1 3656 20 discriminator 1 view .LVU2140
|
||
6403 00d0 CDF804A0 str r10, [sp, #4]
|
||
6404 .LVL745:
|
||
3656:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
6405 .loc 1 3656 20 is_stmt 0 view .LVU2141
|
||
6406 00d4 EFE7 b .L459
|
||
6407 .LVL746:
|
||
6408 .L486:
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6409 .loc 1 3657 29 is_stmt 1 discriminator 1 view .LVU2142
|
||
6410 00d6 4FF0010A mov r10, #1
|
||
6411 00da 84F815A0 strb r10, [r4, #21]
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6412 .loc 1 3657 29 discriminator 1 view .LVU2143
|
||
6413 00de CDF804A0 str r10, [sp, #4]
|
||
6414 .LVL747:
|
||
3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */
|
||
6415 .loc 1 3657 29 is_stmt 0 view .LVU2144
|
||
6416 00e2 E8E7 b .L459
|
||
6417 .LVL748:
|
||
6418 .L487:
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6419 .loc 1 3665 5 is_stmt 1 view .LVU2145
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
ARM GAS /tmp/ccH7dUYB.s page 249
|
||
|
||
|
||
6420 .loc 1 3665 9 is_stmt 0 view .LVU2146
|
||
6421 00e4 0123 movs r3, #1
|
||
6422 00e6 226A ldr r2, [r4, #32]
|
||
6423 00e8 04F13001 add r1, r4, #48
|
||
6424 00ec 0398 ldr r0, [sp, #12]
|
||
6425 00ee 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
6426 00f0 FFF7FEFF bl disk_write
|
||
6427 .LVL749:
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6428 .loc 1 3665 8 discriminator 1 view .LVU2147
|
||
6429 00f4 20B9 cbnz r0, .L489
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6430 .loc 1 3665 84 is_stmt 1 discriminator 2 view .LVU2148
|
||
3666:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6431 .loc 1 3666 5 view .LVU2149
|
||
3666:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6432 .loc 1 3666 7 is_stmt 0 view .LVU2150
|
||
6433 00f6 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3666:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6434 .loc 1 3666 14 view .LVU2151
|
||
6435 00f8 03F07F03 and r3, r3, #127
|
||
6436 00fc 2375 strb r3, [r4, #20]
|
||
6437 00fe B4E7 b .L470
|
||
6438 .L489:
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6439 .loc 1 3665 62 is_stmt 1 discriminator 1 view .LVU2152
|
||
6440 0100 4FF0010A mov r10, #1
|
||
6441 0104 84F815A0 strb r10, [r4, #21]
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6442 .loc 1 3665 62 discriminator 1 view .LVU2153
|
||
6443 0108 CDF804A0 str r10, [sp, #4]
|
||
6444 .LVL750:
|
||
3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6445 .loc 1 3665 62 is_stmt 0 view .LVU2154
|
||
6446 010c D3E7 b .L459
|
||
6447 .LVL751:
|
||
6448 .L488:
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6449 .loc 1 3670 15 is_stmt 1 discriminator 1 view .LVU2155
|
||
6450 010e 4FF0020A mov r10, #2
|
||
6451 0112 84F815A0 strb r10, [r4, #21]
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6452 .loc 1 3670 15 discriminator 1 view .LVU2156
|
||
6453 0116 CDF804A0 str r10, [sp, #4]
|
||
6454 .LVL752:
|
||
3670:Middlewares/Third_Party/FatFs/src/ff.c **** sect += csect;
|
||
6455 .loc 1 3670 15 is_stmt 0 view .LVU2157
|
||
6456 011a CCE7 b .L459
|
||
6457 .LVL753:
|
||
6458 .L475:
|
||
3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2
|
||
6459 .loc 1 3677 79 is_stmt 1 discriminator 2 view .LVU2158
|
||
3685:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs));
|
||
6460 .loc 1 3685 5 view .LVU2159
|
||
3685:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs));
|
||
6461 .loc 1 3685 11 is_stmt 0 view .LVU2160
|
||
6462 011c 236A ldr r3, [r4, #32]
|
||
ARM GAS /tmp/ccH7dUYB.s page 250
|
||
|
||
|
||
3685:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs));
|
||
6463 .loc 1 3685 18 view .LVU2161
|
||
6464 011e A3EB0903 sub r3, r3, r9
|
||
3685:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs));
|
||
6465 .loc 1 3685 8 view .LVU2162
|
||
6466 0122 5345 cmp r3, r10
|
||
6467 0124 04D3 bcc .L490
|
||
6468 .L476:
|
||
3691:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
6469 .loc 1 3691 5 is_stmt 1 view .LVU2163
|
||
3691:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
6470 .loc 1 3691 12 is_stmt 0 view .LVU2164
|
||
6471 0126 039B ldr r3, [sp, #12]
|
||
6472 0128 9E89 ldrh r6, [r3, #12]
|
||
6473 .LVL754:
|
||
3691:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
6474 .loc 1 3691 10 view .LVU2165
|
||
6475 012a 0AFB06F6 mul r6, r10, r6
|
||
6476 .LVL755:
|
||
3692:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6477 .loc 1 3692 5 is_stmt 1 view .LVU2166
|
||
6478 012e 2BE0 b .L477
|
||
6479 .LVL756:
|
||
6480 .L490:
|
||
3686:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6481 .loc 1 3686 6 view .LVU2167
|
||
3686:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6482 .loc 1 3686 52 is_stmt 0 view .LVU2168
|
||
6483 0130 039A ldr r2, [sp, #12]
|
||
6484 0132 9289 ldrh r2, [r2, #12]
|
||
3686:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6485 .loc 1 3686 6 view .LVU2169
|
||
6486 0134 02FB0371 mla r1, r2, r3, r7
|
||
6487 0138 04F13000 add r0, r4, #48
|
||
6488 013c FFF7FEFF bl mem_cpy
|
||
6489 .LVL757:
|
||
3687:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6490 .loc 1 3687 6 is_stmt 1 view .LVU2170
|
||
3687:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6491 .loc 1 3687 8 is_stmt 0 view .LVU2171
|
||
6492 0140 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3687:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6493 .loc 1 3687 15 view .LVU2172
|
||
6494 0142 03F07F03 and r3, r3, #127
|
||
6495 0146 2375 strb r3, [r4, #20]
|
||
6496 0148 EDE7 b .L476
|
||
6497 .L473:
|
||
3700:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr < fp->obj.objsize &&
|
||
6498 .loc 1 3700 4 is_stmt 1 view .LVU2173
|
||
3700:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr < fp->obj.objsize &&
|
||
6499 .loc 1 3700 10 is_stmt 0 view .LVU2174
|
||
6500 014a 236A ldr r3, [r4, #32]
|
||
3700:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr < fp->obj.objsize &&
|
||
6501 .loc 1 3700 7 view .LVU2175
|
||
6502 014c 4B45 cmp r3, r9
|
||
6503 014e 03D0 beq .L478
|
||
3701:Middlewares/Third_Party/FatFs/src/ff.c **** disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 251
|
||
|
||
|
||
6504 .loc 1 3701 7 view .LVU2176
|
||
6505 0150 A269 ldr r2, [r4, #24]
|
||
3701:Middlewares/Third_Party/FatFs/src/ff.c **** disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) {
|
||
6506 .loc 1 3701 23 view .LVU2177
|
||
6507 0152 E368 ldr r3, [r4, #12]
|
||
3700:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr < fp->obj.objsize &&
|
||
6508 .loc 1 3700 25 discriminator 1 view .LVU2178
|
||
6509 0154 9A42 cmp r2, r3
|
||
6510 0156 42D3 bcc .L491
|
||
6511 .L478:
|
||
3703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6512 .loc 1 3703 28 is_stmt 1 view .LVU2179
|
||
3706:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6513 .loc 1 3706 4 view .LVU2180
|
||
3706:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6514 .loc 1 3706 13 is_stmt 0 view .LVU2181
|
||
6515 0158 C4F82090 str r9, [r4, #32]
|
||
6516 .LVL758:
|
||
6517 .L461:
|
||
3708:Middlewares/Third_Party/FatFs/src/ff.c **** if (wcnt > btw) wcnt = btw; /* Clip it by btw if needed */
|
||
6518 .loc 1 3708 3 is_stmt 1 view .LVU2182
|
||
3708:Middlewares/Third_Party/FatFs/src/ff.c **** if (wcnt > btw) wcnt = btw; /* Clip it by btw if needed */
|
||
6519 .loc 1 3708 10 is_stmt 0 view .LVU2183
|
||
6520 015c 039B ldr r3, [sp, #12]
|
||
6521 015e 9E89 ldrh r6, [r3, #12]
|
||
3708:Middlewares/Third_Party/FatFs/src/ff.c **** if (wcnt > btw) wcnt = btw; /* Clip it by btw if needed */
|
||
6522 .loc 1 3708 27 view .LVU2184
|
||
6523 0160 A369 ldr r3, [r4, #24]
|
||
3708:Middlewares/Third_Party/FatFs/src/ff.c **** if (wcnt > btw) wcnt = btw; /* Clip it by btw if needed */
|
||
6524 .loc 1 3708 34 view .LVU2185
|
||
6525 0162 B3FBF6F2 udiv r2, r3, r6
|
||
6526 0166 06FB1233 mls r3, r6, r2, r3
|
||
3708:Middlewares/Third_Party/FatFs/src/ff.c **** if (wcnt > btw) wcnt = btw; /* Clip it by btw if needed */
|
||
6527 .loc 1 3708 8 view .LVU2186
|
||
6528 016a F61A subs r6, r6, r3
|
||
6529 .LVL759:
|
||
3709:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
6530 .loc 1 3709 3 is_stmt 1 view .LVU2187
|
||
3709:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
6531 .loc 1 3709 6 is_stmt 0 view .LVU2188
|
||
6532 016c B542 cmp r5, r6
|
||
6533 016e 00D2 bcs .L479
|
||
3709:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY
|
||
6534 .loc 1 3709 24 discriminator 1 view .LVU2189
|
||
6535 0170 2E46 mov r6, r5
|
||
6536 .LVL760:
|
||
6537 .L479:
|
||
3715:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_DIRTY;
|
||
6538 .loc 1 3715 3 is_stmt 1 view .LVU2190
|
||
3715:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_DIRTY;
|
||
6539 .loc 1 3715 11 is_stmt 0 view .LVU2191
|
||
6540 0172 04F13000 add r0, r4, #48
|
||
3715:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_DIRTY;
|
||
6541 .loc 1 3715 3 view .LVU2192
|
||
6542 0176 3246 mov r2, r6
|
||
6543 0178 3946 mov r1, r7
|
||
6544 017a 1844 add r0, r0, r3
|
||
ARM GAS /tmp/ccH7dUYB.s page 252
|
||
|
||
|
||
6545 017c FFF7FEFF bl mem_cpy
|
||
6546 .LVL761:
|
||
3716:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
6547 .loc 1 3716 3 is_stmt 1 view .LVU2193
|
||
3716:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
6548 .loc 1 3716 5 is_stmt 0 view .LVU2194
|
||
6549 0180 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3716:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
6550 .loc 1 3716 12 view .LVU2195
|
||
6551 0182 63F07F03 orn r3, r3, #127
|
||
6552 0186 2375 strb r3, [r4, #20]
|
||
6553 .L477:
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6554 .loc 1 3636 124 is_stmt 1 view .LVU2196
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6555 .loc 1 3636 9 is_stmt 0 view .LVU2197
|
||
6556 0188 3744 add r7, r7, r6
|
||
6557 .LVL762:
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6558 .loc 1 3636 20 view .LVU2198
|
||
6559 018a A369 ldr r3, [r4, #24]
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6560 .loc 1 3636 27 view .LVU2199
|
||
6561 018c 3344 add r3, r3, r6
|
||
6562 018e A361 str r3, [r4, #24]
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6563 .loc 1 3636 73 view .LVU2200
|
||
6564 0190 E268 ldr r2, [r4, #12]
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6565 .loc 1 3636 94 view .LVU2201
|
||
6566 0192 9342 cmp r3, r2
|
||
6567 0194 38BF it cc
|
||
6568 0196 1346 movcc r3, r2
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6569 .loc 1 3636 52 view .LVU2202
|
||
6570 0198 E360 str r3, [r4, #12]
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6571 .loc 1 3636 113 view .LVU2203
|
||
6572 019a D8F80030 ldr r3, [r8]
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6573 .loc 1 3636 117 view .LVU2204
|
||
6574 019e 3344 add r3, r3, r6
|
||
6575 01a0 C8F80030 str r3, [r8]
|
||
3636:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */
|
||
6576 .loc 1 3636 130 view .LVU2205
|
||
6577 01a4 AD1B subs r5, r5, r6
|
||
6578 .LVL763:
|
||
6579 .L480:
|
||
3635:Middlewares/Third_Party/FatFs/src/ff.c **** wbuff += wcnt, fp->fptr += wcnt, fp->obj.objsize = (fp->fptr > fp->obj.objsize) ? fp->fptr : fp->
|
||
6580 .loc 1 3635 11 is_stmt 1 view .LVU2206
|
||
6581 01a6 5DB3 cbz r5, .L467
|
||
3637:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
|
||
6582 .loc 1 3637 3 view .LVU2207
|
||
3637:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
|
||
6583 .loc 1 3637 9 is_stmt 0 view .LVU2208
|
||
6584 01a8 A169 ldr r1, [r4, #24]
|
||
3637:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
|
||
ARM GAS /tmp/ccH7dUYB.s page 253
|
||
|
||
|
||
6585 .loc 1 3637 18 view .LVU2209
|
||
6586 01aa 039A ldr r2, [sp, #12]
|
||
6587 01ac 9689 ldrh r6, [r2, #12]
|
||
3637:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
|
||
6588 .loc 1 3637 16 view .LVU2210
|
||
6589 01ae B1FBF6F3 udiv r3, r1, r6
|
||
6590 01b2 06FB1313 mls r3, r6, r3, r1
|
||
3637:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */
|
||
6591 .loc 1 3637 6 view .LVU2211
|
||
6592 01b6 002B cmp r3, #0
|
||
6593 01b8 D0D1 bne .L461
|
||
3638:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6594 .loc 1 3638 4 is_stmt 1 view .LVU2212
|
||
3638:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6595 .loc 1 3638 28 is_stmt 0 view .LVU2213
|
||
6596 01ba B1FBF6F6 udiv r6, r1, r6
|
||
3638:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6597 .loc 1 3638 43 view .LVU2214
|
||
6598 01be 5389 ldrh r3, [r2, #10]
|
||
3638:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */
|
||
6599 .loc 1 3638 51 view .LVU2215
|
||
6600 01c0 013B subs r3, r3, #1
|
||
6601 .LVL764:
|
||
3639:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
6602 .loc 1 3639 4 is_stmt 1 view .LVU2216
|
||
3639:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
6603 .loc 1 3639 7 is_stmt 0 view .LVU2217
|
||
6604 01c2 1E40 ands r6, r6, r3
|
||
6605 .LVL765:
|
||
3639:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* On the top of the file? */
|
||
6606 .loc 1 3639 7 view .LVU2218
|
||
6607 01c4 7FF44DAF bne .L462
|
||
3640:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow from the origin */
|
||
6608 .loc 1 3640 5 is_stmt 1 view .LVU2219
|
||
3640:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->obj.sclust; /* Follow from the origin */
|
||
6609 .loc 1 3640 8 is_stmt 0 view .LVU2220
|
||
6610 01c8 0029 cmp r1, #0
|
||
6611 01ca 7FF438AF bne .L463
|
||
3641:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* If no cluster is allocated, */
|
||
6612 .loc 1 3641 6 is_stmt 1 view .LVU2221
|
||
3641:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* If no cluster is allocated, */
|
||
6613 .loc 1 3641 11 is_stmt 0 view .LVU2222
|
||
6614 01ce A068 ldr r0, [r4, #8]
|
||
6615 .LVL766:
|
||
3642:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, 0); /* create a new cluster chain */
|
||
6616 .loc 1 3642 6 is_stmt 1 view .LVU2223
|
||
3642:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, 0); /* create a new cluster chain */
|
||
6617 .loc 1 3642 9 is_stmt 0 view .LVU2224
|
||
6618 01d0 0028 cmp r0, #0
|
||
6619 01d2 7FF43DAF bne .L464
|
||
3643:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6620 .loc 1 3643 7 is_stmt 1 view .LVU2225
|
||
3643:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6621 .loc 1 3643 14 is_stmt 0 view .LVU2226
|
||
6622 01d6 2046 mov r0, r4
|
||
6623 .LVL767:
|
||
3643:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 254
|
||
|
||
|
||
6624 .loc 1 3643 14 view .LVU2227
|
||
6625 01d8 FFF7FEFF bl create_chain
|
||
6626 .LVL768:
|
||
3643:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6627 .loc 1 3643 14 view .LVU2228
|
||
6628 01dc 35E7 b .L465
|
||
6629 .LVL769:
|
||
6630 .L491:
|
||
3702:Middlewares/Third_Party/FatFs/src/ff.c **** ABORT(fs, FR_DISK_ERR);
|
||
6631 .loc 1 3702 5 view .LVU2229
|
||
6632 01de 0123 movs r3, #1
|
||
6633 01e0 4A46 mov r2, r9
|
||
6634 01e2 04F13001 add r1, r4, #48
|
||
6635 01e6 9BF80100 ldrb r0, [fp, #1] @ zero_extendqisi2
|
||
6636 01ea FFF7FEFF bl disk_read
|
||
6637 .LVL770:
|
||
3701:Middlewares/Third_Party/FatFs/src/ff.c **** disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) {
|
||
6638 .loc 1 3701 32 view .LVU2230
|
||
6639 01ee 0028 cmp r0, #0
|
||
6640 01f0 B2D0 beq .L478
|
||
3703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6641 .loc 1 3703 6 is_stmt 1 view .LVU2231
|
||
6642 01f2 4FF0010A mov r10, #1
|
||
6643 .LVL771:
|
||
3703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6644 .loc 1 3703 6 is_stmt 0 view .LVU2232
|
||
6645 01f6 84F815A0 strb r10, [r4, #21]
|
||
3703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6646 .loc 1 3703 6 is_stmt 1 view .LVU2233
|
||
6647 01fa CDF804A0 str r10, [sp, #4]
|
||
6648 .LVL772:
|
||
3703:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6649 .loc 1 3703 6 is_stmt 0 view .LVU2234
|
||
6650 01fe 5AE7 b .L459
|
||
6651 .LVL773:
|
||
6652 .L467:
|
||
3720:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6653 .loc 1 3720 2 is_stmt 1 view .LVU2235
|
||
3720:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6654 .loc 1 3720 4 is_stmt 0 view .LVU2236
|
||
6655 0200 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3720:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6656 .loc 1 3720 11 view .LVU2237
|
||
6657 0202 43F04003 orr r3, r3, #64
|
||
6658 0206 2375 strb r3, [r4, #20]
|
||
3722:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6659 .loc 1 3722 2 is_stmt 1 view .LVU2238
|
||
6660 0208 55E7 b .L459
|
||
6661 .LVL774:
|
||
6662 .L482:
|
||
3628:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6663 .loc 1 3628 30 is_stmt 0 discriminator 1 view .LVU2239
|
||
6664 020a 0723 movs r3, #7
|
||
6665 020c 0193 str r3, [sp, #4]
|
||
6666 .LVL775:
|
||
3628:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6667 .loc 1 3628 30 discriminator 1 view .LVU2240
|
||
ARM GAS /tmp/ccH7dUYB.s page 255
|
||
|
||
|
||
6668 020e 52E7 b .L459
|
||
6669 .cfi_endproc
|
||
6670 .LFE1224:
|
||
6672 .section .text.putc_bfd,"ax",%progbits
|
||
6673 .align 1
|
||
6674 .syntax unified
|
||
6675 .thumb
|
||
6676 .thumb_func
|
||
6678 putc_bfd:
|
||
6679 .LVL776:
|
||
6680 .LFB1239:
|
||
5921:Middlewares/Third_Party/FatFs/src/ff.c **** UINT bw;
|
||
6681 .loc 1 5921 1 is_stmt 1 view -0
|
||
6682 .cfi_startproc
|
||
6683 @ args = 0, pretend = 0, frame = 8
|
||
6684 @ frame_needed = 0, uses_anonymous_args = 0
|
||
5921:Middlewares/Third_Party/FatFs/src/ff.c **** UINT bw;
|
||
6685 .loc 1 5921 1 is_stmt 0 view .LVU2242
|
||
6686 0000 70B5 push {r4, r5, r6, lr}
|
||
6687 .LCFI54:
|
||
6688 .cfi_def_cfa_offset 16
|
||
6689 .cfi_offset 4, -16
|
||
6690 .cfi_offset 5, -12
|
||
6691 .cfi_offset 6, -8
|
||
6692 .cfi_offset 14, -4
|
||
6693 0002 82B0 sub sp, sp, #8
|
||
6694 .LCFI55:
|
||
6695 .cfi_def_cfa_offset 24
|
||
6696 0004 0446 mov r4, r0
|
||
6697 0006 0D46 mov r5, r1
|
||
5922:Middlewares/Third_Party/FatFs/src/ff.c **** int i;
|
||
6698 .loc 1 5922 2 is_stmt 1 view .LVU2243
|
||
5923:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6699 .loc 1 5923 2 view .LVU2244
|
||
5926:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(pb, '\r');
|
||
6700 .loc 1 5926 2 view .LVU2245
|
||
5926:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(pb, '\r');
|
||
6701 .loc 1 5926 5 is_stmt 0 view .LVU2246
|
||
6702 0008 0A29 cmp r1, #10
|
||
6703 000a 0DD0 beq .L499
|
||
6704 .LVL777:
|
||
6705 .L493:
|
||
5930:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 0) return;
|
||
6706 .loc 1 5930 2 is_stmt 1 view .LVU2247
|
||
5930:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < 0) return;
|
||
6707 .loc 1 5930 4 is_stmt 0 view .LVU2248
|
||
6708 000c 6368 ldr r3, [r4, #4]
|
||
6709 .LVL778:
|
||
5931:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6710 .loc 1 5931 2 is_stmt 1 view .LVU2249
|
||
5931:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6711 .loc 1 5931 5 is_stmt 0 view .LVU2250
|
||
6712 000e 002B cmp r3, #0
|
||
6713 0010 08DB blt .L492
|
||
5960:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
6714 .loc 1 5960 2 is_stmt 1 view .LVU2251
|
||
5960:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
ARM GAS /tmp/ccH7dUYB.s page 256
|
||
|
||
|
||
6715 .loc 1 5960 11 is_stmt 0 view .LVU2252
|
||
6716 0012 5E1C adds r6, r3, #1
|
||
6717 .LVL779:
|
||
5960:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
6718 .loc 1 5960 15 view .LVU2253
|
||
6719 0014 2344 add r3, r3, r4
|
||
6720 0016 1D73 strb r5, [r3, #12]
|
||
5963:Middlewares/Third_Party/FatFs/src/ff.c **** f_write(pb->fp, pb->buf, (UINT)i, &bw);
|
||
6721 .loc 1 5963 2 is_stmt 1 view .LVU2254
|
||
5963:Middlewares/Third_Party/FatFs/src/ff.c **** f_write(pb->fp, pb->buf, (UINT)i, &bw);
|
||
6722 .loc 1 5963 5 is_stmt 0 view .LVU2255
|
||
6723 0018 3C2E cmp r6, #60
|
||
6724 001a 09DC bgt .L500
|
||
6725 .LVL780:
|
||
6726 .L496:
|
||
5967:Middlewares/Third_Party/FatFs/src/ff.c **** pb->nchr++;
|
||
6727 .loc 1 5967 2 is_stmt 1 view .LVU2256
|
||
5967:Middlewares/Third_Party/FatFs/src/ff.c **** pb->nchr++;
|
||
6728 .loc 1 5967 10 is_stmt 0 view .LVU2257
|
||
6729 001c 6660 str r6, [r4, #4]
|
||
5968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6730 .loc 1 5968 2 is_stmt 1 view .LVU2258
|
||
5968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6731 .loc 1 5968 4 is_stmt 0 view .LVU2259
|
||
6732 001e A368 ldr r3, [r4, #8]
|
||
5968:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6733 .loc 1 5968 10 view .LVU2260
|
||
6734 0020 0133 adds r3, r3, #1
|
||
6735 0022 A360 str r3, [r4, #8]
|
||
6736 .LVL781:
|
||
6737 .L492:
|
||
5969:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6738 .loc 1 5969 1 view .LVU2261
|
||
6739 0024 02B0 add sp, sp, #8
|
||
6740 .LCFI56:
|
||
6741 .cfi_remember_state
|
||
6742 .cfi_def_cfa_offset 16
|
||
6743 @ sp needed
|
||
6744 0026 70BD pop {r4, r5, r6, pc}
|
||
6745 .LVL782:
|
||
6746 .L499:
|
||
6747 .LCFI57:
|
||
6748 .cfi_restore_state
|
||
5927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6749 .loc 1 5927 3 is_stmt 1 view .LVU2262
|
||
6750 0028 0D21 movs r1, #13
|
||
6751 .LVL783:
|
||
5927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6752 .loc 1 5927 3 is_stmt 0 view .LVU2263
|
||
6753 002a FFF7E9FF bl putc_bfd
|
||
6754 .LVL784:
|
||
5927:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6755 .loc 1 5927 3 view .LVU2264
|
||
6756 002e EDE7 b .L493
|
||
6757 .LVL785:
|
||
6758 .L500:
|
||
5964:Middlewares/Third_Party/FatFs/src/ff.c **** i = (bw == (UINT)i) ? 0 : -1;
|
||
ARM GAS /tmp/ccH7dUYB.s page 257
|
||
|
||
|
||
6759 .loc 1 5964 3 is_stmt 1 view .LVU2265
|
||
5964:Middlewares/Third_Party/FatFs/src/ff.c **** i = (bw == (UINT)i) ? 0 : -1;
|
||
6760 .loc 1 5964 21 is_stmt 0 view .LVU2266
|
||
6761 0030 2146 mov r1, r4
|
||
5964:Middlewares/Third_Party/FatFs/src/ff.c **** i = (bw == (UINT)i) ? 0 : -1;
|
||
6762 .loc 1 5964 3 view .LVU2267
|
||
6763 0032 51F80C0B ldr r0, [r1], #12
|
||
6764 0036 01AB add r3, sp, #4
|
||
6765 0038 3246 mov r2, r6
|
||
6766 003a FFF7FEFF bl f_write
|
||
6767 .LVL786:
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6768 .loc 1 5965 3 is_stmt 1 view .LVU2268
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6769 .loc 1 5965 11 is_stmt 0 view .LVU2269
|
||
6770 003e 019B ldr r3, [sp, #4]
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6771 .loc 1 5965 27 view .LVU2270
|
||
6772 0040 9E42 cmp r6, r3
|
||
6773 0042 02D0 beq .L501
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6774 .loc 1 5965 27 discriminator 2 view .LVU2271
|
||
6775 0044 4FF0FF36 mov r6, #-1
|
||
6776 .LVL787:
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6777 .loc 1 5965 27 discriminator 2 view .LVU2272
|
||
6778 0048 E8E7 b .L496
|
||
6779 .LVL788:
|
||
6780 .L501:
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6781 .loc 1 5965 27 discriminator 1 view .LVU2273
|
||
6782 004a 0026 movs r6, #0
|
||
6783 .LVL789:
|
||
5965:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6784 .loc 1 5965 27 discriminator 1 view .LVU2274
|
||
6785 004c E6E7 b .L496
|
||
6786 .cfi_endproc
|
||
6787 .LFE1239:
|
||
6789 .section .text.putc_flush,"ax",%progbits
|
||
6790 .align 1
|
||
6791 .syntax unified
|
||
6792 .thumb
|
||
6793 .thumb_func
|
||
6795 putc_flush:
|
||
6796 .LVL790:
|
||
6797 .LFB1240:
|
||
5976:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nw;
|
||
6798 .loc 1 5976 1 is_stmt 1 view -0
|
||
6799 .cfi_startproc
|
||
6800 @ args = 0, pretend = 0, frame = 8
|
||
6801 @ frame_needed = 0, uses_anonymous_args = 0
|
||
5977:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6802 .loc 1 5977 2 view .LVU2276
|
||
5979:Middlewares/Third_Party/FatFs/src/ff.c **** && f_write(pb->fp, pb->buf, (UINT)pb->idx, &nw) == FR_OK
|
||
6803 .loc 1 5979 2 view .LVU2277
|
||
5979:Middlewares/Third_Party/FatFs/src/ff.c **** && f_write(pb->fp, pb->buf, (UINT)pb->idx, &nw) == FR_OK
|
||
6804 .loc 1 5979 11 is_stmt 0 view .LVU2278
|
||
ARM GAS /tmp/ccH7dUYB.s page 258
|
||
|
||
|
||
6805 0000 4268 ldr r2, [r0, #4]
|
||
5979:Middlewares/Third_Party/FatFs/src/ff.c **** && f_write(pb->fp, pb->buf, (UINT)pb->idx, &nw) == FR_OK
|
||
6806 .loc 1 5979 5 view .LVU2279
|
||
6807 0002 002A cmp r2, #0
|
||
6808 0004 10DB blt .L504
|
||
5976:Middlewares/Third_Party/FatFs/src/ff.c **** UINT nw;
|
||
6809 .loc 1 5976 1 view .LVU2280
|
||
6810 0006 10B5 push {r4, lr}
|
||
6811 .LCFI58:
|
||
6812 .cfi_def_cfa_offset 8
|
||
6813 .cfi_offset 4, -8
|
||
6814 .cfi_offset 14, -4
|
||
6815 0008 82B0 sub sp, sp, #8
|
||
6816 .LCFI59:
|
||
6817 .cfi_def_cfa_offset 16
|
||
6818 000a 0446 mov r4, r0
|
||
5980:Middlewares/Third_Party/FatFs/src/ff.c **** && (UINT)pb->idx == nw) return pb->nchr;
|
||
6819 .loc 1 5980 24 view .LVU2281
|
||
6820 000c 0146 mov r1, r0
|
||
5980:Middlewares/Third_Party/FatFs/src/ff.c **** && (UINT)pb->idx == nw) return pb->nchr;
|
||
6821 .loc 1 5980 6 view .LVU2282
|
||
6822 000e 51F80C0B ldr r0, [r1], #12
|
||
6823 .LVL791:
|
||
5980:Middlewares/Third_Party/FatFs/src/ff.c **** && (UINT)pb->idx == nw) return pb->nchr;
|
||
6824 .loc 1 5980 6 view .LVU2283
|
||
6825 0012 01AB add r3, sp, #4
|
||
6826 0014 FFF7FEFF bl f_write
|
||
6827 .LVL792:
|
||
5980:Middlewares/Third_Party/FatFs/src/ff.c **** && (UINT)pb->idx == nw) return pb->nchr;
|
||
6828 .loc 1 5980 3 discriminator 1 view .LVU2284
|
||
6829 0018 48B9 cbnz r0, .L505
|
||
5981:Middlewares/Third_Party/FatFs/src/ff.c **** return EOF;
|
||
6830 .loc 1 5981 14 view .LVU2285
|
||
6831 001a 6268 ldr r2, [r4, #4]
|
||
5981:Middlewares/Third_Party/FatFs/src/ff.c **** return EOF;
|
||
6832 .loc 1 5981 20 view .LVU2286
|
||
6833 001c 019B ldr r3, [sp, #4]
|
||
5981:Middlewares/Third_Party/FatFs/src/ff.c **** return EOF;
|
||
6834 .loc 1 5981 3 view .LVU2287
|
||
6835 001e 9A42 cmp r2, r3
|
||
6836 0020 08D1 bne .L506
|
||
5981:Middlewares/Third_Party/FatFs/src/ff.c **** return EOF;
|
||
6837 .loc 1 5981 27 is_stmt 1 discriminator 1 view .LVU2288
|
||
5981:Middlewares/Third_Party/FatFs/src/ff.c **** return EOF;
|
||
6838 .loc 1 5981 36 is_stmt 0 discriminator 1 view .LVU2289
|
||
6839 0022 A068 ldr r0, [r4, #8]
|
||
6840 .L502:
|
||
5983:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6841 .loc 1 5983 1 view .LVU2290
|
||
6842 0024 02B0 add sp, sp, #8
|
||
6843 .LCFI60:
|
||
6844 .cfi_def_cfa_offset 8
|
||
6845 @ sp needed
|
||
6846 0026 10BD pop {r4, pc}
|
||
6847 .LVL793:
|
||
6848 .L504:
|
||
6849 .LCFI61:
|
||
ARM GAS /tmp/ccH7dUYB.s page 259
|
||
|
||
|
||
6850 .cfi_def_cfa_offset 0
|
||
6851 .cfi_restore 4
|
||
6852 .cfi_restore 14
|
||
5982:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6853 .loc 1 5982 9 view .LVU2291
|
||
6854 0028 4FF0FF30 mov r0, #-1
|
||
6855 .LVL794:
|
||
5983:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6856 .loc 1 5983 1 view .LVU2292
|
||
6857 002c 7047 bx lr
|
||
6858 .LVL795:
|
||
6859 .L505:
|
||
6860 .LCFI62:
|
||
6861 .cfi_def_cfa_offset 16
|
||
6862 .cfi_offset 4, -8
|
||
6863 .cfi_offset 14, -4
|
||
5982:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6864 .loc 1 5982 9 view .LVU2293
|
||
6865 002e 4FF0FF30 mov r0, #-1
|
||
6866 0032 F7E7 b .L502
|
||
6867 .L506:
|
||
6868 0034 4FF0FF30 mov r0, #-1
|
||
6869 0038 F4E7 b .L502
|
||
6870 .cfi_endproc
|
||
6871 .LFE1240:
|
||
6873 .section .text.f_sync,"ax",%progbits
|
||
6874 .align 1
|
||
6875 .global f_sync
|
||
6876 .syntax unified
|
||
6877 .thumb
|
||
6878 .thumb_func
|
||
6880 f_sync:
|
||
6881 .LVL796:
|
||
6882 .LFB1225:
|
||
3735:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
6883 .loc 1 3735 1 is_stmt 1 view -0
|
||
6884 .cfi_startproc
|
||
6885 @ args = 0, pretend = 0, frame = 8
|
||
6886 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3735:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
6887 .loc 1 3735 1 is_stmt 0 view .LVU2295
|
||
6888 0000 70B5 push {r4, r5, r6, lr}
|
||
6889 .LCFI63:
|
||
6890 .cfi_def_cfa_offset 16
|
||
6891 .cfi_offset 4, -16
|
||
6892 .cfi_offset 5, -12
|
||
6893 .cfi_offset 6, -8
|
||
6894 .cfi_offset 14, -4
|
||
6895 0002 82B0 sub sp, sp, #8
|
||
6896 .LCFI64:
|
||
6897 .cfi_def_cfa_offset 24
|
||
6898 0004 0446 mov r4, r0
|
||
3736:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
6899 .loc 1 3736 2 is_stmt 1 view .LVU2296
|
||
3737:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD tm;
|
||
6900 .loc 1 3737 2 view .LVU2297
|
||
3738:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *dir;
|
||
ARM GAS /tmp/ccH7dUYB.s page 260
|
||
|
||
|
||
6901 .loc 1 3738 2 view .LVU2298
|
||
3739:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
6902 .loc 1 3739 2 view .LVU2299
|
||
3745:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
6903 .loc 1 3745 2 view .LVU2300
|
||
3745:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
6904 .loc 1 3745 8 is_stmt 0 view .LVU2301
|
||
6905 0006 01A9 add r1, sp, #4
|
||
6906 0008 FFF7FEFF bl validate
|
||
6907 .LVL797:
|
||
3746:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_MODIFIED) { /* Is there any change to the file? */
|
||
6908 .loc 1 3746 2 is_stmt 1 view .LVU2302
|
||
3746:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_MODIFIED) { /* Is there any change to the file? */
|
||
6909 .loc 1 3746 5 is_stmt 0 view .LVU2303
|
||
6910 000c 70B9 cbnz r0, .L512
|
||
3747:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
6911 .loc 1 3747 3 is_stmt 1 view .LVU2304
|
||
3747:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
6912 .loc 1 3747 9 is_stmt 0 view .LVU2305
|
||
6913 000e 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3747:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
6914 .loc 1 3747 6 view .LVU2306
|
||
6915 0010 13F0400F tst r3, #64
|
||
6916 0014 0AD0 beq .L512
|
||
3749:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) LEAVE_FF(fs, FR_DISK_ERR);
|
||
6917 .loc 1 3749 4 is_stmt 1 view .LVU2307
|
||
3749:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) LEAVE_FF(fs, FR_DISK_ERR);
|
||
6918 .loc 1 3749 7 is_stmt 0 view .LVU2308
|
||
6919 0016 13F0800F tst r3, #128
|
||
6920 001a 09D1 bne .L516
|
||
6921 .L513:
|
||
3755:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
6922 .loc 1 3755 4 is_stmt 1 view .LVU2309
|
||
3755:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
6923 .loc 1 3755 9 is_stmt 0 view .LVU2310
|
||
6924 001c FFF7FEFF bl get_fattime
|
||
6925 .LVL798:
|
||
6926 0020 0546 mov r5, r0
|
||
6927 .LVL799:
|
||
3785:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
6928 .loc 1 3785 5 is_stmt 1 view .LVU2311
|
||
3785:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
6929 .loc 1 3785 11 is_stmt 0 view .LVU2312
|
||
6930 0022 616A ldr r1, [r4, #36]
|
||
6931 0024 0198 ldr r0, [sp, #4]
|
||
6932 .LVL800:
|
||
3785:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
6933 .loc 1 3785 11 view .LVU2313
|
||
6934 0026 FFF7FEFF bl move_window
|
||
6935 .LVL801:
|
||
3786:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fp->dir_ptr;
|
||
6936 .loc 1 3786 5 is_stmt 1 view .LVU2314
|
||
3786:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fp->dir_ptr;
|
||
6937 .loc 1 3786 8 is_stmt 0 view .LVU2315
|
||
6938 002a 78B1 cbz r0, .L517
|
||
6939 .LVL802:
|
||
6940 .L512:
|
||
ARM GAS /tmp/ccH7dUYB.s page 261
|
||
|
||
|
||
3802:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6941 .loc 1 3802 1 view .LVU2316
|
||
6942 002c 02B0 add sp, sp, #8
|
||
6943 .LCFI65:
|
||
6944 .cfi_remember_state
|
||
6945 .cfi_def_cfa_offset 16
|
||
6946 @ sp needed
|
||
6947 002e 70BD pop {r4, r5, r6, pc}
|
||
6948 .LVL803:
|
||
6949 .L516:
|
||
6950 .LCFI66:
|
||
6951 .cfi_restore_state
|
||
3750:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6952 .loc 1 3750 5 is_stmt 1 view .LVU2317
|
||
3750:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6953 .loc 1 3750 9 is_stmt 0 view .LVU2318
|
||
6954 0030 0123 movs r3, #1
|
||
6955 0032 226A ldr r2, [r4, #32]
|
||
6956 0034 04F13001 add r1, r4, #48
|
||
6957 0038 0198 ldr r0, [sp, #4]
|
||
6958 003a 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
6959 003c FFF7FEFF bl disk_write
|
||
6960 .LVL804:
|
||
3750:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
6961 .loc 1 3750 8 discriminator 1 view .LVU2319
|
||
6962 0040 40BB cbnz r0, .L514
|
||
3751:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6963 .loc 1 3751 5 is_stmt 1 view .LVU2320
|
||
3751:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6964 .loc 1 3751 7 is_stmt 0 view .LVU2321
|
||
6965 0042 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3751:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6966 .loc 1 3751 14 view .LVU2322
|
||
6967 0044 03F07F03 and r3, r3, #127
|
||
6968 0048 2375 strb r3, [r4, #20]
|
||
6969 004a E7E7 b .L513
|
||
6970 .LVL805:
|
||
6971 .L517:
|
||
3787:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] |= AM_ARC; /* Set archive bit */
|
||
6972 .loc 1 3787 6 is_stmt 1 view .LVU2323
|
||
3787:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] |= AM_ARC; /* Set archive bit */
|
||
6973 .loc 1 3787 10 is_stmt 0 view .LVU2324
|
||
6974 004c A66A ldr r6, [r4, #40]
|
||
6975 .LVL806:
|
||
3788:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fp->obj.fs, dir, fp->obj.sclust); /* Update file allocation info */
|
||
6976 .loc 1 3788 6 is_stmt 1 view .LVU2325
|
||
3788:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fp->obj.fs, dir, fp->obj.sclust); /* Update file allocation info */
|
||
6977 .loc 1 3788 9 is_stmt 0 view .LVU2326
|
||
6978 004e F37A ldrb r3, [r6, #11] @ zero_extendqisi2
|
||
3788:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fp->obj.fs, dir, fp->obj.sclust); /* Update file allocation info */
|
||
6979 .loc 1 3788 20 view .LVU2327
|
||
6980 0050 43F02003 orr r3, r3, #32
|
||
6981 0054 F372 strb r3, [r6, #11]
|
||
3789:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_FileSize, (DWORD)fp->obj.objsize); /* Update file size */
|
||
6982 .loc 1 3789 6 is_stmt 1 view .LVU2328
|
||
6983 0056 A268 ldr r2, [r4, #8]
|
||
6984 0058 3146 mov r1, r6
|
||
ARM GAS /tmp/ccH7dUYB.s page 262
|
||
|
||
|
||
6985 005a 2068 ldr r0, [r4]
|
||
6986 .LVL807:
|
||
3789:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_FileSize, (DWORD)fp->obj.objsize); /* Update file size */
|
||
6987 .loc 1 3789 6 is_stmt 0 view .LVU2329
|
||
6988 005c FFF7FEFF bl st_clust
|
||
6989 .LVL808:
|
||
3790:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm); /* Update modified time */
|
||
6990 .loc 1 3790 6 is_stmt 1 view .LVU2330
|
||
6991 0060 E168 ldr r1, [r4, #12]
|
||
6992 0062 06F11C00 add r0, r6, #28
|
||
6993 0066 FFF7FEFF bl st_dword
|
||
6994 .LVL809:
|
||
3791:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dir + DIR_LstAccDate, 0);
|
||
6995 .loc 1 3791 6 view .LVU2331
|
||
6996 006a 2946 mov r1, r5
|
||
6997 006c 06F11600 add r0, r6, #22
|
||
6998 0070 FFF7FEFF bl st_dword
|
||
6999 .LVL810:
|
||
3792:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
7000 .loc 1 3792 6 view .LVU2332
|
||
7001 0074 0021 movs r1, #0
|
||
7002 0076 06F11200 add r0, r6, #18
|
||
7003 007a FFF7FEFF bl st_word
|
||
7004 .LVL811:
|
||
3793:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs); /* Restore it to the directory */
|
||
7005 .loc 1 3793 6 view .LVU2333
|
||
3793:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs); /* Restore it to the directory */
|
||
7006 .loc 1 3793 16 is_stmt 0 view .LVU2334
|
||
7007 007e 019B ldr r3, [sp, #4]
|
||
7008 0080 0122 movs r2, #1
|
||
7009 0082 DA70 strb r2, [r3, #3]
|
||
3794:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_MODIFIED;
|
||
7010 .loc 1 3794 6 is_stmt 1 view .LVU2335
|
||
3794:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_MODIFIED;
|
||
7011 .loc 1 3794 12 is_stmt 0 view .LVU2336
|
||
7012 0084 0198 ldr r0, [sp, #4]
|
||
7013 0086 FFF7FEFF bl sync_fs
|
||
7014 .LVL812:
|
||
3795:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7015 .loc 1 3795 6 is_stmt 1 view .LVU2337
|
||
3795:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7016 .loc 1 3795 8 is_stmt 0 view .LVU2338
|
||
7017 008a 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
3795:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7018 .loc 1 3795 15 view .LVU2339
|
||
7019 008c 23F04003 bic r3, r3, #64
|
||
7020 0090 2375 strb r3, [r4, #20]
|
||
7021 0092 CBE7 b .L512
|
||
7022 .LVL813:
|
||
7023 .L514:
|
||
3750:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7024 .loc 1 3750 62 discriminator 1 view .LVU2340
|
||
7025 0094 0120 movs r0, #1
|
||
7026 0096 C9E7 b .L512
|
||
7027 .cfi_endproc
|
||
7028 .LFE1225:
|
||
7030 .section .text.f_close,"ax",%progbits
|
||
ARM GAS /tmp/ccH7dUYB.s page 263
|
||
|
||
|
||
7031 .align 1
|
||
7032 .global f_close
|
||
7033 .syntax unified
|
||
7034 .thumb
|
||
7035 .thumb_func
|
||
7037 f_close:
|
||
7038 .LVL814:
|
||
7039 .LFB1226:
|
||
3816:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
7040 .loc 1 3816 1 is_stmt 1 view -0
|
||
7041 .cfi_startproc
|
||
7042 @ args = 0, pretend = 0, frame = 8
|
||
7043 @ frame_needed = 0, uses_anonymous_args = 0
|
||
3816:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
7044 .loc 1 3816 1 is_stmt 0 view .LVU2342
|
||
7045 0000 10B5 push {r4, lr}
|
||
7046 .LCFI67:
|
||
7047 .cfi_def_cfa_offset 8
|
||
7048 .cfi_offset 4, -8
|
||
7049 .cfi_offset 14, -4
|
||
7050 0002 82B0 sub sp, sp, #8
|
||
7051 .LCFI68:
|
||
7052 .cfi_def_cfa_offset 16
|
||
7053 0004 0446 mov r4, r0
|
||
3817:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
7054 .loc 1 3817 2 is_stmt 1 view .LVU2343
|
||
3818:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7055 .loc 1 3818 2 view .LVU2344
|
||
3821:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
7056 .loc 1 3821 2 view .LVU2345
|
||
3821:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
7057 .loc 1 3821 8 is_stmt 0 view .LVU2346
|
||
7058 0006 FFF7FEFF bl f_sync
|
||
7059 .LVL815:
|
||
3822:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7060 .loc 1 3822 2 is_stmt 1 view .LVU2347
|
||
3822:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7061 .loc 1 3822 5 is_stmt 0 view .LVU2348
|
||
7062 000a 08B1 cbz r0, .L521
|
||
7063 .L519:
|
||
7064 .LVL816:
|
||
3839:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7065 .loc 1 3839 2 is_stmt 1 view .LVU2349
|
||
3840:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7066 .loc 1 3840 1 is_stmt 0 view .LVU2350
|
||
7067 000c 02B0 add sp, sp, #8
|
||
7068 .LCFI69:
|
||
7069 .cfi_remember_state
|
||
7070 .cfi_def_cfa_offset 8
|
||
7071 @ sp needed
|
||
7072 000e 10BD pop {r4, pc}
|
||
7073 .LVL817:
|
||
7074 .L521:
|
||
7075 .LCFI70:
|
||
7076 .cfi_restore_state
|
||
3825:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
7077 .loc 1 3825 3 is_stmt 1 view .LVU2351
|
||
ARM GAS /tmp/ccH7dUYB.s page 264
|
||
|
||
|
||
3825:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
7078 .loc 1 3825 9 is_stmt 0 view .LVU2352
|
||
7079 0010 01A9 add r1, sp, #4
|
||
7080 0012 2046 mov r0, r4
|
||
7081 0014 FFF7FEFF bl validate
|
||
7082 .LVL818:
|
||
3826:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
7083 .loc 1 3826 3 is_stmt 1 view .LVU2353
|
||
3826:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
7084 .loc 1 3826 6 is_stmt 0 view .LVU2354
|
||
7085 0018 0028 cmp r0, #0
|
||
7086 001a F7D1 bne .L519
|
||
3828:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
7087 .loc 1 3828 4 is_stmt 1 view .LVU2355
|
||
3828:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
7088 .loc 1 3828 10 is_stmt 0 view .LVU2356
|
||
7089 001c 2069 ldr r0, [r4, #16]
|
||
7090 .LVL819:
|
||
3828:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK)
|
||
7091 .loc 1 3828 10 view .LVU2357
|
||
7092 001e FFF7FEFF bl dec_lock
|
||
7093 .LVL820:
|
||
3829:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7094 .loc 1 3829 4 is_stmt 1 view .LVU2358
|
||
3829:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7095 .loc 1 3829 7 is_stmt 0 view .LVU2359
|
||
7096 0022 0028 cmp r0, #0
|
||
7097 0024 F2D1 bne .L519
|
||
3832:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7098 .loc 1 3832 5 is_stmt 1 view .LVU2360
|
||
3832:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7099 .loc 1 3832 16 is_stmt 0 view .LVU2361
|
||
7100 0026 2060 str r0, [r4]
|
||
7101 0028 F0E7 b .L519
|
||
7102 .cfi_endproc
|
||
7103 .LFE1226:
|
||
7105 .section .text.f_lseek,"ax",%progbits
|
||
7106 .align 1
|
||
7107 .global f_lseek
|
||
7108 .syntax unified
|
||
7109 .thumb
|
||
7110 .thumb_func
|
||
7112 f_lseek:
|
||
7113 .LVL821:
|
||
7114 .LFB1227:
|
||
4005:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
7115 .loc 1 4005 1 is_stmt 1 view -0
|
||
7116 .cfi_startproc
|
||
7117 @ args = 0, pretend = 0, frame = 8
|
||
7118 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4005:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
7119 .loc 1 4005 1 is_stmt 0 view .LVU2363
|
||
7120 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
7121 .LCFI71:
|
||
7122 .cfi_def_cfa_offset 36
|
||
7123 .cfi_offset 4, -36
|
||
7124 .cfi_offset 5, -32
|
||
ARM GAS /tmp/ccH7dUYB.s page 265
|
||
|
||
|
||
7125 .cfi_offset 6, -28
|
||
7126 .cfi_offset 7, -24
|
||
7127 .cfi_offset 8, -20
|
||
7128 .cfi_offset 9, -16
|
||
7129 .cfi_offset 10, -12
|
||
7130 .cfi_offset 11, -8
|
||
7131 .cfi_offset 14, -4
|
||
7132 0004 83B0 sub sp, sp, #12
|
||
7133 .LCFI72:
|
||
7134 .cfi_def_cfa_offset 48
|
||
7135 0006 0446 mov r4, r0
|
||
7136 0008 0D46 mov r5, r1
|
||
4006:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
7137 .loc 1 4006 2 is_stmt 1 view .LVU2364
|
||
4007:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst, bcs, nsect;
|
||
7138 .loc 1 4007 2 view .LVU2365
|
||
4008:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ifptr;
|
||
7139 .loc 1 4008 2 view .LVU2366
|
||
4009:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_FASTSEEK
|
||
7140 .loc 1 4009 2 view .LVU2367
|
||
4011:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7141 .loc 1 4011 2 view .LVU2368
|
||
4014:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = (FRESULT)fp->err;
|
||
7142 .loc 1 4014 2 view .LVU2369
|
||
4014:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = (FRESULT)fp->err;
|
||
7143 .loc 1 4014 8 is_stmt 0 view .LVU2370
|
||
7144 000a 01A9 add r1, sp, #4
|
||
7145 .LVL822:
|
||
4014:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = (FRESULT)fp->err;
|
||
7146 .loc 1 4014 8 view .LVU2371
|
||
7147 000c FFF7FEFF bl validate
|
||
7148 .LVL823:
|
||
4015:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT && !_FS_READONLY
|
||
7149 .loc 1 4015 2 is_stmt 1 view .LVU2372
|
||
4015:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT && !_FS_READONLY
|
||
7150 .loc 1 4015 5 is_stmt 0 view .LVU2373
|
||
7151 0010 0646 mov r6, r0
|
||
7152 0012 78B9 cbnz r0, .L525
|
||
4015:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT && !_FS_READONLY
|
||
7153 .loc 1 4015 20 is_stmt 1 discriminator 1 view .LVU2374
|
||
4015:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT && !_FS_READONLY
|
||
7154 .loc 1 4015 24 is_stmt 0 discriminator 1 view .LVU2375
|
||
7155 0014 667D ldrb r6, [r4, #21] @ zero_extendqisi2
|
||
7156 .LVL824:
|
||
4021:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7157 .loc 1 4021 2 is_stmt 1 view .LVU2376
|
||
4021:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7158 .loc 1 4021 5 is_stmt 0 view .LVU2377
|
||
7159 0016 6EB9 cbnz r6, .L525
|
||
4024:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs == CREATE_LINKMAP) { /* Create CLMT */
|
||
7160 .loc 1 4024 2 is_stmt 1 view .LVU2378
|
||
4024:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs == CREATE_LINKMAP) { /* Create CLMT */
|
||
7161 .loc 1 4024 8 is_stmt 0 view .LVU2379
|
||
7162 0018 E36A ldr r3, [r4, #44]
|
||
4024:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs == CREATE_LINKMAP) { /* Create CLMT */
|
||
7163 .loc 1 4024 5 view .LVU2380
|
||
7164 001a 002B cmp r3, #0
|
||
ARM GAS /tmp/ccH7dUYB.s page 266
|
||
|
||
|
||
7165 001c 00F08E80 beq .L526
|
||
4025:Middlewares/Third_Party/FatFs/src/ff.c **** tbl = fp->cltbl;
|
||
7166 .loc 1 4025 3 is_stmt 1 view .LVU2381
|
||
4025:Middlewares/Third_Party/FatFs/src/ff.c **** tbl = fp->cltbl;
|
||
7167 .loc 1 4025 6 is_stmt 0 view .LVU2382
|
||
7168 0020 B5F1FF3F cmp r5, #-1
|
||
7169 0024 0AD0 beq .L566
|
||
4051:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = ofs; /* Set file pointer */
|
||
7170 .loc 1 4051 4 is_stmt 1 view .LVU2383
|
||
4051:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = ofs; /* Set file pointer */
|
||
7171 .loc 1 4051 21 is_stmt 0 view .LVU2384
|
||
7172 0026 E768 ldr r7, [r4, #12]
|
||
4051:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = ofs; /* Set file pointer */
|
||
7173 .loc 1 4051 7 view .LVU2385
|
||
7174 0028 AF42 cmp r7, r5
|
||
7175 002a 00D3 bcc .L534
|
||
7176 002c 2F46 mov r7, r5
|
||
7177 .L534:
|
||
7178 .LVL825:
|
||
4052:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
7179 .loc 1 4052 4 is_stmt 1 view .LVU2386
|
||
4052:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
7180 .loc 1 4052 13 is_stmt 0 view .LVU2387
|
||
7181 002e A761 str r7, [r4, #24]
|
||
4053:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clmt_clust(fp, ofs - 1);
|
||
7182 .loc 1 4053 4 is_stmt 1 view .LVU2388
|
||
4053:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clmt_clust(fp, ofs - 1);
|
||
7183 .loc 1 4053 7 is_stmt 0 view .LVU2389
|
||
7184 0030 002F cmp r7, #0
|
||
7185 0032 3FD1 bne .L567
|
||
7186 .LVL826:
|
||
7187 .L525:
|
||
4153:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7188 .loc 1 4153 1 view .LVU2390
|
||
7189 0034 3046 mov r0, r6
|
||
7190 0036 03B0 add sp, sp, #12
|
||
7191 .LCFI73:
|
||
7192 .cfi_remember_state
|
||
7193 .cfi_def_cfa_offset 36
|
||
7194 @ sp needed
|
||
7195 0038 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
7196 .LVL827:
|
||
7197 .L566:
|
||
7198 .LCFI74:
|
||
7199 .cfi_restore_state
|
||
4026:Middlewares/Third_Party/FatFs/src/ff.c **** tlen = *tbl++; ulen = 2; /* Given table size and required table size */
|
||
7200 .loc 1 4026 4 is_stmt 1 view .LVU2391
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
7201 .loc 1 4027 4 view .LVU2392
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
7202 .loc 1 4027 15 is_stmt 0 view .LVU2393
|
||
7203 003c 9846 mov r8, r3
|
||
7204 .LVL828:
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
7205 .loc 1 4027 9 view .LVU2394
|
||
7206 003e 58F804BB ldr fp, [r8], #4
|
||
7207 .LVL829:
|
||
ARM GAS /tmp/ccH7dUYB.s page 267
|
||
|
||
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
7208 .loc 1 4027 19 is_stmt 1 view .LVU2395
|
||
4028:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl) {
|
||
7209 .loc 1 4028 4 view .LVU2396
|
||
4028:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl) {
|
||
7210 .loc 1 4028 7 is_stmt 0 view .LVU2397
|
||
7211 0042 D4F808A0 ldr r10, [r4, #8]
|
||
7212 .LVL830:
|
||
4029:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7213 .loc 1 4029 4 is_stmt 1 view .LVU2398
|
||
4029:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7214 .loc 1 4029 7 is_stmt 0 view .LVU2399
|
||
7215 0046 BAF1000F cmp r10, #0
|
||
7216 004a 27D0 beq .L559
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
7217 .loc 1 4027 24 view .LVU2400
|
||
7218 004c 4FF00209 mov r9, #2
|
||
7219 .LVL831:
|
||
7220 .L533:
|
||
4030:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get a fragment */
|
||
7221 .loc 1 4030 5 is_stmt 1 view .LVU2401
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7222 .loc 1 4032 6 view .LVU2402
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7223 .loc 1 4032 16 view .LVU2403
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7224 .loc 1 4032 25 view .LVU2404
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7225 .loc 1 4032 30 is_stmt 0 view .LVU2405
|
||
7226 0050 09F10209 add r9, r9, #2
|
||
7227 .LVL832:
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7228 .loc 1 4032 30 view .LVU2406
|
||
7229 0054 5146 mov r1, r10
|
||
4032:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
7230 .loc 1 4032 20 view .LVU2407
|
||
7231 0056 0027 movs r7, #0
|
||
7232 .LVL833:
|
||
7233 .L531:
|
||
4033:Middlewares/Third_Party/FatFs/src/ff.c **** pcl = cl; ncl++;
|
||
7234 .loc 1 4033 6 is_stmt 1 view .LVU2408
|
||
4034:Middlewares/Third_Party/FatFs/src/ff.c **** cl = get_fat(&fp->obj, cl);
|
||
7235 .loc 1 4034 7 view .LVU2409
|
||
4034:Middlewares/Third_Party/FatFs/src/ff.c **** cl = get_fat(&fp->obj, cl);
|
||
7236 .loc 1 4034 17 view .LVU2410
|
||
4034:Middlewares/Third_Party/FatFs/src/ff.c **** cl = get_fat(&fp->obj, cl);
|
||
7237 .loc 1 4034 20 is_stmt 0 view .LVU2411
|
||
7238 0058 0137 adds r7, r7, #1
|
||
7239 .LVL834:
|
||
4035:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR);
|
||
7240 .loc 1 4035 7 is_stmt 1 view .LVU2412
|
||
7241 005a 0D46 mov r5, r1
|
||
4035:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR);
|
||
7242 .loc 1 4035 12 is_stmt 0 view .LVU2413
|
||
7243 005c 2046 mov r0, r4
|
||
7244 005e FFF7FEFF bl get_fat
|
||
7245 .LVL835:
|
||
ARM GAS /tmp/ccH7dUYB.s page 268
|
||
|
||
|
||
4035:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR);
|
||
7246 .loc 1 4035 12 view .LVU2414
|
||
7247 0062 0146 mov r1, r0
|
||
7248 .LVL836:
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7249 .loc 1 4036 7 is_stmt 1 view .LVU2415
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7250 .loc 1 4036 10 is_stmt 0 view .LVU2416
|
||
7251 0064 0128 cmp r0, #1
|
||
7252 0066 13D9 bls .L568
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7253 .loc 1 4036 41 is_stmt 1 discriminator 2 view .LVU2417
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7254 .loc 1 4037 7 view .LVU2418
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7255 .loc 1 4037 10 is_stmt 0 view .LVU2419
|
||
7256 0068 B0F1FF3F cmp r0, #-1
|
||
7257 006c 13D0 beq .L569
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7258 .loc 1 4037 51 is_stmt 1 discriminator 2 view .LVU2420
|
||
4038:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) { /* Store the length and top of the fragment */
|
||
7259 .loc 1 4038 18 view .LVU2421
|
||
4038:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) { /* Store the length and top of the fragment */
|
||
7260 .loc 1 4038 25 is_stmt 0 view .LVU2422
|
||
7261 006e 0135 adds r5, r5, #1
|
||
7262 .LVL837:
|
||
4038:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) { /* Store the length and top of the fragment */
|
||
7263 .loc 1 4038 18 view .LVU2423
|
||
7264 0070 8542 cmp r5, r0
|
||
7265 0072 F1D0 beq .L531
|
||
4039:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl++ = ncl; *tbl++ = tcl;
|
||
7266 .loc 1 4039 6 is_stmt 1 view .LVU2424
|
||
4039:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl++ = ncl; *tbl++ = tcl;
|
||
7267 .loc 1 4039 9 is_stmt 0 view .LVU2425
|
||
7268 0074 CB45 cmp fp, r9
|
||
7269 0076 05D3 bcc .L532
|
||
4040:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7270 .loc 1 4040 7 is_stmt 1 view .LVU2426
|
||
7271 .LVL838:
|
||
4040:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7272 .loc 1 4040 14 is_stmt 0 view .LVU2427
|
||
7273 0078 4346 mov r3, r8
|
||
7274 007a 43F8087B str r7, [r3], #8
|
||
4040:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7275 .loc 1 4040 21 is_stmt 1 view .LVU2428
|
||
7276 .LVL839:
|
||
4040:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7277 .loc 1 4040 28 is_stmt 0 view .LVU2429
|
||
7278 007e C8F804A0 str r10, [r8, #4]
|
||
4040:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7279 .loc 1 4040 25 view .LVU2430
|
||
7280 0082 9846 mov r8, r3
|
||
7281 .LVL840:
|
||
7282 .L532:
|
||
4042:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7283 .loc 1 4042 17 is_stmt 1 view .LVU2431
|
||
4042:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 269
|
||
|
||
|
||
7284 .loc 1 4042 21 is_stmt 0 view .LVU2432
|
||
7285 0084 019B ldr r3, [sp, #4]
|
||
7286 0086 9B69 ldr r3, [r3, #24]
|
||
4042:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7287 .loc 1 4042 17 view .LVU2433
|
||
7288 0088 8B42 cmp r3, r1
|
||
7289 008a 09D9 bls .L528
|
||
4035:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR);
|
||
7290 .loc 1 4035 12 view .LVU2434
|
||
7291 008c 8A46 mov r10, r1
|
||
7292 .LVL841:
|
||
4035:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR);
|
||
7293 .loc 1 4035 12 view .LVU2435
|
||
7294 008e DFE7 b .L533
|
||
7295 .LVL842:
|
||
7296 .L568:
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7297 .loc 1 4036 20 is_stmt 1 discriminator 1 view .LVU2436
|
||
7298 0090 0226 movs r6, #2
|
||
7299 .LVL843:
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7300 .loc 1 4036 20 is_stmt 0 discriminator 1 view .LVU2437
|
||
7301 0092 6675 strb r6, [r4, #21]
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7302 .loc 1 4036 20 is_stmt 1 discriminator 1 view .LVU2438
|
||
4036:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7303 .loc 1 4036 20 is_stmt 0 view .LVU2439
|
||
7304 0094 CEE7 b .L525
|
||
7305 .LVL844:
|
||
7306 .L569:
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7307 .loc 1 4037 29 is_stmt 1 discriminator 1 view .LVU2440
|
||
7308 0096 0126 movs r6, #1
|
||
7309 .LVL845:
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7310 .loc 1 4037 29 is_stmt 0 discriminator 1 view .LVU2441
|
||
7311 0098 6675 strb r6, [r4, #21]
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7312 .loc 1 4037 29 is_stmt 1 discriminator 1 view .LVU2442
|
||
4037:Middlewares/Third_Party/FatFs/src/ff.c **** } while (cl == pcl + 1);
|
||
7313 .loc 1 4037 29 is_stmt 0 view .LVU2443
|
||
7314 009a CBE7 b .L525
|
||
7315 .LVL846:
|
||
7316 .L559:
|
||
4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */
|
||
7317 .loc 1 4027 24 view .LVU2444
|
||
7318 009c 4FF00209 mov r9, #2
|
||
7319 .LVL847:
|
||
7320 .L528:
|
||
4044:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) {
|
||
7321 .loc 1 4044 4 is_stmt 1 view .LVU2445
|
||
4044:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) {
|
||
7322 .loc 1 4044 7 is_stmt 0 view .LVU2446
|
||
7323 00a0 E36A ldr r3, [r4, #44]
|
||
4044:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) {
|
||
7324 .loc 1 4044 15 view .LVU2447
|
||
7325 00a2 C3F80090 str r9, [r3]
|
||
ARM GAS /tmp/ccH7dUYB.s page 270
|
||
|
||
|
||
4045:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl = 0; /* Terminate table */
|
||
7326 .loc 1 4045 4 is_stmt 1 view .LVU2448
|
||
4045:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl = 0; /* Terminate table */
|
||
7327 .loc 1 4045 7 is_stmt 0 view .LVU2449
|
||
7328 00a6 D945 cmp r9, fp
|
||
7329 00a8 00F2FB80 bhi .L561
|
||
4046:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
7330 .loc 1 4046 5 is_stmt 1 view .LVU2450
|
||
4046:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
7331 .loc 1 4046 10 is_stmt 0 view .LVU2451
|
||
7332 00ac 0023 movs r3, #0
|
||
7333 00ae C8F80030 str r3, [r8]
|
||
7334 00b2 BFE7 b .L525
|
||
7335 .LVL848:
|
||
7336 .L567:
|
||
4054:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, fp->clust);
|
||
7337 .loc 1 4054 5 is_stmt 1 view .LVU2452
|
||
4054:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, fp->clust);
|
||
7338 .loc 1 4054 17 is_stmt 0 view .LVU2453
|
||
7339 00b4 7D1E subs r5, r7, #1
|
||
7340 00b6 2946 mov r1, r5
|
||
7341 00b8 2046 mov r0, r4
|
||
7342 00ba FFF7FEFF bl clmt_clust
|
||
7343 .LVL849:
|
||
7344 00be 0146 mov r1, r0
|
||
4054:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, fp->clust);
|
||
7345 .loc 1 4054 15 discriminator 1 view .LVU2454
|
||
7346 00c0 E061 str r0, [r4, #28]
|
||
4055:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dsc) ABORT(fs, FR_INT_ERR);
|
||
7347 .loc 1 4055 5 is_stmt 1 view .LVU2455
|
||
4055:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dsc) ABORT(fs, FR_INT_ERR);
|
||
7348 .loc 1 4055 11 is_stmt 0 view .LVU2456
|
||
7349 00c2 DDF80480 ldr r8, [sp, #4]
|
||
7350 00c6 4046 mov r0, r8
|
||
7351 00c8 FFF7FEFF bl clust2sect
|
||
7352 .LVL850:
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7353 .loc 1 4056 5 is_stmt 1 view .LVU2457
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7354 .loc 1 4056 8 is_stmt 0 view .LVU2458
|
||
7355 00cc 00B3 cbz r0, .L570
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7356 .loc 1 4056 36 is_stmt 1 discriminator 2 view .LVU2459
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7357 .loc 1 4057 5 view .LVU2460
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7358 .loc 1 4057 32 is_stmt 0 view .LVU2461
|
||
7359 00ce B8F80C30 ldrh r3, [r8, #12]
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7360 .loc 1 4057 12 view .LVU2462
|
||
7361 00d2 B5FBF3F5 udiv r5, r5, r3
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7362 .loc 1 4057 45 view .LVU2463
|
||
7363 00d6 B8F80A20 ldrh r2, [r8, #10]
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7364 .loc 1 4057 53 view .LVU2464
|
||
7365 00da 013A subs r2, r2, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 271
|
||
|
||
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7366 .loc 1 4057 40 view .LVU2465
|
||
7367 00dc 1540 ands r5, r5, r2
|
||
4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */
|
||
7368 .loc 1 4057 9 view .LVU2466
|
||
7369 00de 0544 add r5, r5, r0
|
||
7370 .LVL851:
|
||
4058:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7371 .loc 1 4058 5 is_stmt 1 view .LVU2467
|
||
4058:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7372 .loc 1 4058 18 is_stmt 0 view .LVU2468
|
||
7373 00e0 B7FBF3F2 udiv r2, r7, r3
|
||
7374 00e4 03FB1277 mls r7, r3, r2, r7
|
||
7375 .LVL852:
|
||
4058:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7376 .loc 1 4058 8 view .LVU2469
|
||
7377 00e8 002F cmp r7, #0
|
||
7378 00ea A3D0 beq .L525
|
||
4058:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7379 .loc 1 4058 39 discriminator 1 view .LVU2470
|
||
7380 00ec 226A ldr r2, [r4, #32]
|
||
4058:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7381 .loc 1 4058 27 discriminator 1 view .LVU2471
|
||
7382 00ee AA42 cmp r2, r5
|
||
7383 00f0 A0D0 beq .L525
|
||
4061:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
7384 .loc 1 4061 6 is_stmt 1 view .LVU2472
|
||
4061:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
7385 .loc 1 4061 10 is_stmt 0 view .LVU2473
|
||
7386 00f2 94F91430 ldrsb r3, [r4, #20]
|
||
4061:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
7387 .loc 1 4061 9 view .LVU2474
|
||
7388 00f6 002B cmp r3, #0
|
||
7389 00f8 0DDB blt .L571
|
||
7390 .L536:
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7391 .loc 1 4066 6 is_stmt 1 view .LVU2475
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7392 .loc 1 4066 10 is_stmt 0 view .LVU2476
|
||
7393 00fa 0123 movs r3, #1
|
||
7394 00fc 2A46 mov r2, r5
|
||
7395 00fe 04F13001 add r1, r4, #48
|
||
7396 0102 0198 ldr r0, [sp, #4]
|
||
7397 0104 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
7398 0106 FFF7FEFF bl disk_read
|
||
7399 .LVL853:
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7400 .loc 1 4066 9 discriminator 1 view .LVU2477
|
||
7401 010a A0B9 cbnz r0, .L572
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7402 .loc 1 4066 79 is_stmt 1 discriminator 2 view .LVU2478
|
||
4068:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7403 .loc 1 4068 6 view .LVU2479
|
||
4068:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7404 .loc 1 4068 15 is_stmt 0 view .LVU2480
|
||
7405 010c 2562 str r5, [r4, #32]
|
||
7406 010e 91E7 b .L525
|
||
ARM GAS /tmp/ccH7dUYB.s page 272
|
||
|
||
|
||
7407 .LVL854:
|
||
7408 .L570:
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7409 .loc 1 4056 15 is_stmt 1 discriminator 1 view .LVU2481
|
||
7410 0110 0226 movs r6, #2
|
||
7411 .LVL855:
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7412 .loc 1 4056 15 is_stmt 0 discriminator 1 view .LVU2482
|
||
7413 0112 6675 strb r6, [r4, #21]
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7414 .loc 1 4056 15 is_stmt 1 discriminator 1 view .LVU2483
|
||
4056:Middlewares/Third_Party/FatFs/src/ff.c **** dsc += (DWORD)((ofs - 1) / SS(fs)) & (fs->csize - 1);
|
||
7415 .loc 1 4056 15 is_stmt 0 view .LVU2484
|
||
7416 0114 8EE7 b .L525
|
||
7417 .LVL856:
|
||
7418 .L571:
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7419 .loc 1 4062 7 is_stmt 1 view .LVU2485
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7420 .loc 1 4062 11 is_stmt 0 view .LVU2486
|
||
7421 0116 0123 movs r3, #1
|
||
7422 0118 04F13001 add r1, r4, #48
|
||
7423 011c 98F80100 ldrb r0, [r8, #1] @ zero_extendqisi2
|
||
7424 0120 FFF7FEFF bl disk_write
|
||
7425 .LVL857:
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7426 .loc 1 4062 10 discriminator 1 view .LVU2487
|
||
7427 0124 20B9 cbnz r0, .L573
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7428 .loc 1 4062 86 is_stmt 1 discriminator 2 view .LVU2488
|
||
4063:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7429 .loc 1 4063 7 view .LVU2489
|
||
4063:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7430 .loc 1 4063 9 is_stmt 0 view .LVU2490
|
||
7431 0126 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
4063:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7432 .loc 1 4063 16 view .LVU2491
|
||
7433 0128 03F07F03 and r3, r3, #127
|
||
7434 012c 2375 strb r3, [r4, #20]
|
||
7435 012e E4E7 b .L536
|
||
7436 .L573:
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7437 .loc 1 4062 64 is_stmt 1 discriminator 1 view .LVU2492
|
||
7438 0130 0126 movs r6, #1
|
||
7439 .LVL858:
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7440 .loc 1 4062 64 is_stmt 0 discriminator 1 view .LVU2493
|
||
7441 0132 6675 strb r6, [r4, #21]
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7442 .loc 1 4062 64 is_stmt 1 discriminator 1 view .LVU2494
|
||
4062:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7443 .loc 1 4062 64 is_stmt 0 view .LVU2495
|
||
7444 0134 7EE7 b .L525
|
||
7445 .LVL859:
|
||
7446 .L572:
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7447 .loc 1 4066 57 is_stmt 1 discriminator 1 view .LVU2496
|
||
ARM GAS /tmp/ccH7dUYB.s page 273
|
||
|
||
|
||
7448 0136 0126 movs r6, #1
|
||
7449 .LVL860:
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7450 .loc 1 4066 57 is_stmt 0 discriminator 1 view .LVU2497
|
||
7451 0138 6675 strb r6, [r4, #21]
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7452 .loc 1 4066 57 is_stmt 1 discriminator 1 view .LVU2498
|
||
4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7453 .loc 1 4066 57 is_stmt 0 view .LVU2499
|
||
7454 013a 7BE7 b .L525
|
||
7455 .LVL861:
|
||
7456 .L526:
|
||
4080:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = fp->obj.objsize;
|
||
7457 .loc 1 4080 3 is_stmt 1 view .LVU2500
|
||
4080:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = fp->obj.objsize;
|
||
7458 .loc 1 4080 20 is_stmt 0 view .LVU2501
|
||
7459 013c E368 ldr r3, [r4, #12]
|
||
4080:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = fp->obj.objsize;
|
||
7460 .loc 1 4080 6 view .LVU2502
|
||
7461 013e AB42 cmp r3, r5
|
||
7462 0140 04D2 bcs .L539
|
||
4080:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = fp->obj.objsize;
|
||
7463 .loc 1 4080 53 discriminator 1 view .LVU2503
|
||
7464 0142 227D ldrb r2, [r4, #20] @ zero_extendqisi2
|
||
4080:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = fp->obj.objsize;
|
||
7465 .loc 1 4080 29 discriminator 1 view .LVU2504
|
||
7466 0144 12F0020F tst r2, #2
|
||
7467 0148 00D1 bne .L539
|
||
4081:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7468 .loc 1 4081 8 view .LVU2505
|
||
7469 014a 1D46 mov r5, r3
|
||
7470 .LVL862:
|
||
7471 .L539:
|
||
4083:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = nsect = 0;
|
||
7472 .loc 1 4083 3 is_stmt 1 view .LVU2506
|
||
4083:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = nsect = 0;
|
||
7473 .loc 1 4083 9 is_stmt 0 view .LVU2507
|
||
7474 014c A369 ldr r3, [r4, #24]
|
||
7475 .LVL863:
|
||
4084:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
7476 .loc 1 4084 3 is_stmt 1 view .LVU2508
|
||
4084:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
7477 .loc 1 4084 12 is_stmt 0 view .LVU2509
|
||
7478 014e 0022 movs r2, #0
|
||
7479 0150 A261 str r2, [r4, #24]
|
||
4085:Middlewares/Third_Party/FatFs/src/ff.c **** bcs = (DWORD)fs->csize * SS(fs); /* Cluster size (byte) */
|
||
7480 .loc 1 4085 3 is_stmt 1 view .LVU2510
|
||
4085:Middlewares/Third_Party/FatFs/src/ff.c **** bcs = (DWORD)fs->csize * SS(fs); /* Cluster size (byte) */
|
||
7481 .loc 1 4085 6 is_stmt 0 view .LVU2511
|
||
7482 0152 E5B1 cbz r5, .L540
|
||
4086:Middlewares/Third_Party/FatFs/src/ff.c **** if (ifptr > 0 &&
|
||
7483 .loc 1 4086 4 is_stmt 1 view .LVU2512
|
||
4086:Middlewares/Third_Party/FatFs/src/ff.c **** if (ifptr > 0 &&
|
||
7484 .loc 1 4086 19 is_stmt 0 view .LVU2513
|
||
7485 0154 019A ldr r2, [sp, #4]
|
||
7486 0156 B2F80A80 ldrh r8, [r2, #10]
|
||
4086:Middlewares/Third_Party/FatFs/src/ff.c **** if (ifptr > 0 &&
|
||
ARM GAS /tmp/ccH7dUYB.s page 274
|
||
|
||
|
||
7487 .loc 1 4086 29 view .LVU2514
|
||
7488 015a 9289 ldrh r2, [r2, #12]
|
||
4086:Middlewares/Third_Party/FatFs/src/ff.c **** if (ifptr > 0 &&
|
||
7489 .loc 1 4086 8 view .LVU2515
|
||
7490 015c 02FB08F8 mul r8, r2, r8
|
||
7491 .LVL864:
|
||
4087:Middlewares/Third_Party/FatFs/src/ff.c **** (ofs - 1) / bcs >= (ifptr - 1) / bcs) { /* When seek to same or following cluster, */
|
||
7492 .loc 1 4087 4 is_stmt 1 view .LVU2516
|
||
4087:Middlewares/Third_Party/FatFs/src/ff.c **** (ofs - 1) / bcs >= (ifptr - 1) / bcs) { /* When seek to same or following cluster, */
|
||
7493 .loc 1 4087 7 is_stmt 0 view .LVU2517
|
||
7494 0160 73B1 cbz r3, .L541
|
||
4088:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = (ifptr - 1) & ~(FSIZE_t)(bcs - 1); /* start from the current cluster */
|
||
7495 .loc 1 4088 10 view .LVU2518
|
||
7496 0162 6A1E subs r2, r5, #1
|
||
4088:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = (ifptr - 1) & ~(FSIZE_t)(bcs - 1); /* start from the current cluster */
|
||
7497 .loc 1 4088 15 view .LVU2519
|
||
7498 0164 B2FBF8F2 udiv r2, r2, r8
|
||
4088:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = (ifptr - 1) & ~(FSIZE_t)(bcs - 1); /* start from the current cluster */
|
||
7499 .loc 1 4088 31 view .LVU2520
|
||
7500 0168 013B subs r3, r3, #1
|
||
7501 .LVL865:
|
||
4088:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = (ifptr - 1) & ~(FSIZE_t)(bcs - 1); /* start from the current cluster */
|
||
7502 .loc 1 4088 36 view .LVU2521
|
||
7503 016a B3FBF8F1 udiv r1, r3, r8
|
||
4087:Middlewares/Third_Party/FatFs/src/ff.c **** (ofs - 1) / bcs >= (ifptr - 1) / bcs) { /* When seek to same or following cluster, */
|
||
7504 .loc 1 4087 18 discriminator 1 view .LVU2522
|
||
7505 016e 8A42 cmp r2, r1
|
||
7506 0170 06D3 bcc .L541
|
||
4089:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= fp->fptr;
|
||
7507 .loc 1 4089 5 is_stmt 1 view .LVU2523
|
||
4089:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= fp->fptr;
|
||
7508 .loc 1 4089 30 is_stmt 0 view .LVU2524
|
||
7509 0172 C8F10002 rsb r2, r8, #0
|
||
4089:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= fp->fptr;
|
||
7510 .loc 1 4089 28 view .LVU2525
|
||
7511 0176 1340 ands r3, r3, r2
|
||
7512 .LVL866:
|
||
4089:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= fp->fptr;
|
||
7513 .loc 1 4089 14 view .LVU2526
|
||
7514 0178 A361 str r3, [r4, #24]
|
||
4090:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->clust;
|
||
7515 .loc 1 4090 5 is_stmt 1 view .LVU2527
|
||
4090:Middlewares/Third_Party/FatFs/src/ff.c **** clst = fp->clust;
|
||
7516 .loc 1 4090 9 is_stmt 0 view .LVU2528
|
||
7517 017a EF1A subs r7, r5, r3
|
||
7518 .LVL867:
|
||
4091:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When seek to back cluster, */
|
||
7519 .loc 1 4091 5 is_stmt 1 view .LVU2529
|
||
4091:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When seek to back cluster, */
|
||
7520 .loc 1 4091 10 is_stmt 0 view .LVU2530
|
||
7521 017c E569 ldr r5, [r4, #28]
|
||
7522 .LVL868:
|
||
4091:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When seek to back cluster, */
|
||
7523 .loc 1 4091 10 view .LVU2531
|
||
7524 017e 04E0 b .L542
|
||
7525 .LVL869:
|
||
7526 .L541:
|
||
ARM GAS /tmp/ccH7dUYB.s page 275
|
||
|
||
|
||
4093:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7527 .loc 1 4093 5 is_stmt 1 view .LVU2532
|
||
4093:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7528 .loc 1 4093 10 is_stmt 0 view .LVU2533
|
||
7529 0180 A068 ldr r0, [r4, #8]
|
||
7530 .LVL870:
|
||
4095:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, 0);
|
||
7531 .loc 1 4095 5 is_stmt 1 view .LVU2534
|
||
4095:Middlewares/Third_Party/FatFs/src/ff.c **** clst = create_chain(&fp->obj, 0);
|
||
7532 .loc 1 4095 8 is_stmt 0 view .LVU2535
|
||
7533 0182 50B3 cbz r0, .L574
|
||
7534 .L543:
|
||
4102:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7535 .loc 1 4102 5 is_stmt 1 view .LVU2536
|
||
4102:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7536 .loc 1 4102 15 is_stmt 0 view .LVU2537
|
||
7537 0184 E061 str r0, [r4, #28]
|
||
7538 0186 2F46 mov r7, r5
|
||
7539 0188 0546 mov r5, r0
|
||
7540 .LVL871:
|
||
7541 .L542:
|
||
4104:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs > bcs) { /* Cluster following loop */
|
||
7542 .loc 1 4104 4 is_stmt 1 view .LVU2538
|
||
4104:Middlewares/Third_Party/FatFs/src/ff.c **** while (ofs > bcs) { /* Cluster following loop */
|
||
7543 .loc 1 4104 7 is_stmt 0 view .LVU2539
|
||
7544 018a 002D cmp r5, #0
|
||
7545 018c 45D1 bne .L546
|
||
7546 .LVL872:
|
||
7547 .L540:
|
||
4134:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
7548 .loc 1 4134 3 is_stmt 1 view .LVU2540
|
||
4134:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
7549 .loc 1 4134 26 is_stmt 0 view .LVU2541
|
||
7550 018e A369 ldr r3, [r4, #24]
|
||
4134:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
7551 .loc 1 4134 42 view .LVU2542
|
||
7552 0190 E268 ldr r2, [r4, #12]
|
||
4134:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
7553 .loc 1 4134 6 view .LVU2543
|
||
7554 0192 9342 cmp r3, r2
|
||
7555 0194 04D9 bls .L555
|
||
4135:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
7556 .loc 1 4135 4 is_stmt 1 view .LVU2544
|
||
4135:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
7557 .loc 1 4135 20 is_stmt 0 view .LVU2545
|
||
7558 0196 E360 str r3, [r4, #12]
|
||
4136:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7559 .loc 1 4136 4 is_stmt 1 view .LVU2546
|
||
4136:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7560 .loc 1 4136 6 is_stmt 0 view .LVU2547
|
||
7561 0198 227D ldrb r2, [r4, #20] @ zero_extendqisi2
|
||
4136:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7562 .loc 1 4136 13 view .LVU2548
|
||
7563 019a 42F04002 orr r2, r2, #64
|
||
7564 019e 2275 strb r2, [r4, #20]
|
||
7565 .L555:
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
ARM GAS /tmp/ccH7dUYB.s page 276
|
||
|
||
|
||
7566 .loc 1 4138 3 is_stmt 1 view .LVU2549
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7567 .loc 1 4138 18 is_stmt 0 view .LVU2550
|
||
7568 01a0 0198 ldr r0, [sp, #4]
|
||
7569 01a2 8289 ldrh r2, [r0, #12]
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7570 .loc 1 4138 16 view .LVU2551
|
||
7571 01a4 B3FBF2F1 udiv r1, r3, r2
|
||
7572 01a8 02FB1133 mls r3, r2, r1, r3
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7573 .loc 1 4138 6 view .LVU2552
|
||
7574 01ac 002B cmp r3, #0
|
||
7575 01ae 3FF441AF beq .L525
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7576 .loc 1 4138 39 discriminator 1 view .LVU2553
|
||
7577 01b2 226A ldr r2, [r4, #32]
|
||
4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
7578 .loc 1 4138 25 discriminator 1 view .LVU2554
|
||
7579 01b4 AA42 cmp r2, r5
|
||
7580 01b6 3FF43DAF beq .L525
|
||
4141:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
7581 .loc 1 4141 4 is_stmt 1 view .LVU2555
|
||
4141:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
7582 .loc 1 4141 8 is_stmt 0 view .LVU2556
|
||
7583 01ba 94F91430 ldrsb r3, [r4, #20]
|
||
4141:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) ABORT(fs, FR_DISK_ERR);
|
||
7584 .loc 1 4141 7 view .LVU2557
|
||
7585 01be 002B cmp r3, #0
|
||
7586 01c0 5DDB blt .L575
|
||
7587 .L556:
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7588 .loc 1 4146 4 is_stmt 1 view .LVU2558
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7589 .loc 1 4146 8 is_stmt 0 view .LVU2559
|
||
7590 01c2 0123 movs r3, #1
|
||
7591 01c4 2A46 mov r2, r5
|
||
7592 01c6 04F13001 add r1, r4, #48
|
||
7593 01ca 0198 ldr r0, [sp, #4]
|
||
7594 01cc 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
7595 01ce FFF7FEFF bl disk_read
|
||
7596 .LVL873:
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7597 .loc 1 4146 7 discriminator 1 view .LVU2560
|
||
7598 01d2 0028 cmp r0, #0
|
||
7599 01d4 62D1 bne .L576
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7600 .loc 1 4146 79 is_stmt 1 discriminator 2 view .LVU2561
|
||
4148:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7601 .loc 1 4148 4 view .LVU2562
|
||
4148:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7602 .loc 1 4148 13 is_stmt 0 view .LVU2563
|
||
7603 01d6 2562 str r5, [r4, #32]
|
||
7604 01d8 2CE7 b .L525
|
||
7605 .LVL874:
|
||
7606 .L574:
|
||
4096:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
7607 .loc 1 4096 6 is_stmt 1 view .LVU2564
|
||
ARM GAS /tmp/ccH7dUYB.s page 277
|
||
|
||
|
||
4096:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
7608 .loc 1 4096 13 is_stmt 0 view .LVU2565
|
||
7609 01da 0021 movs r1, #0
|
||
7610 01dc 2046 mov r0, r4
|
||
7611 .LVL875:
|
||
4096:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR);
|
||
7612 .loc 1 4096 13 view .LVU2566
|
||
7613 01de FFF7FEFF bl create_chain
|
||
7614 .LVL876:
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7615 .loc 1 4097 6 is_stmt 1 view .LVU2567
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7616 .loc 1 4097 9 is_stmt 0 view .LVU2568
|
||
7617 01e2 0128 cmp r0, #1
|
||
7618 01e4 04D0 beq .L577
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7619 .loc 1 4097 42 is_stmt 1 discriminator 2 view .LVU2569
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7620 .loc 1 4098 6 view .LVU2570
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7621 .loc 1 4098 9 is_stmt 0 view .LVU2571
|
||
7622 01e6 B0F1FF3F cmp r0, #-1
|
||
7623 01ea 04D0 beq .L578
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7624 .loc 1 4098 52 is_stmt 1 discriminator 2 view .LVU2572
|
||
4099:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7625 .loc 1 4099 6 view .LVU2573
|
||
4099:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7626 .loc 1 4099 21 is_stmt 0 view .LVU2574
|
||
7627 01ec A060 str r0, [r4, #8]
|
||
7628 01ee C9E7 b .L543
|
||
7629 .L577:
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7630 .loc 1 4097 21 is_stmt 1 discriminator 1 view .LVU2575
|
||
7631 01f0 0226 movs r6, #2
|
||
7632 .LVL877:
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7633 .loc 1 4097 21 is_stmt 0 discriminator 1 view .LVU2576
|
||
7634 01f2 6675 strb r6, [r4, #21]
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7635 .loc 1 4097 21 is_stmt 1 discriminator 1 view .LVU2577
|
||
4097:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0xFFFFFFFF) ABORT(fs, FR_DISK_ERR);
|
||
7636 .loc 1 4097 21 is_stmt 0 view .LVU2578
|
||
7637 01f4 1EE7 b .L525
|
||
7638 .LVL878:
|
||
7639 .L578:
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7640 .loc 1 4098 30 is_stmt 1 discriminator 1 view .LVU2579
|
||
7641 01f6 0126 movs r6, #1
|
||
7642 .LVL879:
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7643 .loc 1 4098 30 is_stmt 0 discriminator 1 view .LVU2580
|
||
7644 01f8 6675 strb r6, [r4, #21]
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7645 .loc 1 4098 30 is_stmt 1 discriminator 1 view .LVU2581
|
||
4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst;
|
||
7646 .loc 1 4098 30 is_stmt 0 view .LVU2582
|
||
ARM GAS /tmp/ccH7dUYB.s page 278
|
||
|
||
|
||
7647 01fa 1BE7 b .L525
|
||
7648 .LVL880:
|
||
7649 .L547:
|
||
4120:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7650 .loc 1 4120 7 is_stmt 1 view .LVU2583
|
||
4120:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7651 .loc 1 4120 14 is_stmt 0 view .LVU2584
|
||
7652 01fc 2946 mov r1, r5
|
||
7653 01fe 2046 mov r0, r4
|
||
7654 0200 FFF7FEFF bl get_fat
|
||
7655 .LVL881:
|
||
7656 0204 0546 mov r5, r0
|
||
7657 .LVL882:
|
||
7658 .L549:
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7659 .loc 1 4122 6 is_stmt 1 view .LVU2585
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7660 .loc 1 4122 9 is_stmt 0 view .LVU2586
|
||
7661 0206 B5F1FF3F cmp r5, #-1
|
||
7662 020a 2DD0 beq .L579
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7663 .loc 1 4122 52 is_stmt 1 discriminator 2 view .LVU2587
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7664 .loc 1 4123 6 view .LVU2588
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7665 .loc 1 4123 9 is_stmt 0 view .LVU2589
|
||
7666 020c 012D cmp r5, #1
|
||
7667 020e 2ED9 bls .L551
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7668 .loc 1 4123 33 discriminator 2 view .LVU2590
|
||
7669 0210 019B ldr r3, [sp, #4]
|
||
7670 0212 9B69 ldr r3, [r3, #24]
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7671 .loc 1 4123 20 discriminator 2 view .LVU2591
|
||
7672 0214 AB42 cmp r3, r5
|
||
7673 0216 2AD9 bls .L551
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7674 .loc 1 4123 66 is_stmt 1 discriminator 4 view .LVU2592
|
||
4124:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7675 .loc 1 4124 6 view .LVU2593
|
||
4124:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7676 .loc 1 4124 16 is_stmt 0 view .LVU2594
|
||
7677 0218 E561 str r5, [r4, #28]
|
||
7678 .LVL883:
|
||
7679 .L546:
|
||
4105:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= bcs; fp->fptr += bcs;
|
||
7680 .loc 1 4105 16 is_stmt 1 view .LVU2595
|
||
7681 021a 4745 cmp r7, r8
|
||
7682 021c 10D9 bls .L548
|
||
4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7683 .loc 1 4106 6 view .LVU2596
|
||
4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7684 .loc 1 4106 10 is_stmt 0 view .LVU2597
|
||
7685 021e A7EB0807 sub r7, r7, r8
|
||
7686 .LVL884:
|
||
4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7687 .loc 1 4106 18 is_stmt 1 view .LVU2598
|
||
ARM GAS /tmp/ccH7dUYB.s page 279
|
||
|
||
|
||
4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7688 .loc 1 4106 20 is_stmt 0 view .LVU2599
|
||
7689 0222 A369 ldr r3, [r4, #24]
|
||
4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY
|
||
7690 .loc 1 4106 27 view .LVU2600
|
||
7691 0224 4344 add r3, r3, r8
|
||
7692 0226 A361 str r3, [r4, #24]
|
||
4108:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fp->fptr > fp->obj.objsize) { /* No FAT chain object needs correct objsize t
|
||
7693 .loc 1 4108 6 is_stmt 1 view .LVU2601
|
||
4108:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fp->fptr > fp->obj.objsize) { /* No FAT chain object needs correct objsize t
|
||
7694 .loc 1 4108 12 is_stmt 0 view .LVU2602
|
||
7695 0228 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
4108:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && fp->fptr > fp->obj.objsize) { /* No FAT chain object needs correct objsize t
|
||
7696 .loc 1 4108 9 view .LVU2603
|
||
7697 022a 13F0020F tst r3, #2
|
||
7698 022e E5D0 beq .L547
|
||
4109:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = fp->fptr;
|
||
7699 .loc 1 4109 7 is_stmt 1 view .LVU2604
|
||
4113:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* Clip file size in case of disk full */
|
||
7700 .loc 1 4113 7 view .LVU2605
|
||
4113:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) { /* Clip file size in case of disk full */
|
||
7701 .loc 1 4113 14 is_stmt 0 view .LVU2606
|
||
7702 0230 2946 mov r1, r5
|
||
7703 0232 2046 mov r0, r4
|
||
7704 0234 FFF7FEFF bl create_chain
|
||
7705 .LVL885:
|
||
4114:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = 0; break;
|
||
7706 .loc 1 4114 7 is_stmt 1 view .LVU2607
|
||
4114:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = 0; break;
|
||
7707 .loc 1 4114 10 is_stmt 0 view .LVU2608
|
||
7708 0238 0546 mov r5, r0
|
||
7709 023a 0028 cmp r0, #0
|
||
7710 023c E3D1 bne .L549
|
||
4115:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7711 .loc 1 4115 12 view .LVU2609
|
||
7712 023e 0746 mov r7, r0
|
||
7713 .LVL886:
|
||
7714 .L548:
|
||
4126:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs % SS(fs)) {
|
||
7715 .loc 1 4126 5 is_stmt 1 view .LVU2610
|
||
4126:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs % SS(fs)) {
|
||
7716 .loc 1 4126 7 is_stmt 0 view .LVU2611
|
||
7717 0240 A369 ldr r3, [r4, #24]
|
||
4126:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs % SS(fs)) {
|
||
7718 .loc 1 4126 14 view .LVU2612
|
||
7719 0242 3B44 add r3, r3, r7
|
||
7720 0244 A361 str r3, [r4, #24]
|
||
4127:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = clust2sect(fs, clst); /* Current sector */
|
||
7721 .loc 1 4127 5 is_stmt 1 view .LVU2613
|
||
4127:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = clust2sect(fs, clst); /* Current sector */
|
||
7722 .loc 1 4127 15 is_stmt 0 view .LVU2614
|
||
7723 0246 0198 ldr r0, [sp, #4]
|
||
7724 0248 B0F80C80 ldrh r8, [r0, #12]
|
||
7725 .LVL887:
|
||
4127:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = clust2sect(fs, clst); /* Current sector */
|
||
7726 .loc 1 4127 13 view .LVU2615
|
||
7727 024c B7FBF8F3 udiv r3, r7, r8
|
||
ARM GAS /tmp/ccH7dUYB.s page 280
|
||
|
||
|
||
7728 0250 08FB1373 mls r3, r8, r3, r7
|
||
4127:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = clust2sect(fs, clst); /* Current sector */
|
||
7729 .loc 1 4127 8 view .LVU2616
|
||
7730 0254 8BB1 cbz r3, .L564
|
||
4128:Middlewares/Third_Party/FatFs/src/ff.c **** if (!nsect) ABORT(fs, FR_INT_ERR);
|
||
7731 .loc 1 4128 6 is_stmt 1 view .LVU2617
|
||
4128:Middlewares/Third_Party/FatFs/src/ff.c **** if (!nsect) ABORT(fs, FR_INT_ERR);
|
||
7732 .loc 1 4128 14 is_stmt 0 view .LVU2618
|
||
7733 0256 2946 mov r1, r5
|
||
7734 0258 FFF7FEFF bl clust2sect
|
||
7735 .LVL888:
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7736 .loc 1 4129 6 is_stmt 1 view .LVU2619
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7737 .loc 1 4129 9 is_stmt 0 view .LVU2620
|
||
7738 025c 0546 mov r5, r0
|
||
7739 .LVL889:
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7740 .loc 1 4129 9 view .LVU2621
|
||
7741 025e 48B1 cbz r0, .L580
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7742 .loc 1 4129 39 is_stmt 1 discriminator 2 view .LVU2622
|
||
4130:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7743 .loc 1 4130 6 view .LVU2623
|
||
4130:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7744 .loc 1 4130 15 is_stmt 0 view .LVU2624
|
||
7745 0260 B7FBF8F7 udiv r7, r7, r8
|
||
7746 .LVL890:
|
||
4130:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7747 .loc 1 4130 12 view .LVU2625
|
||
7748 0264 3D44 add r5, r5, r7
|
||
7749 .LVL891:
|
||
4130:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7750 .loc 1 4130 12 view .LVU2626
|
||
7751 0266 92E7 b .L540
|
||
7752 .LVL892:
|
||
7753 .L579:
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7754 .loc 1 4122 30 is_stmt 1 discriminator 1 view .LVU2627
|
||
7755 0268 0126 movs r6, #1
|
||
7756 .LVL893:
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7757 .loc 1 4122 30 is_stmt 0 discriminator 1 view .LVU2628
|
||
7758 026a 6675 strb r6, [r4, #21]
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7759 .loc 1 4122 30 is_stmt 1 discriminator 1 view .LVU2629
|
||
4122:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst <= 1 || clst >= fs->n_fatent) ABORT(fs, FR_INT_ERR);
|
||
7760 .loc 1 4122 30 is_stmt 0 view .LVU2630
|
||
7761 026c E2E6 b .L525
|
||
7762 .LVL894:
|
||
7763 .L551:
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7764 .loc 1 4123 45 is_stmt 1 discriminator 3 view .LVU2631
|
||
7765 026e 0226 movs r6, #2
|
||
7766 .LVL895:
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7767 .loc 1 4123 45 is_stmt 0 discriminator 3 view .LVU2632
|
||
ARM GAS /tmp/ccH7dUYB.s page 281
|
||
|
||
|
||
7768 0270 6675 strb r6, [r4, #21]
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7769 .loc 1 4123 45 is_stmt 1 discriminator 3 view .LVU2633
|
||
4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst;
|
||
7770 .loc 1 4123 45 is_stmt 0 view .LVU2634
|
||
7771 0272 DFE6 b .L525
|
||
7772 .LVL896:
|
||
7773 .L580:
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7774 .loc 1 4129 18 is_stmt 1 discriminator 1 view .LVU2635
|
||
7775 0274 0226 movs r6, #2
|
||
7776 .LVL897:
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7777 .loc 1 4129 18 is_stmt 0 discriminator 1 view .LVU2636
|
||
7778 0276 6675 strb r6, [r4, #21]
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7779 .loc 1 4129 18 is_stmt 1 discriminator 1 view .LVU2637
|
||
4129:Middlewares/Third_Party/FatFs/src/ff.c **** nsect += (DWORD)(ofs / SS(fs));
|
||
7780 .loc 1 4129 18 is_stmt 0 view .LVU2638
|
||
7781 0278 DCE6 b .L525
|
||
7782 .LVL898:
|
||
7783 .L564:
|
||
4084:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
7784 .loc 1 4084 20 view .LVU2639
|
||
7785 027a 1D46 mov r5, r3
|
||
7786 .LVL899:
|
||
4084:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs) {
|
||
7787 .loc 1 4084 20 view .LVU2640
|
||
7788 027c 87E7 b .L540
|
||
7789 .LVL900:
|
||
7790 .L575:
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7791 .loc 1 4142 5 is_stmt 1 view .LVU2641
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7792 .loc 1 4142 9 is_stmt 0 view .LVU2642
|
||
7793 027e 0123 movs r3, #1
|
||
7794 0280 04F13001 add r1, r4, #48
|
||
7795 0284 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
7796 0286 FFF7FEFF bl disk_write
|
||
7797 .LVL901:
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7798 .loc 1 4142 8 discriminator 1 view .LVU2643
|
||
7799 028a 20B9 cbnz r0, .L581
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7800 .loc 1 4142 84 is_stmt 1 discriminator 2 view .LVU2644
|
||
4143:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7801 .loc 1 4143 5 view .LVU2645
|
||
4143:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7802 .loc 1 4143 7 is_stmt 0 view .LVU2646
|
||
7803 028c 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
4143:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7804 .loc 1 4143 14 view .LVU2647
|
||
7805 028e 03F07F03 and r3, r3, #127
|
||
7806 0292 2375 strb r3, [r4, #20]
|
||
7807 0294 95E7 b .L556
|
||
7808 .L581:
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
ARM GAS /tmp/ccH7dUYB.s page 282
|
||
|
||
|
||
7809 .loc 1 4142 62 is_stmt 1 discriminator 1 view .LVU2648
|
||
7810 0296 0126 movs r6, #1
|
||
7811 .LVL902:
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7812 .loc 1 4142 62 is_stmt 0 discriminator 1 view .LVU2649
|
||
7813 0298 6675 strb r6, [r4, #21]
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7814 .loc 1 4142 62 is_stmt 1 discriminator 1 view .LVU2650
|
||
4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY;
|
||
7815 .loc 1 4142 62 is_stmt 0 view .LVU2651
|
||
7816 029a CBE6 b .L525
|
||
7817 .LVL903:
|
||
7818 .L576:
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7819 .loc 1 4146 57 is_stmt 1 discriminator 1 view .LVU2652
|
||
7820 029c 0126 movs r6, #1
|
||
7821 .LVL904:
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7822 .loc 1 4146 57 is_stmt 0 discriminator 1 view .LVU2653
|
||
7823 029e 6675 strb r6, [r4, #21]
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7824 .loc 1 4146 57 is_stmt 1 discriminator 1 view .LVU2654
|
||
4146:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
7825 .loc 1 4146 57 is_stmt 0 view .LVU2655
|
||
7826 02a0 C8E6 b .L525
|
||
7827 .LVL905:
|
||
7828 .L561:
|
||
4048:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7829 .loc 1 4048 9 view .LVU2656
|
||
7830 02a2 1126 movs r6, #17
|
||
7831 .LVL906:
|
||
4048:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7832 .loc 1 4048 9 view .LVU2657
|
||
7833 02a4 C6E6 b .L525
|
||
7834 .cfi_endproc
|
||
7835 .LFE1227:
|
||
7837 .section .text.f_opendir,"ax",%progbits
|
||
7838 .align 1
|
||
7839 .global f_opendir
|
||
7840 .syntax unified
|
||
7841 .thumb
|
||
7842 .thumb_func
|
||
7844 f_opendir:
|
||
7845 .LVL907:
|
||
7846 .LFB1228:
|
||
4166:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
7847 .loc 1 4166 1 is_stmt 1 view -0
|
||
7848 .cfi_startproc
|
||
7849 @ args = 0, pretend = 0, frame = 16
|
||
7850 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4166:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
7851 .loc 1 4166 1 is_stmt 0 view .LVU2659
|
||
7852 0000 30B5 push {r4, r5, lr}
|
||
7853 .LCFI75:
|
||
7854 .cfi_def_cfa_offset 12
|
||
7855 .cfi_offset 4, -12
|
||
7856 .cfi_offset 5, -8
|
||
ARM GAS /tmp/ccH7dUYB.s page 283
|
||
|
||
|
||
7857 .cfi_offset 14, -4
|
||
7858 0002 85B0 sub sp, sp, #20
|
||
7859 .LCFI76:
|
||
7860 .cfi_def_cfa_offset 32
|
||
7861 0004 0191 str r1, [sp, #4]
|
||
4167:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
7862 .loc 1 4167 2 is_stmt 1 view .LVU2660
|
||
4168:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID *obj;
|
||
7863 .loc 1 4168 2 view .LVU2661
|
||
4169:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
7864 .loc 1 4169 2 view .LVU2662
|
||
4173:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7865 .loc 1 4173 2 view .LVU2663
|
||
4173:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7866 .loc 1 4173 5 is_stmt 0 view .LVU2664
|
||
7867 0006 0028 cmp r0, #0
|
||
7868 0008 3FD0 beq .L589
|
||
7869 000a 0546 mov r5, r0
|
||
4176:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0);
|
||
7870 .loc 1 4176 2 is_stmt 1 view .LVU2665
|
||
7871 .LVL908:
|
||
4177:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
7872 .loc 1 4177 2 view .LVU2666
|
||
4177:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
7873 .loc 1 4177 8 is_stmt 0 view .LVU2667
|
||
7874 000c 0022 movs r2, #0
|
||
7875 000e 03A9 add r1, sp, #12
|
||
7876 .LVL909:
|
||
4177:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
7877 .loc 1 4177 8 view .LVU2668
|
||
7878 0010 01A8 add r0, sp, #4
|
||
7879 .LVL910:
|
||
4177:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
7880 .loc 1 4177 8 view .LVU2669
|
||
7881 0012 FFF7FEFF bl find_volume
|
||
7882 .LVL911:
|
||
4178:Middlewares/Third_Party/FatFs/src/ff.c **** obj->fs = fs;
|
||
7883 .loc 1 4178 2 is_stmt 1 view .LVU2670
|
||
4178:Middlewares/Third_Party/FatFs/src/ff.c **** obj->fs = fs;
|
||
7884 .loc 1 4178 5 is_stmt 0 view .LVU2671
|
||
7885 0016 0446 mov r4, r0
|
||
7886 0018 20B1 cbz r0, .L594
|
||
7887 .LVL912:
|
||
7888 .L584:
|
||
4220:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7889 .loc 1 4220 20 is_stmt 1 discriminator 1 view .LVU2672
|
||
4220:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7890 .loc 1 4220 28 is_stmt 0 discriminator 1 view .LVU2673
|
||
7891 001a 0023 movs r3, #0
|
||
7892 001c 2B60 str r3, [r5]
|
||
7893 .LVL913:
|
||
7894 .L583:
|
||
4223:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
7895 .loc 1 4223 1 view .LVU2674
|
||
7896 001e 2046 mov r0, r4
|
||
7897 0020 05B0 add sp, sp, #20
|
||
7898 .LCFI77:
|
||
ARM GAS /tmp/ccH7dUYB.s page 284
|
||
|
||
|
||
7899 .cfi_remember_state
|
||
7900 .cfi_def_cfa_offset 12
|
||
7901 @ sp needed
|
||
7902 0022 30BD pop {r4, r5, pc}
|
||
7903 .LVL914:
|
||
7904 .L594:
|
||
7905 .LCFI78:
|
||
7906 .cfi_restore_state
|
||
4179:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
7907 .loc 1 4179 3 is_stmt 1 view .LVU2675
|
||
4179:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
7908 .loc 1 4179 11 is_stmt 0 view .LVU2676
|
||
7909 0024 039B ldr r3, [sp, #12]
|
||
7910 0026 2B60 str r3, [r5]
|
||
4180:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(dp, path); /* Follow the path to the directory */
|
||
7911 .loc 1 4180 18 is_stmt 1 view .LVU2677
|
||
4181:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
7912 .loc 1 4181 3 view .LVU2678
|
||
4181:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
7913 .loc 1 4181 9 is_stmt 0 view .LVU2679
|
||
7914 0028 0199 ldr r1, [sp, #4]
|
||
7915 002a 2846 mov r0, r5
|
||
7916 .LVL915:
|
||
4181:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
7917 .loc 1 4181 9 view .LVU2680
|
||
7918 002c FFF7FEFF bl follow_path
|
||
7919 .LVL916:
|
||
4182:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->fn[NSFLAG] & NS_NONAME)) { /* It is not the origin directory itself */
|
||
7920 .loc 1 4182 3 is_stmt 1 view .LVU2681
|
||
4182:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(dp->fn[NSFLAG] & NS_NONAME)) { /* It is not the origin directory itself */
|
||
7921 .loc 1 4182 6 is_stmt 0 view .LVU2682
|
||
7922 0030 0446 mov r4, r0
|
||
7923 0032 18BB cbnz r0, .L585
|
||
4183:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->attr & AM_DIR) { /* This object is a sub-directory */
|
||
7924 .loc 1 4183 4 is_stmt 1 view .LVU2683
|
||
4183:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->attr & AM_DIR) { /* This object is a sub-directory */
|
||
7925 .loc 1 4183 8 is_stmt 0 view .LVU2684
|
||
7926 0034 95F92F30 ldrsb r3, [r5, #47]
|
||
4183:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->attr & AM_DIR) { /* This object is a sub-directory */
|
||
7927 .loc 1 4183 7 view .LVU2685
|
||
7928 0038 002B cmp r3, #0
|
||
7929 003a 08DB blt .L586
|
||
4184:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
7930 .loc 1 4184 5 is_stmt 1 view .LVU2686
|
||
4184:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
7931 .loc 1 4184 12 is_stmt 0 view .LVU2687
|
||
7932 003c AB79 ldrb r3, [r5, #6] @ zero_extendqisi2
|
||
4184:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
7933 .loc 1 4184 8 view .LVU2688
|
||
7934 003e 13F0100F tst r3, #16
|
||
7935 0042 1AD0 beq .L590
|
||
4196:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7936 .loc 1 4196 7 is_stmt 1 view .LVU2689
|
||
4196:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7937 .loc 1 4196 21 is_stmt 0 view .LVU2690
|
||
7938 0044 296A ldr r1, [r5, #32]
|
||
7939 0046 0398 ldr r0, [sp, #12]
|
||
ARM GAS /tmp/ccH7dUYB.s page 285
|
||
|
||
|
||
7940 .LVL917:
|
||
4196:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7941 .loc 1 4196 21 view .LVU2691
|
||
7942 0048 FFF7FEFF bl ld_clust
|
||
7943 .LVL918:
|
||
4196:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7944 .loc 1 4196 19 discriminator 1 view .LVU2692
|
||
7945 004c A860 str r0, [r5, #8]
|
||
7946 .L586:
|
||
4202:Middlewares/Third_Party/FatFs/src/ff.c **** obj->id = fs->id;
|
||
7947 .loc 1 4202 4 is_stmt 1 view .LVU2693
|
||
4203:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind directory */
|
||
7948 .loc 1 4203 5 view .LVU2694
|
||
4203:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind directory */
|
||
7949 .loc 1 4203 17 is_stmt 0 view .LVU2695
|
||
7950 004e 039B ldr r3, [sp, #12]
|
||
7951 0050 DB88 ldrh r3, [r3, #6]
|
||
4203:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind directory */
|
||
7952 .loc 1 4203 13 view .LVU2696
|
||
7953 0052 AB80 strh r3, [r5, #4] @ movhi
|
||
4204:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
7954 .loc 1 4204 5 is_stmt 1 view .LVU2697
|
||
4204:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
7955 .loc 1 4204 11 is_stmt 0 view .LVU2698
|
||
7956 0054 0021 movs r1, #0
|
||
7957 0056 2846 mov r0, r5
|
||
7958 0058 FFF7FEFF bl dir_sdi
|
||
7959 .LVL919:
|
||
4206:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->sclust) {
|
||
7960 .loc 1 4206 5 is_stmt 1 view .LVU2699
|
||
4206:Middlewares/Third_Party/FatFs/src/ff.c **** if (obj->sclust) {
|
||
7961 .loc 1 4206 8 is_stmt 0 view .LVU2700
|
||
7962 005c 0446 mov r4, r0
|
||
7963 005e 68B9 cbnz r0, .L585
|
||
4207:Middlewares/Third_Party/FatFs/src/ff.c **** obj->lockid = inc_lock(dp, 0); /* Lock the sub directory */
|
||
7964 .loc 1 4207 6 is_stmt 1 view .LVU2701
|
||
4207:Middlewares/Third_Party/FatFs/src/ff.c **** obj->lockid = inc_lock(dp, 0); /* Lock the sub directory */
|
||
7965 .loc 1 4207 13 is_stmt 0 view .LVU2702
|
||
7966 0060 AB68 ldr r3, [r5, #8]
|
||
4207:Middlewares/Third_Party/FatFs/src/ff.c **** obj->lockid = inc_lock(dp, 0); /* Lock the sub directory */
|
||
7967 .loc 1 4207 9 view .LVU2703
|
||
7968 0062 13B9 cbnz r3, .L595
|
||
4211:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7969 .loc 1 4211 7 is_stmt 1 view .LVU2704
|
||
4211:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7970 .loc 1 4211 19 is_stmt 0 view .LVU2705
|
||
7971 0064 0023 movs r3, #0
|
||
7972 0066 2B61 str r3, [r5, #16]
|
||
7973 0068 08E0 b .L585
|
||
7974 .L595:
|
||
4208:Middlewares/Third_Party/FatFs/src/ff.c **** if (!obj->lockid) res = FR_TOO_MANY_OPEN_FILES;
|
||
7975 .loc 1 4208 7 is_stmt 1 view .LVU2706
|
||
4208:Middlewares/Third_Party/FatFs/src/ff.c **** if (!obj->lockid) res = FR_TOO_MANY_OPEN_FILES;
|
||
7976 .loc 1 4208 21 is_stmt 0 view .LVU2707
|
||
7977 006a 0021 movs r1, #0
|
||
7978 006c 2846 mov r0, r5
|
||
7979 .LVL920:
|
||
ARM GAS /tmp/ccH7dUYB.s page 286
|
||
|
||
|
||
4208:Middlewares/Third_Party/FatFs/src/ff.c **** if (!obj->lockid) res = FR_TOO_MANY_OPEN_FILES;
|
||
7980 .loc 1 4208 21 view .LVU2708
|
||
7981 006e FFF7FEFF bl inc_lock
|
||
7982 .LVL921:
|
||
4208:Middlewares/Third_Party/FatFs/src/ff.c **** if (!obj->lockid) res = FR_TOO_MANY_OPEN_FILES;
|
||
7983 .loc 1 4208 19 discriminator 1 view .LVU2709
|
||
7984 0072 2861 str r0, [r5, #16]
|
||
4209:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
7985 .loc 1 4209 7 is_stmt 1 view .LVU2710
|
||
4209:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
7986 .loc 1 4209 10 is_stmt 0 view .LVU2711
|
||
7987 0074 10B9 cbnz r0, .L585
|
||
7988 .LVL922:
|
||
4209:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
7989 .loc 1 4209 29 discriminator 1 view .LVU2712
|
||
7990 0076 1224 movs r4, #18
|
||
7991 0078 02E0 b .L588
|
||
7992 .LVL923:
|
||
7993 .L590:
|
||
4199:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7994 .loc 1 4199 10 view .LVU2713
|
||
7995 007a 0524 movs r4, #5
|
||
7996 .LVL924:
|
||
7997 .L585:
|
||
4217:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_NO_PATH;
|
||
7998 .loc 1 4217 16 is_stmt 1 view .LVU2714
|
||
4218:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
7999 .loc 1 4218 3 view .LVU2715
|
||
4218:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8000 .loc 1 4218 6 is_stmt 0 view .LVU2716
|
||
8001 007c 042C cmp r4, #4
|
||
8002 007e 02D0 beq .L596
|
||
8003 .LVL925:
|
||
8004 .L588:
|
||
4220:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8005 .loc 1 4220 2 is_stmt 1 view .LVU2717
|
||
4220:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8006 .loc 1 4220 5 is_stmt 0 view .LVU2718
|
||
8007 0080 002C cmp r4, #0
|
||
8008 0082 CCD0 beq .L583
|
||
8009 0084 C9E7 b .L584
|
||
8010 .L596:
|
||
8011 .LVL926:
|
||
4218:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8012 .loc 1 4218 30 discriminator 1 view .LVU2719
|
||
8013 0086 0524 movs r4, #5
|
||
8014 0088 C7E7 b .L584
|
||
8015 .LVL927:
|
||
8016 .L589:
|
||
4173:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8017 .loc 1 4173 18 discriminator 1 view .LVU2720
|
||
8018 008a 0924 movs r4, #9
|
||
8019 008c C7E7 b .L583
|
||
8020 .cfi_endproc
|
||
8021 .LFE1228:
|
||
8023 .section .text.f_closedir,"ax",%progbits
|
||
8024 .align 1
|
||
ARM GAS /tmp/ccH7dUYB.s page 287
|
||
|
||
|
||
8025 .global f_closedir
|
||
8026 .syntax unified
|
||
8027 .thumb
|
||
8028 .thumb_func
|
||
8030 f_closedir:
|
||
8031 .LVL928:
|
||
8032 .LFB1229:
|
||
4235:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8033 .loc 1 4235 1 is_stmt 1 view -0
|
||
8034 .cfi_startproc
|
||
8035 @ args = 0, pretend = 0, frame = 8
|
||
8036 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4235:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8037 .loc 1 4235 1 is_stmt 0 view .LVU2722
|
||
8038 0000 10B5 push {r4, lr}
|
||
8039 .LCFI79:
|
||
8040 .cfi_def_cfa_offset 8
|
||
8041 .cfi_offset 4, -8
|
||
8042 .cfi_offset 14, -4
|
||
8043 0002 82B0 sub sp, sp, #8
|
||
8044 .LCFI80:
|
||
8045 .cfi_def_cfa_offset 16
|
||
8046 0004 0446 mov r4, r0
|
||
4236:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
8047 .loc 1 4236 2 is_stmt 1 view .LVU2723
|
||
4237:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8048 .loc 1 4237 2 view .LVU2724
|
||
4240:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8049 .loc 1 4240 2 view .LVU2725
|
||
4240:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8050 .loc 1 4240 8 is_stmt 0 view .LVU2726
|
||
8051 0006 01A9 add r1, sp, #4
|
||
8052 0008 FFF7FEFF bl validate
|
||
8053 .LVL929:
|
||
4241:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
8054 .loc 1 4241 2 is_stmt 1 view .LVU2727
|
||
4241:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
8055 .loc 1 4241 5 is_stmt 0 view .LVU2728
|
||
8056 000c 20B9 cbnz r0, .L598
|
||
4243:Middlewares/Third_Party/FatFs/src/ff.c **** res = dec_lock(dp->obj.lockid);
|
||
8057 .loc 1 4243 3 is_stmt 1 view .LVU2729
|
||
4243:Middlewares/Third_Party/FatFs/src/ff.c **** res = dec_lock(dp->obj.lockid);
|
||
8058 .loc 1 4243 14 is_stmt 0 view .LVU2730
|
||
8059 000e 2369 ldr r3, [r4, #16]
|
||
4243:Middlewares/Third_Party/FatFs/src/ff.c **** res = dec_lock(dp->obj.lockid);
|
||
8060 .loc 1 4243 6 view .LVU2731
|
||
8061 0010 23B9 cbnz r3, .L601
|
||
8062 .L599:
|
||
8063 .LVL930:
|
||
4246:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8064 .loc 1 4246 3 is_stmt 1 view .LVU2732
|
||
4246:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8065 .loc 1 4246 6 is_stmt 0 view .LVU2733
|
||
8066 0012 08B9 cbnz r0, .L598
|
||
4249:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8067 .loc 1 4249 4 is_stmt 1 view .LVU2734
|
||
4249:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 288
|
||
|
||
|
||
8068 .loc 1 4249 15 is_stmt 0 view .LVU2735
|
||
8069 0014 0023 movs r3, #0
|
||
8070 0016 2360 str r3, [r4]
|
||
8071 .LVL931:
|
||
8072 .L598:
|
||
4255:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8073 .loc 1 4255 2 is_stmt 1 view .LVU2736
|
||
4256:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8074 .loc 1 4256 1 is_stmt 0 view .LVU2737
|
||
8075 0018 02B0 add sp, sp, #8
|
||
8076 .LCFI81:
|
||
8077 .cfi_remember_state
|
||
8078 .cfi_def_cfa_offset 8
|
||
8079 @ sp needed
|
||
8080 001a 10BD pop {r4, pc}
|
||
8081 .LVL932:
|
||
8082 .L601:
|
||
8083 .LCFI82:
|
||
8084 .cfi_restore_state
|
||
4244:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8085 .loc 1 4244 4 is_stmt 1 view .LVU2738
|
||
4244:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8086 .loc 1 4244 10 is_stmt 0 view .LVU2739
|
||
8087 001c 1846 mov r0, r3
|
||
8088 001e FFF7FEFF bl dec_lock
|
||
8089 .LVL933:
|
||
4244:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8090 .loc 1 4244 10 view .LVU2740
|
||
8091 0022 F6E7 b .L599
|
||
8092 .cfi_endproc
|
||
8093 .LFE1229:
|
||
8095 .section .text.f_readdir,"ax",%progbits
|
||
8096 .align 1
|
||
8097 .global f_readdir
|
||
8098 .syntax unified
|
||
8099 .thumb
|
||
8100 .thumb_func
|
||
8102 f_readdir:
|
||
8103 .LVL934:
|
||
8104 .LFB1230:
|
||
4269:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8105 .loc 1 4269 1 is_stmt 1 view -0
|
||
8106 .cfi_startproc
|
||
8107 @ args = 0, pretend = 0, frame = 8
|
||
8108 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4269:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8109 .loc 1 4269 1 is_stmt 0 view .LVU2742
|
||
8110 0000 70B5 push {r4, r5, r6, lr}
|
||
8111 .LCFI83:
|
||
8112 .cfi_def_cfa_offset 16
|
||
8113 .cfi_offset 4, -16
|
||
8114 .cfi_offset 5, -12
|
||
8115 .cfi_offset 6, -8
|
||
8116 .cfi_offset 14, -4
|
||
8117 0002 82B0 sub sp, sp, #8
|
||
8118 .LCFI84:
|
||
8119 .cfi_def_cfa_offset 24
|
||
ARM GAS /tmp/ccH7dUYB.s page 289
|
||
|
||
|
||
8120 0004 0446 mov r4, r0
|
||
8121 0006 0D46 mov r5, r1
|
||
4270:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
8122 .loc 1 4270 2 is_stmt 1 view .LVU2743
|
||
4271:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
8123 .loc 1 4271 2 view .LVU2744
|
||
4275:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8124 .loc 1 4275 2 view .LVU2745
|
||
4275:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8125 .loc 1 4275 8 is_stmt 0 view .LVU2746
|
||
8126 0008 01A9 add r1, sp, #4
|
||
8127 .LVL935:
|
||
4275:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8128 .loc 1 4275 8 view .LVU2747
|
||
8129 000a FFF7FEFF bl validate
|
||
8130 .LVL936:
|
||
4276:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fno) {
|
||
8131 .loc 1 4276 2 is_stmt 1 view .LVU2748
|
||
4276:Middlewares/Third_Party/FatFs/src/ff.c **** if (!fno) {
|
||
8132 .loc 1 4276 5 is_stmt 0 view .LVU2749
|
||
8133 000e 0646 mov r6, r0
|
||
8134 0010 C0B9 cbnz r0, .L603
|
||
4277:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind the directory object */
|
||
8135 .loc 1 4277 3 is_stmt 1 view .LVU2750
|
||
4277:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, 0); /* Rewind the directory object */
|
||
8136 .loc 1 4277 6 is_stmt 0 view .LVU2751
|
||
8137 0012 95B1 cbz r5, .L608
|
||
4280:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(dp, 0); /* Read an item */
|
||
8138 .loc 1 4280 19 is_stmt 1 view .LVU2752
|
||
4281:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory */
|
||
8139 .loc 1 4281 4 view .LVU2753
|
||
4281:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory */
|
||
8140 .loc 1 4281 10 is_stmt 0 view .LVU2754
|
||
8141 0014 0021 movs r1, #0
|
||
8142 0016 2046 mov r0, r4
|
||
8143 .LVL937:
|
||
4281:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory */
|
||
8144 .loc 1 4281 10 view .LVU2755
|
||
8145 0018 FFF7FEFF bl dir_read
|
||
8146 .LVL938:
|
||
4282:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* A valid entry is found */
|
||
8147 .loc 1 4282 4 is_stmt 1 view .LVU2756
|
||
4282:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* A valid entry is found */
|
||
8148 .loc 1 4282 7 is_stmt 0 view .LVU2757
|
||
8149 001c 0428 cmp r0, #4
|
||
8150 001e 00D0 beq .L605
|
||
4283:Middlewares/Third_Party/FatFs/src/ff.c **** get_fileinfo(dp, fno); /* Get the object information */
|
||
8151 .loc 1 4283 4 is_stmt 1 view .LVU2758
|
||
4283:Middlewares/Third_Party/FatFs/src/ff.c **** get_fileinfo(dp, fno); /* Get the object information */
|
||
8152 .loc 1 4283 7 is_stmt 0 view .LVU2759
|
||
8153 0020 98B9 cbnz r0, .L606
|
||
8154 .L605:
|
||
8155 .LVL939:
|
||
4284:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 0); /* Increment index for next */
|
||
8156 .loc 1 4284 5 is_stmt 1 view .LVU2760
|
||
8157 0022 2946 mov r1, r5
|
||
8158 0024 2046 mov r0, r4
|
||
ARM GAS /tmp/ccH7dUYB.s page 290
|
||
|
||
|
||
8159 0026 FFF7FEFF bl get_fileinfo
|
||
8160 .LVL940:
|
||
4285:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory now */
|
||
8161 .loc 1 4285 5 view .LVU2761
|
||
4285:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory now */
|
||
8162 .loc 1 4285 11 is_stmt 0 view .LVU2762
|
||
8163 002a 0021 movs r1, #0
|
||
8164 002c 2046 mov r0, r4
|
||
8165 002e FFF7FEFF bl dir_next
|
||
8166 .LVL941:
|
||
4286:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8167 .loc 1 4286 5 is_stmt 1 view .LVU2763
|
||
4286:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8168 .loc 1 4286 8 is_stmt 0 view .LVU2764
|
||
8169 0032 0428 cmp r0, #4
|
||
8170 0034 06D0 beq .L603
|
||
4285:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory now */
|
||
8171 .loc 1 4285 11 view .LVU2765
|
||
8172 0036 0646 mov r6, r0
|
||
8173 0038 04E0 b .L603
|
||
8174 .L608:
|
||
4278:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8175 .loc 1 4278 4 is_stmt 1 view .LVU2766
|
||
4278:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8176 .loc 1 4278 10 is_stmt 0 view .LVU2767
|
||
8177 003a 0021 movs r1, #0
|
||
8178 003c 2046 mov r0, r4
|
||
8179 .LVL942:
|
||
4278:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8180 .loc 1 4278 10 view .LVU2768
|
||
8181 003e FFF7FEFF bl dir_sdi
|
||
8182 .LVL943:
|
||
8183 0042 0646 mov r6, r0
|
||
8184 .LVL944:
|
||
8185 .L603:
|
||
4288:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8186 .loc 1 4288 17 is_stmt 1 view .LVU2769
|
||
4291:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8187 .loc 1 4291 2 view .LVU2770
|
||
4292:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8188 .loc 1 4292 1 is_stmt 0 view .LVU2771
|
||
8189 0044 3046 mov r0, r6
|
||
8190 0046 02B0 add sp, sp, #8
|
||
8191 .LCFI85:
|
||
8192 .cfi_remember_state
|
||
8193 .cfi_def_cfa_offset 16
|
||
8194 @ sp needed
|
||
8195 0048 70BD pop {r4, r5, r6, pc}
|
||
8196 .LVL945:
|
||
8197 .L606:
|
||
8198 .LCFI86:
|
||
8199 .cfi_restore_state
|
||
4292:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8200 .loc 1 4292 1 view .LVU2772
|
||
8201 004a 0646 mov r6, r0
|
||
8202 004c FAE7 b .L603
|
||
8203 .cfi_endproc
|
||
ARM GAS /tmp/ccH7dUYB.s page 291
|
||
|
||
|
||
8204 .LFE1230:
|
||
8206 .section .text.f_stat,"ax",%progbits
|
||
8207 .align 1
|
||
8208 .global f_stat
|
||
8209 .syntax unified
|
||
8210 .thumb
|
||
8211 .thumb_func
|
||
8213 f_stat:
|
||
8214 .LVL946:
|
||
8215 .LFB1231:
|
||
4357:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8216 .loc 1 4357 1 is_stmt 1 view -0
|
||
8217 .cfi_startproc
|
||
8218 @ args = 0, pretend = 0, frame = 56
|
||
8219 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4357:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8220 .loc 1 4357 1 is_stmt 0 view .LVU2774
|
||
8221 0000 30B5 push {r4, r5, lr}
|
||
8222 .LCFI87:
|
||
8223 .cfi_def_cfa_offset 12
|
||
8224 .cfi_offset 4, -12
|
||
8225 .cfi_offset 5, -8
|
||
8226 .cfi_offset 14, -4
|
||
8227 0002 8FB0 sub sp, sp, #60
|
||
8228 .LCFI88:
|
||
8229 .cfi_def_cfa_offset 72
|
||
8230 0004 0190 str r0, [sp, #4]
|
||
8231 0006 0C46 mov r4, r1
|
||
4358:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
8232 .loc 1 4358 2 is_stmt 1 view .LVU2775
|
||
4359:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
8233 .loc 1 4359 2 view .LVU2776
|
||
4364:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8234 .loc 1 4364 2 view .LVU2777
|
||
4364:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8235 .loc 1 4364 8 is_stmt 0 view .LVU2778
|
||
8236 0008 0022 movs r2, #0
|
||
8237 000a 02A9 add r1, sp, #8
|
||
8238 .LVL947:
|
||
4364:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8239 .loc 1 4364 8 view .LVU2779
|
||
8240 000c 01A8 add r0, sp, #4
|
||
8241 .LVL948:
|
||
4364:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8242 .loc 1 4364 8 view .LVU2780
|
||
8243 000e FFF7FEFF bl find_volume
|
||
8244 .LVL949:
|
||
4365:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(dj.obj.fs);
|
||
8245 .loc 1 4365 2 is_stmt 1 view .LVU2781
|
||
4365:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(dj.obj.fs);
|
||
8246 .loc 1 4365 5 is_stmt 0 view .LVU2782
|
||
8247 0012 0546 mov r5, r0
|
||
8248 0014 10B1 cbz r0, .L613
|
||
8249 .LVL950:
|
||
8250 .L610:
|
||
4375:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8251 .loc 1 4375 16 is_stmt 1 view .LVU2783
|
||
ARM GAS /tmp/ccH7dUYB.s page 292
|
||
|
||
|
||
4378:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8252 .loc 1 4378 2 view .LVU2784
|
||
4379:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8253 .loc 1 4379 1 is_stmt 0 view .LVU2785
|
||
8254 0016 2846 mov r0, r5
|
||
8255 0018 0FB0 add sp, sp, #60
|
||
8256 .LCFI89:
|
||
8257 .cfi_remember_state
|
||
8258 .cfi_def_cfa_offset 12
|
||
8259 @ sp needed
|
||
8260 001a 30BD pop {r4, r5, pc}
|
||
8261 .LVL951:
|
||
8262 .L613:
|
||
8263 .LCFI90:
|
||
8264 .cfi_restore_state
|
||
4366:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
8265 .loc 1 4366 25 is_stmt 1 view .LVU2786
|
||
4367:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
8266 .loc 1 4367 3 view .LVU2787
|
||
4367:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
8267 .loc 1 4367 9 is_stmt 0 view .LVU2788
|
||
8268 001c 0199 ldr r1, [sp, #4]
|
||
8269 001e 02A8 add r0, sp, #8
|
||
8270 .LVL952:
|
||
4367:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Follow completed */
|
||
8271 .loc 1 4367 9 view .LVU2789
|
||
8272 0020 FFF7FEFF bl follow_path
|
||
8273 .LVL953:
|
||
4368:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* It is origin directory */
|
||
8274 .loc 1 4368 3 is_stmt 1 view .LVU2790
|
||
4368:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* It is origin directory */
|
||
8275 .loc 1 4368 6 is_stmt 0 view .LVU2791
|
||
8276 0024 0546 mov r5, r0
|
||
8277 0026 0028 cmp r0, #0
|
||
8278 0028 F5D1 bne .L610
|
||
4369:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
8279 .loc 1 4369 4 is_stmt 1 view .LVU2792
|
||
4369:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
8280 .loc 1 4369 8 is_stmt 0 view .LVU2793
|
||
8281 002a 9DF93730 ldrsb r3, [sp, #55]
|
||
4369:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
8282 .loc 1 4369 7 view .LVU2794
|
||
8283 002e 002B cmp r3, #0
|
||
8284 0030 06DB blt .L611
|
||
4372:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8285 .loc 1 4372 5 is_stmt 1 view .LVU2795
|
||
4372:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8286 .loc 1 4372 8 is_stmt 0 view .LVU2796
|
||
8287 0032 002C cmp r4, #0
|
||
8288 0034 EFD0 beq .L610
|
||
4372:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8289 .loc 1 4372 14 is_stmt 1 discriminator 1 view .LVU2797
|
||
8290 0036 2146 mov r1, r4
|
||
8291 0038 02A8 add r0, sp, #8
|
||
8292 .LVL954:
|
||
4372:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8293 .loc 1 4372 14 is_stmt 0 discriminator 1 view .LVU2798
|
||
ARM GAS /tmp/ccH7dUYB.s page 293
|
||
|
||
|
||
8294 003a FFF7FEFF bl get_fileinfo
|
||
8295 .LVL955:
|
||
8296 003e EAE7 b .L610
|
||
8297 .LVL956:
|
||
8298 .L611:
|
||
4370:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Found an object */
|
||
8299 .loc 1 4370 9 view .LVU2799
|
||
8300 0040 0625 movs r5, #6
|
||
8301 0042 E8E7 b .L610
|
||
8302 .cfi_endproc
|
||
8303 .LFE1231:
|
||
8305 .section .text.f_getfree,"ax",%progbits
|
||
8306 .align 1
|
||
8307 .global f_getfree
|
||
8308 .syntax unified
|
||
8309 .thumb
|
||
8310 .thumb_func
|
||
8312 f_getfree:
|
||
8313 .LVL957:
|
||
8314 .LFB1232:
|
||
4393:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8315 .loc 1 4393 1 is_stmt 1 view -0
|
||
8316 .cfi_startproc
|
||
8317 @ args = 0, pretend = 0, frame = 32
|
||
8318 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4393:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8319 .loc 1 4393 1 is_stmt 0 view .LVU2801
|
||
8320 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
8321 .LCFI91:
|
||
8322 .cfi_def_cfa_offset 36
|
||
8323 .cfi_offset 4, -36
|
||
8324 .cfi_offset 5, -32
|
||
8325 .cfi_offset 6, -28
|
||
8326 .cfi_offset 7, -24
|
||
8327 .cfi_offset 8, -20
|
||
8328 .cfi_offset 9, -16
|
||
8329 .cfi_offset 10, -12
|
||
8330 .cfi_offset 11, -8
|
||
8331 .cfi_offset 14, -4
|
||
8332 0004 89B0 sub sp, sp, #36
|
||
8333 .LCFI92:
|
||
8334 .cfi_def_cfa_offset 72
|
||
8335 0006 0190 str r0, [sp, #4]
|
||
8336 0008 8846 mov r8, r1
|
||
8337 000a 1446 mov r4, r2
|
||
4394:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
8338 .loc 1 4394 2 is_stmt 1 view .LVU2802
|
||
4395:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD nfree, clst, sect, stat;
|
||
8339 .loc 1 4395 2 view .LVU2803
|
||
4396:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
8340 .loc 1 4396 2 view .LVU2804
|
||
4397:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *p;
|
||
8341 .loc 1 4397 2 view .LVU2805
|
||
4398:Middlewares/Third_Party/FatFs/src/ff.c **** _FDID obj;
|
||
8342 .loc 1 4398 2 view .LVU2806
|
||
4399:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8343 .loc 1 4399 2 view .LVU2807
|
||
ARM GAS /tmp/ccH7dUYB.s page 294
|
||
|
||
|
||
4403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8344 .loc 1 4403 2 view .LVU2808
|
||
4403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8345 .loc 1 4403 8 is_stmt 0 view .LVU2809
|
||
8346 000c 0022 movs r2, #0
|
||
8347 .LVL958:
|
||
4403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8348 .loc 1 4403 8 view .LVU2810
|
||
8349 000e 07A9 add r1, sp, #28
|
||
8350 .LVL959:
|
||
4403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8351 .loc 1 4403 8 view .LVU2811
|
||
8352 0010 01A8 add r0, sp, #4
|
||
8353 .LVL960:
|
||
4403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8354 .loc 1 4403 8 view .LVU2812
|
||
8355 0012 FFF7FEFF bl find_volume
|
||
8356 .LVL961:
|
||
4404:Middlewares/Third_Party/FatFs/src/ff.c **** *fatfs = fs; /* Return ptr to the fs object */
|
||
8357 .loc 1 4404 2 is_stmt 1 view .LVU2813
|
||
4404:Middlewares/Third_Party/FatFs/src/ff.c **** *fatfs = fs; /* Return ptr to the fs object */
|
||
8358 .loc 1 4404 5 is_stmt 0 view .LVU2814
|
||
8359 0016 8146 mov r9, r0
|
||
8360 0018 0028 cmp r0, #0
|
||
8361 001a 59D1 bne .L615
|
||
4405:Middlewares/Third_Party/FatFs/src/ff.c **** /* If free_clst is valid, return it without full cluster scan */
|
||
8362 .loc 1 4405 3 is_stmt 1 view .LVU2815
|
||
4405:Middlewares/Third_Party/FatFs/src/ff.c **** /* If free_clst is valid, return it without full cluster scan */
|
||
8363 .loc 1 4405 10 is_stmt 0 view .LVU2816
|
||
8364 001c 079B ldr r3, [sp, #28]
|
||
8365 001e 2360 str r3, [r4]
|
||
4407:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = fs->free_clst;
|
||
8366 .loc 1 4407 3 is_stmt 1 view .LVU2817
|
||
4407:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = fs->free_clst;
|
||
8367 .loc 1 4407 9 is_stmt 0 view .LVU2818
|
||
8368 0020 5A69 ldr r2, [r3, #20]
|
||
4407:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = fs->free_clst;
|
||
8369 .loc 1 4407 26 view .LVU2819
|
||
8370 0022 9D69 ldr r5, [r3, #24]
|
||
4407:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = fs->free_clst;
|
||
8371 .loc 1 4407 37 view .LVU2820
|
||
8372 0024 A91E subs r1, r5, #2
|
||
4407:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = fs->free_clst;
|
||
8373 .loc 1 4407 6 view .LVU2821
|
||
8374 0026 8A42 cmp r2, r1
|
||
8375 0028 02D8 bhi .L616
|
||
4408:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8376 .loc 1 4408 4 is_stmt 1 view .LVU2822
|
||
4408:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8377 .loc 1 4408 11 is_stmt 0 view .LVU2823
|
||
8378 002a C8F80020 str r2, [r8]
|
||
8379 002e 4FE0 b .L615
|
||
8380 .L616:
|
||
4411:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT12) { /* FAT12: Sector unalighed FAT entries */
|
||
8381 .loc 1 4411 4 is_stmt 1 view .LVU2824
|
||
8382 .LVL962:
|
||
4412:Middlewares/Third_Party/FatFs/src/ff.c **** clst = 2; obj.fs = fs;
|
||
ARM GAS /tmp/ccH7dUYB.s page 295
|
||
|
||
|
||
8383 .loc 1 4412 4 view .LVU2825
|
||
4412:Middlewares/Third_Party/FatFs/src/ff.c **** clst = 2; obj.fs = fs;
|
||
8384 .loc 1 4412 10 is_stmt 0 view .LVU2826
|
||
8385 0030 1E78 ldrb r6, [r3] @ zero_extendqisi2
|
||
4412:Middlewares/Third_Party/FatFs/src/ff.c **** clst = 2; obj.fs = fs;
|
||
8386 .loc 1 4412 7 view .LVU2827
|
||
8387 0032 012E cmp r6, #1
|
||
8388 0034 05D0 beq .L630
|
||
4440:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0; p = 0;
|
||
8389 .loc 1 4440 6 is_stmt 1 view .LVU2828
|
||
8390 .LVL963:
|
||
4440:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0; p = 0;
|
||
8391 .loc 1 4440 27 view .LVU2829
|
||
4440:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0; p = 0;
|
||
8392 .loc 1 4440 32 is_stmt 0 view .LVU2830
|
||
8393 0036 D3F824A0 ldr r10, [r3, #36]
|
||
8394 .LVL964:
|
||
4441:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8395 .loc 1 4441 6 is_stmt 1 view .LVU2831
|
||
4441:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8396 .loc 1 4441 13 view .LVU2832
|
||
4441:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8397 .loc 1 4441 15 is_stmt 0 view .LVU2833
|
||
8398 003a 0024 movs r4, #0
|
||
8399 .LVL965:
|
||
4441:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8400 .loc 1 4441 8 view .LVU2834
|
||
8401 003c 2646 mov r6, r4
|
||
4411:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT12) { /* FAT12: Sector unalighed FAT entries */
|
||
8402 .loc 1 4411 10 view .LVU2835
|
||
8403 003e 2746 mov r7, r4
|
||
8404 0040 2FE0 b .L626
|
||
8405 .LVL966:
|
||
8406 .L630:
|
||
4413:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8407 .loc 1 4413 5 is_stmt 1 view .LVU2836
|
||
4413:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8408 .loc 1 4413 15 view .LVU2837
|
||
4413:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8409 .loc 1 4413 22 is_stmt 0 view .LVU2838
|
||
8410 0042 0293 str r3, [sp, #8]
|
||
4413:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
8411 .loc 1 4413 10 view .LVU2839
|
||
8412 0044 0224 movs r4, #2
|
||
8413 .LVL967:
|
||
4411:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT12) { /* FAT12: Sector unalighed FAT entries */
|
||
8414 .loc 1 4411 10 view .LVU2840
|
||
8415 0046 0027 movs r7, #0
|
||
8416 0048 04E0 b .L620
|
||
8417 .LVL968:
|
||
8418 .L619:
|
||
4419:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8419 .loc 1 4419 21 is_stmt 1 view .LVU2841
|
||
8420 004a 0134 adds r4, r4, #1
|
||
8421 .LVL969:
|
||
4419:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8422 .loc 1 4419 25 is_stmt 0 view .LVU2842
|
||
ARM GAS /tmp/ccH7dUYB.s page 296
|
||
|
||
|
||
8423 004c 079B ldr r3, [sp, #28]
|
||
8424 004e 9B69 ldr r3, [r3, #24]
|
||
4419:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8425 .loc 1 4419 21 view .LVU2843
|
||
8426 0050 A342 cmp r3, r4
|
||
8427 0052 35D9 bls .L618
|
||
8428 .LVL970:
|
||
8429 .L620:
|
||
4414:Middlewares/Third_Party/FatFs/src/ff.c **** stat = get_fat(&obj, clst);
|
||
8430 .loc 1 4414 5 is_stmt 1 view .LVU2844
|
||
4415:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0xFFFFFFFF) { res = FR_DISK_ERR; break; }
|
||
8431 .loc 1 4415 6 view .LVU2845
|
||
4415:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0xFFFFFFFF) { res = FR_DISK_ERR; break; }
|
||
8432 .loc 1 4415 13 is_stmt 0 view .LVU2846
|
||
8433 0054 2146 mov r1, r4
|
||
8434 0056 02A8 add r0, sp, #8
|
||
8435 0058 FFF7FEFF bl get_fat
|
||
8436 .LVL971:
|
||
4416:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 1) { res = FR_INT_ERR; break; }
|
||
8437 .loc 1 4416 6 is_stmt 1 view .LVU2847
|
||
4416:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 1) { res = FR_INT_ERR; break; }
|
||
8438 .loc 1 4416 9 is_stmt 0 view .LVU2848
|
||
8439 005c B0F1FF3F cmp r0, #-1
|
||
8440 0060 2DD0 beq .L627
|
||
4417:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0) nfree++;
|
||
8441 .loc 1 4417 6 is_stmt 1 view .LVU2849
|
||
4417:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0) nfree++;
|
||
8442 .loc 1 4417 9 is_stmt 0 view .LVU2850
|
||
8443 0062 0128 cmp r0, #1
|
||
8444 0064 38D0 beq .L628
|
||
4418:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++clst < fs->n_fatent);
|
||
8445 .loc 1 4418 6 is_stmt 1 view .LVU2851
|
||
4418:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++clst < fs->n_fatent);
|
||
8446 .loc 1 4418 9 is_stmt 0 view .LVU2852
|
||
8447 0066 0028 cmp r0, #0
|
||
8448 0068 EFD1 bne .L619
|
||
4418:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++clst < fs->n_fatent);
|
||
8449 .loc 1 4418 21 is_stmt 1 discriminator 1 view .LVU2853
|
||
4418:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++clst < fs->n_fatent);
|
||
8450 .loc 1 4418 26 is_stmt 0 discriminator 1 view .LVU2854
|
||
8451 006a 0137 adds r7, r7, #1
|
||
8452 .LVL972:
|
||
4418:Middlewares/Third_Party/FatFs/src/ff.c **** } while (++clst < fs->n_fatent);
|
||
8453 .loc 1 4418 26 discriminator 1 view .LVU2855
|
||
8454 006c EDE7 b .L619
|
||
8455 .LVL973:
|
||
8456 .L631:
|
||
4444:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
8457 .loc 1 4444 8 is_stmt 1 view .LVU2856
|
||
4444:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
8458 .loc 1 4444 14 is_stmt 0 view .LVU2857
|
||
8459 006e 0AF1010B add fp, r10, #1
|
||
8460 .LVL974:
|
||
4444:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
8461 .loc 1 4444 14 view .LVU2858
|
||
8462 0072 5146 mov r1, r10
|
||
8463 0074 0798 ldr r0, [sp, #28]
|
||
ARM GAS /tmp/ccH7dUYB.s page 297
|
||
|
||
|
||
8464 0076 FFF7FEFF bl move_window
|
||
8465 .LVL975:
|
||
4445:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win;
|
||
8466 .loc 1 4445 8 is_stmt 1 view .LVU2859
|
||
4445:Middlewares/Third_Party/FatFs/src/ff.c **** p = fs->win;
|
||
8467 .loc 1 4445 11 is_stmt 0 view .LVU2860
|
||
8468 007a 8146 mov r9, r0
|
||
8469 007c 00BB cbnz r0, .L618
|
||
4446:Middlewares/Third_Party/FatFs/src/ff.c **** i = SS(fs);
|
||
8470 .loc 1 4446 8 is_stmt 1 view .LVU2861
|
||
4446:Middlewares/Third_Party/FatFs/src/ff.c **** i = SS(fs);
|
||
8471 .loc 1 4446 14 is_stmt 0 view .LVU2862
|
||
8472 007e 079B ldr r3, [sp, #28]
|
||
4446:Middlewares/Third_Party/FatFs/src/ff.c **** i = SS(fs);
|
||
8473 .loc 1 4446 10 view .LVU2863
|
||
8474 0080 03F13404 add r4, r3, #52
|
||
8475 .LVL976:
|
||
4447:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8476 .loc 1 4447 8 is_stmt 1 view .LVU2864
|
||
4447:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8477 .loc 1 4447 12 is_stmt 0 view .LVU2865
|
||
8478 0084 9E89 ldrh r6, [r3, #12]
|
||
8479 .LVL977:
|
||
4444:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
8480 .loc 1 4444 14 view .LVU2866
|
||
8481 0086 DA46 mov r10, fp
|
||
8482 0088 0DE0 b .L621
|
||
8483 .LVL978:
|
||
8484 .L632:
|
||
4450:Middlewares/Third_Party/FatFs/src/ff.c **** p += 2; i -= 2;
|
||
8485 .loc 1 4450 8 is_stmt 1 view .LVU2867
|
||
4450:Middlewares/Third_Party/FatFs/src/ff.c **** p += 2; i -= 2;
|
||
8486 .loc 1 4450 12 is_stmt 0 view .LVU2868
|
||
8487 008a 2046 mov r0, r4
|
||
8488 008c FFF7FEFF bl ld_word
|
||
8489 .LVL979:
|
||
4450:Middlewares/Third_Party/FatFs/src/ff.c **** p += 2; i -= 2;
|
||
8490 .loc 1 4450 11 discriminator 1 view .LVU2869
|
||
8491 0090 00B9 cbnz r0, .L623
|
||
4450:Middlewares/Third_Party/FatFs/src/ff.c **** p += 2; i -= 2;
|
||
8492 .loc 1 4450 29 is_stmt 1 discriminator 1 view .LVU2870
|
||
4450:Middlewares/Third_Party/FatFs/src/ff.c **** p += 2; i -= 2;
|
||
8493 .loc 1 4450 34 is_stmt 0 discriminator 1 view .LVU2871
|
||
8494 0092 0137 adds r7, r7, #1
|
||
8495 .LVL980:
|
||
8496 .L623:
|
||
4451:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8497 .loc 1 4451 8 is_stmt 1 view .LVU2872
|
||
4451:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8498 .loc 1 4451 10 is_stmt 0 view .LVU2873
|
||
8499 0094 0234 adds r4, r4, #2
|
||
8500 .LVL981:
|
||
4451:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8501 .loc 1 4451 16 is_stmt 1 view .LVU2874
|
||
4451:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8502 .loc 1 4451 18 is_stmt 0 view .LVU2875
|
||
8503 0096 023E subs r6, r6, #2
|
||
ARM GAS /tmp/ccH7dUYB.s page 298
|
||
|
||
|
||
8504 .LVL982:
|
||
4451:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8505 .loc 1 4451 18 view .LVU2876
|
||
8506 0098 01E0 b .L624
|
||
8507 .L625:
|
||
4454:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8508 .loc 1 4454 8 is_stmt 1 view .LVU2877
|
||
4454:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8509 .loc 1 4454 10 is_stmt 0 view .LVU2878
|
||
8510 009a 0434 adds r4, r4, #4
|
||
8511 .LVL983:
|
||
4454:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8512 .loc 1 4454 16 is_stmt 1 view .LVU2879
|
||
4454:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8513 .loc 1 4454 18 is_stmt 0 view .LVU2880
|
||
8514 009c 043E subs r6, r6, #4
|
||
8515 .LVL984:
|
||
8516 .L624:
|
||
4456:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8517 .loc 1 4456 15 is_stmt 1 view .LVU2881
|
||
4456:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8518 .loc 1 4456 15 is_stmt 0 view .LVU2882
|
||
8519 009e 013D subs r5, r5, #1
|
||
8520 .LVL985:
|
||
4456:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8521 .loc 1 4456 15 view .LVU2883
|
||
8522 00a0 0ED0 beq .L618
|
||
8523 .LVL986:
|
||
8524 .L626:
|
||
4442:Middlewares/Third_Party/FatFs/src/ff.c **** if (i == 0) {
|
||
8525 .loc 1 4442 6 is_stmt 1 view .LVU2884
|
||
4443:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, sect++);
|
||
8526 .loc 1 4443 7 view .LVU2885
|
||
4443:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, sect++);
|
||
8527 .loc 1 4443 10 is_stmt 0 view .LVU2886
|
||
8528 00a2 002E cmp r6, #0
|
||
8529 00a4 E3D0 beq .L631
|
||
8530 .LVL987:
|
||
8531 .L621:
|
||
4449:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(p) == 0) nfree++;
|
||
8532 .loc 1 4449 7 is_stmt 1 view .LVU2887
|
||
4449:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(p) == 0) nfree++;
|
||
8533 .loc 1 4449 13 is_stmt 0 view .LVU2888
|
||
8534 00a6 079B ldr r3, [sp, #28]
|
||
8535 00a8 1B78 ldrb r3, [r3] @ zero_extendqisi2
|
||
4449:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_word(p) == 0) nfree++;
|
||
8536 .loc 1 4449 10 view .LVU2889
|
||
8537 00aa 022B cmp r3, #2
|
||
8538 00ac EDD0 beq .L632
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
8539 .loc 1 4453 8 is_stmt 1 view .LVU2890
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
8540 .loc 1 4453 13 is_stmt 0 view .LVU2891
|
||
8541 00ae 2046 mov r0, r4
|
||
8542 00b0 FFF7FEFF bl ld_dword
|
||
8543 .LVL988:
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
ARM GAS /tmp/ccH7dUYB.s page 299
|
||
|
||
|
||
8544 .loc 1 4453 11 discriminator 1 view .LVU2892
|
||
8545 00b4 30F07043 bics r3, r0, #-268435456
|
||
8546 00b8 EFD1 bne .L625
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
8547 .loc 1 4453 45 is_stmt 1 discriminator 1 view .LVU2893
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
8548 .loc 1 4453 50 is_stmt 0 discriminator 1 view .LVU2894
|
||
8549 00ba 0137 adds r7, r7, #1
|
||
8550 .LVL989:
|
||
4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4;
|
||
8551 .loc 1 4453 50 discriminator 1 view .LVU2895
|
||
8552 00bc EDE7 b .L625
|
||
8553 .LVL990:
|
||
8554 .L627:
|
||
4416:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 1) { res = FR_INT_ERR; break; }
|
||
8555 .loc 1 4416 36 discriminator 1 view .LVU2896
|
||
8556 00be B146 mov r9, r6
|
||
8557 .LVL991:
|
||
8558 .L618:
|
||
4459:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst = nfree; /* Now free_clst is valid */
|
||
8559 .loc 1 4459 4 is_stmt 1 view .LVU2897
|
||
4459:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst = nfree; /* Now free_clst is valid */
|
||
8560 .loc 1 4459 11 is_stmt 0 view .LVU2898
|
||
8561 00c0 C8F80070 str r7, [r8]
|
||
4460:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1; /* FSInfo is to be updated */
|
||
8562 .loc 1 4460 4 is_stmt 1 view .LVU2899
|
||
4460:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1; /* FSInfo is to be updated */
|
||
8563 .loc 1 4460 6 is_stmt 0 view .LVU2900
|
||
8564 00c4 079B ldr r3, [sp, #28]
|
||
4460:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fsi_flag |= 1; /* FSInfo is to be updated */
|
||
8565 .loc 1 4460 18 view .LVU2901
|
||
8566 00c6 5F61 str r7, [r3, #20]
|
||
4461:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8567 .loc 1 4461 4 is_stmt 1 view .LVU2902
|
||
4461:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8568 .loc 1 4461 6 is_stmt 0 view .LVU2903
|
||
8569 00c8 1A79 ldrb r2, [r3, #4] @ zero_extendqisi2
|
||
4461:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8570 .loc 1 4461 17 view .LVU2904
|
||
8571 00ca 42F00102 orr r2, r2, #1
|
||
8572 00ce 1A71 strb r2, [r3, #4]
|
||
8573 .LVL992:
|
||
8574 .L615:
|
||
4465:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8575 .loc 1 4465 2 is_stmt 1 view .LVU2905
|
||
4466:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8576 .loc 1 4466 1 is_stmt 0 view .LVU2906
|
||
8577 00d0 4846 mov r0, r9
|
||
8578 00d2 09B0 add sp, sp, #36
|
||
8579 .LCFI93:
|
||
8580 .cfi_remember_state
|
||
8581 .cfi_def_cfa_offset 36
|
||
8582 @ sp needed
|
||
8583 00d4 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
8584 .LVL993:
|
||
8585 .L628:
|
||
8586 .LCFI94:
|
||
ARM GAS /tmp/ccH7dUYB.s page 300
|
||
|
||
|
||
8587 .cfi_restore_state
|
||
4417:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0) nfree++;
|
||
8588 .loc 1 4417 27 discriminator 1 view .LVU2907
|
||
8589 00d8 4FF00209 mov r9, #2
|
||
8590 .LVL994:
|
||
4417:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat == 0) nfree++;
|
||
8591 .loc 1 4417 27 discriminator 1 view .LVU2908
|
||
8592 00dc F0E7 b .L618
|
||
8593 .cfi_endproc
|
||
8594 .LFE1232:
|
||
8596 .section .text.f_truncate,"ax",%progbits
|
||
8597 .align 1
|
||
8598 .global f_truncate
|
||
8599 .syntax unified
|
||
8600 .thumb
|
||
8601 .thumb_func
|
||
8603 f_truncate:
|
||
8604 .LVL995:
|
||
8605 .LFB1233:
|
||
4478:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8606 .loc 1 4478 1 is_stmt 1 view -0
|
||
8607 .cfi_startproc
|
||
8608 @ args = 0, pretend = 0, frame = 8
|
||
8609 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4478:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8610 .loc 1 4478 1 is_stmt 0 view .LVU2910
|
||
8611 0000 30B5 push {r4, r5, lr}
|
||
8612 .LCFI95:
|
||
8613 .cfi_def_cfa_offset 12
|
||
8614 .cfi_offset 4, -12
|
||
8615 .cfi_offset 5, -8
|
||
8616 .cfi_offset 14, -4
|
||
8617 0002 83B0 sub sp, sp, #12
|
||
8618 .LCFI96:
|
||
8619 .cfi_def_cfa_offset 24
|
||
8620 0004 0446 mov r4, r0
|
||
4479:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
8621 .loc 1 4479 2 is_stmt 1 view .LVU2911
|
||
4480:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD ncl;
|
||
8622 .loc 1 4480 2 view .LVU2912
|
||
4481:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8623 .loc 1 4481 2 view .LVU2913
|
||
4484:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res);
|
||
8624 .loc 1 4484 2 view .LVU2914
|
||
4484:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res);
|
||
8625 .loc 1 4484 8 is_stmt 0 view .LVU2915
|
||
8626 0006 01A9 add r1, sp, #4
|
||
8627 0008 FFF7FEFF bl validate
|
||
8628 .LVL996:
|
||
4485:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
8629 .loc 1 4485 2 is_stmt 1 view .LVU2916
|
||
4485:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
8630 .loc 1 4485 5 is_stmt 0 view .LVU2917
|
||
8631 000c 0546 mov r5, r0
|
||
8632 000e 0028 cmp r0, #0
|
||
8633 0010 49D1 bne .L636
|
||
4485:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
ARM GAS /tmp/ccH7dUYB.s page 301
|
||
|
||
|
||
8634 .loc 1 4485 27 discriminator 2 view .LVU2918
|
||
8635 0012 657D ldrb r5, [r4, #21] @ zero_extendqisi2
|
||
8636 .LVL997:
|
||
4485:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */
|
||
8637 .loc 1 4485 19 discriminator 2 view .LVU2919
|
||
8638 0014 002D cmp r5, #0
|
||
8639 0016 46D1 bne .L636
|
||
4486:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8640 .loc 1 4486 2 is_stmt 1 view .LVU2920
|
||
4486:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8641 .loc 1 4486 10 is_stmt 0 view .LVU2921
|
||
8642 0018 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
4486:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8643 .loc 1 4486 5 view .LVU2922
|
||
8644 001a 13F0020F tst r3, #2
|
||
8645 001e 41D0 beq .L641
|
||
4488:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */
|
||
8646 .loc 1 4488 2 is_stmt 1 view .LVU2923
|
||
4488:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */
|
||
8647 .loc 1 4488 8 is_stmt 0 view .LVU2924
|
||
8648 0020 A369 ldr r3, [r4, #24]
|
||
4488:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */
|
||
8649 .loc 1 4488 24 view .LVU2925
|
||
8650 0022 E268 ldr r2, [r4, #12]
|
||
4488:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */
|
||
8651 .loc 1 4488 5 view .LVU2926
|
||
8652 0024 9342 cmp r3, r2
|
||
8653 0026 3ED2 bcs .L636
|
||
4489:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, fp->obj.sclust, 0);
|
||
8654 .loc 1 4489 3 is_stmt 1 view .LVU2927
|
||
4489:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, fp->obj.sclust, 0);
|
||
8655 .loc 1 4489 6 is_stmt 0 view .LVU2928
|
||
8656 0028 FBB9 cbnz r3, .L637
|
||
4490:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = 0;
|
||
8657 .loc 1 4490 4 is_stmt 1 view .LVU2929
|
||
4490:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = 0;
|
||
8658 .loc 1 4490 10 is_stmt 0 view .LVU2930
|
||
8659 002a 0022 movs r2, #0
|
||
8660 002c A168 ldr r1, [r4, #8]
|
||
8661 002e 2046 mov r0, r4
|
||
8662 0030 FFF7FEFF bl remove_chain
|
||
8663 .LVL998:
|
||
8664 0034 0546 mov r5, r0
|
||
8665 .LVL999:
|
||
4491:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When truncate a part of the file, remove remaining clusters */
|
||
8666 .loc 1 4491 4 is_stmt 1 view .LVU2931
|
||
4491:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* When truncate a part of the file, remove remaining clusters */
|
||
8667 .loc 1 4491 19 is_stmt 0 view .LVU2932
|
||
8668 0036 0023 movs r3, #0
|
||
8669 0038 A360 str r3, [r4, #8]
|
||
8670 .LVL1000:
|
||
8671 .L638:
|
||
4501:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
8672 .loc 1 4501 3 is_stmt 1 view .LVU2933
|
||
4501:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
8673 .loc 1 4501 23 is_stmt 0 view .LVU2934
|
||
8674 003a A369 ldr r3, [r4, #24]
|
||
ARM GAS /tmp/ccH7dUYB.s page 302
|
||
|
||
|
||
4501:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED;
|
||
8675 .loc 1 4501 19 view .LVU2935
|
||
8676 003c E360 str r3, [r4, #12]
|
||
4502:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
8677 .loc 1 4502 3 is_stmt 1 view .LVU2936
|
||
4502:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
8678 .loc 1 4502 5 is_stmt 0 view .LVU2937
|
||
8679 003e 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
4502:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY
|
||
8680 .loc 1 4502 12 view .LVU2938
|
||
8681 0040 43F04003 orr r3, r3, #64
|
||
8682 0044 2375 strb r3, [r4, #20]
|
||
4504:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) {
|
||
8683 .loc 1 4504 3 is_stmt 1 view .LVU2939
|
||
4504:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) {
|
||
8684 .loc 1 4504 6 is_stmt 0 view .LVU2940
|
||
8685 0046 5DBB cbnz r5, .L640
|
||
4504:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(fs->drv, fp->buf, fp->sect, 1) != RES_OK) {
|
||
8686 .loc 1 4504 20 discriminator 1 view .LVU2941
|
||
8687 0048 13F0800F tst r3, #128
|
||
8688 004c 2BD0 beq .L636
|
||
4505:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
8689 .loc 1 4505 4 is_stmt 1 view .LVU2942
|
||
4505:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
8690 .loc 1 4505 8 is_stmt 0 view .LVU2943
|
||
8691 004e 0123 movs r3, #1
|
||
8692 0050 226A ldr r2, [r4, #32]
|
||
8693 0052 04F13001 add r1, r4, #48
|
||
8694 0056 0198 ldr r0, [sp, #4]
|
||
8695 0058 4078 ldrb r0, [r0, #1] @ zero_extendqisi2
|
||
8696 005a FFF7FEFF bl disk_write
|
||
8697 .LVL1001:
|
||
4505:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR;
|
||
8698 .loc 1 4505 7 discriminator 1 view .LVU2944
|
||
8699 005e F0B9 cbnz r0, .L644
|
||
4508:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8700 .loc 1 4508 5 is_stmt 1 view .LVU2945
|
||
4508:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8701 .loc 1 4508 7 is_stmt 0 view .LVU2946
|
||
8702 0060 237D ldrb r3, [r4, #20] @ zero_extendqisi2
|
||
4508:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8703 .loc 1 4508 14 view .LVU2947
|
||
8704 0062 03F07F03 and r3, r3, #127
|
||
8705 0066 2375 strb r3, [r4, #20]
|
||
8706 0068 1DE0 b .L636
|
||
8707 .L637:
|
||
4493:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
8708 .loc 1 4493 4 is_stmt 1 view .LVU2948
|
||
4493:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
8709 .loc 1 4493 10 is_stmt 0 view .LVU2949
|
||
8710 006a E169 ldr r1, [r4, #28]
|
||
8711 006c 2046 mov r0, r4
|
||
8712 006e FFF7FEFF bl get_fat
|
||
8713 .LVL1002:
|
||
4494:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
8714 .loc 1 4494 4 is_stmt 1 view .LVU2950
|
||
4495:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 1) res = FR_INT_ERR;
|
||
ARM GAS /tmp/ccH7dUYB.s page 303
|
||
|
||
|
||
8715 .loc 1 4495 4 view .LVU2951
|
||
4495:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 1) res = FR_INT_ERR;
|
||
8716 .loc 1 4495 7 is_stmt 0 view .LVU2952
|
||
8717 0072 B0F1FF3F cmp r0, #-1
|
||
8718 0076 0ED0 beq .L642
|
||
4496:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ncl < fs->n_fatent) {
|
||
8719 .loc 1 4496 4 is_stmt 1 view .LVU2953
|
||
4496:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ncl < fs->n_fatent) {
|
||
8720 .loc 1 4496 7 is_stmt 0 view .LVU2954
|
||
8721 0078 0128 cmp r0, #1
|
||
8722 007a 0ED0 beq .L646
|
||
8723 .L639:
|
||
8724 .LVL1003:
|
||
4497:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, ncl, fp->clust);
|
||
8725 .loc 1 4497 4 is_stmt 1 view .LVU2955
|
||
4497:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, ncl, fp->clust);
|
||
8726 .loc 1 4497 7 is_stmt 0 view .LVU2956
|
||
8727 007c 002D cmp r5, #0
|
||
8728 007e DCD1 bne .L638
|
||
4497:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, ncl, fp->clust);
|
||
8729 .loc 1 4497 32 discriminator 1 view .LVU2957
|
||
8730 0080 019B ldr r3, [sp, #4]
|
||
8731 0082 9B69 ldr r3, [r3, #24]
|
||
4497:Middlewares/Third_Party/FatFs/src/ff.c **** res = remove_chain(&fp->obj, ncl, fp->clust);
|
||
8732 .loc 1 4497 21 discriminator 1 view .LVU2958
|
||
8733 0084 8342 cmp r3, r0
|
||
8734 0086 D8D9 bls .L638
|
||
4498:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8735 .loc 1 4498 5 is_stmt 1 view .LVU2959
|
||
4498:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8736 .loc 1 4498 11 is_stmt 0 view .LVU2960
|
||
8737 0088 E269 ldr r2, [r4, #28]
|
||
8738 008a 0146 mov r1, r0
|
||
8739 008c 2046 mov r0, r4
|
||
8740 .LVL1004:
|
||
4498:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8741 .loc 1 4498 11 view .LVU2961
|
||
8742 008e FFF7FEFF bl remove_chain
|
||
8743 .LVL1005:
|
||
4498:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8744 .loc 1 4498 11 view .LVU2962
|
||
8745 0092 0546 mov r5, r0
|
||
8746 .LVL1006:
|
||
4498:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8747 .loc 1 4498 11 view .LVU2963
|
||
8748 0094 D1E7 b .L638
|
||
8749 .LVL1007:
|
||
8750 .L642:
|
||
4495:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 1) res = FR_INT_ERR;
|
||
8751 .loc 1 4495 31 discriminator 1 view .LVU2964
|
||
8752 0096 0125 movs r5, #1
|
||
8753 0098 F0E7 b .L639
|
||
8754 .L646:
|
||
4496:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && ncl < fs->n_fatent) {
|
||
8755 .loc 1 4496 22 discriminator 1 view .LVU2965
|
||
8756 009a 0225 movs r5, #2
|
||
8757 009c CDE7 b .L638
|
||
ARM GAS /tmp/ccH7dUYB.s page 304
|
||
|
||
|
||
8758 .LVL1008:
|
||
8759 .L644:
|
||
4506:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
8760 .loc 1 4506 9 view .LVU2966
|
||
8761 009e 0125 movs r5, #1
|
||
8762 .LVL1009:
|
||
8763 .L640:
|
||
4512:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8764 .loc 1 4512 21 is_stmt 1 discriminator 1 view .LVU2967
|
||
8765 00a0 6575 strb r5, [r4, #21]
|
||
4512:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8766 .loc 1 4512 21 discriminator 1 view .LVU2968
|
||
4512:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8767 .loc 1 4512 21 is_stmt 0 view .LVU2969
|
||
8768 00a2 00E0 b .L636
|
||
8769 .LVL1010:
|
||
8770 .L641:
|
||
4486:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8771 .loc 1 4486 30 discriminator 1 view .LVU2970
|
||
8772 00a4 0725 movs r5, #7
|
||
8773 .LVL1011:
|
||
8774 .L636:
|
||
4516:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8775 .loc 1 4516 1 view .LVU2971
|
||
8776 00a6 2846 mov r0, r5
|
||
8777 00a8 03B0 add sp, sp, #12
|
||
8778 .LCFI97:
|
||
8779 .cfi_def_cfa_offset 12
|
||
8780 @ sp needed
|
||
8781 00aa 30BD pop {r4, r5, pc}
|
||
4516:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8782 .loc 1 4516 1 view .LVU2972
|
||
8783 .cfi_endproc
|
||
8784 .LFE1233:
|
||
8786 .section .text.f_unlink,"ax",%progbits
|
||
8787 .align 1
|
||
8788 .global f_unlink
|
||
8789 .syntax unified
|
||
8790 .thumb
|
||
8791 .thumb_func
|
||
8793 f_unlink:
|
||
8794 .LVL1012:
|
||
8795 .LFB1234:
|
||
4528:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8796 .loc 1 4528 1 is_stmt 1 view -0
|
||
8797 .cfi_startproc
|
||
8798 @ args = 0, pretend = 0, frame = 112
|
||
8799 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4528:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
8800 .loc 1 4528 1 is_stmt 0 view .LVU2974
|
||
8801 0000 F0B5 push {r4, r5, r6, r7, lr}
|
||
8802 .LCFI98:
|
||
8803 .cfi_def_cfa_offset 20
|
||
8804 .cfi_offset 4, -20
|
||
8805 .cfi_offset 5, -16
|
||
8806 .cfi_offset 6, -12
|
||
8807 .cfi_offset 7, -8
|
||
ARM GAS /tmp/ccH7dUYB.s page 305
|
||
|
||
|
||
8808 .cfi_offset 14, -4
|
||
8809 0002 9DB0 sub sp, sp, #116
|
||
8810 .LCFI99:
|
||
8811 .cfi_def_cfa_offset 136
|
||
8812 0004 0190 str r0, [sp, #4]
|
||
4529:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj, sdj;
|
||
8813 .loc 1 4529 2 is_stmt 1 view .LVU2975
|
||
4530:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dclst = 0;
|
||
8814 .loc 1 4530 2 view .LVU2976
|
||
4531:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
8815 .loc 1 4531 2 view .LVU2977
|
||
8816 .LVL1013:
|
||
4532:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8817 .loc 1 4532 2 view .LVU2978
|
||
4540:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
8818 .loc 1 4540 2 view .LVU2979
|
||
4540:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
8819 .loc 1 4540 8 is_stmt 0 view .LVU2980
|
||
8820 0006 0222 movs r2, #2
|
||
8821 0008 03A9 add r1, sp, #12
|
||
8822 000a 01A8 add r0, sp, #4
|
||
8823 .LVL1014:
|
||
4540:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
8824 .loc 1 4540 8 view .LVU2981
|
||
8825 000c FFF7FEFF bl find_volume
|
||
8826 .LVL1015:
|
||
4541:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8827 .loc 1 4541 2 is_stmt 1 view .LVU2982
|
||
4541:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8828 .loc 1 4541 12 is_stmt 0 view .LVU2983
|
||
8829 0010 039B ldr r3, [sp, #12]
|
||
8830 0012 1093 str r3, [sp, #64]
|
||
4542:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
8831 .loc 1 4542 2 is_stmt 1 view .LVU2984
|
||
4542:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
8832 .loc 1 4542 5 is_stmt 0 view .LVU2985
|
||
8833 0014 0446 mov r4, r0
|
||
8834 0016 10B1 cbz r0, .L656
|
||
8835 .LVL1016:
|
||
8836 .L648:
|
||
4607:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8837 .loc 1 4607 16 is_stmt 1 view .LVU2986
|
||
4610:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8838 .loc 1 4610 2 view .LVU2987
|
||
4611:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
8839 .loc 1 4611 1 is_stmt 0 view .LVU2988
|
||
8840 0018 2046 mov r0, r4
|
||
8841 001a 1DB0 add sp, sp, #116
|
||
8842 .LCFI100:
|
||
8843 .cfi_remember_state
|
||
8844 .cfi_def_cfa_offset 20
|
||
8845 @ sp needed
|
||
8846 001c F0BD pop {r4, r5, r6, r7, pc}
|
||
8847 .LVL1017:
|
||
8848 .L656:
|
||
8849 .LCFI101:
|
||
8850 .cfi_restore_state
|
||
ARM GAS /tmp/ccH7dUYB.s page 306
|
||
|
||
|
||
4543:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
8851 .loc 1 4543 18 is_stmt 1 view .LVU2989
|
||
4544:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_OK && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
8852 .loc 1 4544 3 view .LVU2990
|
||
4544:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_OK && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
8853 .loc 1 4544 9 is_stmt 0 view .LVU2991
|
||
8854 001e 0199 ldr r1, [sp, #4]
|
||
8855 0020 10A8 add r0, sp, #64
|
||
8856 .LVL1018:
|
||
4544:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_OK && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
8857 .loc 1 4544 9 view .LVU2992
|
||
8858 0022 FFF7FEFF bl follow_path
|
||
8859 .LVL1019:
|
||
4545:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME; /* Cannot remove dot entry */
|
||
8860 .loc 1 4545 3 is_stmt 1 view .LVU2993
|
||
4549:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8861 .loc 1 4549 3 view .LVU2994
|
||
4549:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8862 .loc 1 4549 6 is_stmt 0 view .LVU2995
|
||
8863 0026 0446 mov r4, r0
|
||
8864 0028 0028 cmp r0, #0
|
||
8865 002a F5D1 bne .L648
|
||
4549:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8866 .loc 1 4549 21 is_stmt 1 discriminator 1 view .LVU2996
|
||
4549:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8867 .loc 1 4549 27 is_stmt 0 discriminator 1 view .LVU2997
|
||
8868 002c 0221 movs r1, #2
|
||
8869 002e 10A8 add r0, sp, #64
|
||
8870 .LVL1020:
|
||
4549:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8871 .loc 1 4549 27 discriminator 1 view .LVU2998
|
||
8872 0030 FFF7FEFF bl chk_lock
|
||
8873 .LVL1021:
|
||
4551:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) {
|
||
8874 .loc 1 4551 3 is_stmt 1 view .LVU2999
|
||
4551:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) {
|
||
8875 .loc 1 4551 6 is_stmt 0 view .LVU3000
|
||
8876 0034 0446 mov r4, r0
|
||
8877 0036 0028 cmp r0, #0
|
||
8878 0038 EED1 bne .L648
|
||
4552:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME; /* Cannot remove the origin directory */
|
||
8879 .loc 1 4552 4 is_stmt 1 view .LVU3001
|
||
4552:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME; /* Cannot remove the origin directory */
|
||
8880 .loc 1 4552 8 is_stmt 0 view .LVU3002
|
||
8881 003a 9DF96F30 ldrsb r3, [sp, #111]
|
||
4552:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME; /* Cannot remove the origin directory */
|
||
8882 .loc 1 4552 7 view .LVU3003
|
||
8883 003e 002B cmp r3, #0
|
||
8884 0040 3CDB blt .L652
|
||
4555:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED; /* Cannot remove R/O object */
|
||
8885 .loc 1 4555 5 is_stmt 1 view .LVU3004
|
||
4555:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED; /* Cannot remove R/O object */
|
||
8886 .loc 1 4555 15 is_stmt 0 view .LVU3005
|
||
8887 0042 9DF84650 ldrb r5, [sp, #70] @ zero_extendqisi2
|
||
4555:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED; /* Cannot remove R/O object */
|
||
8888 .loc 1 4555 8 view .LVU3006
|
||
8889 0046 15F0010F tst r5, #1
|
||
ARM GAS /tmp/ccH7dUYB.s page 307
|
||
|
||
|
||
8890 004a 39D1 bne .L653
|
||
8891 .LVL1022:
|
||
4559:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8892 .loc 1 4559 4 is_stmt 1 view .LVU3007
|
||
4569:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8893 .loc 1 4569 6 view .LVU3008
|
||
4569:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8894 .loc 1 4569 14 is_stmt 0 view .LVU3009
|
||
8895 004c 039F ldr r7, [sp, #12]
|
||
8896 004e 1899 ldr r1, [sp, #96]
|
||
8897 0050 3846 mov r0, r7
|
||
8898 0052 FFF7FEFF bl ld_clust
|
||
8899 .LVL1023:
|
||
8900 0056 0646 mov r6, r0
|
||
8901 .LVL1024:
|
||
4571:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
8902 .loc 1 4571 5 is_stmt 1 view .LVU3010
|
||
4571:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0
|
||
8903 .loc 1 4571 8 is_stmt 0 view .LVU3011
|
||
8904 0058 15F0100F tst r5, #16
|
||
8905 005c 13D1 bne .L657
|
||
8906 .LVL1025:
|
||
8907 .L649:
|
||
4595:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&dj); /* Remove the directory entry */
|
||
8908 .loc 1 4595 4 is_stmt 1 view .LVU3012
|
||
4595:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&dj); /* Remove the directory entry */
|
||
8909 .loc 1 4595 7 is_stmt 0 view .LVU3013
|
||
8910 005e 002C cmp r4, #0
|
||
8911 0060 DAD1 bne .L648
|
||
8912 .LVL1026:
|
||
8913 .L650:
|
||
4596:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dclst) { /* Remove the cluster chain if exist */
|
||
8914 .loc 1 4596 5 is_stmt 1 view .LVU3014
|
||
4596:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dclst) { /* Remove the cluster chain if exist */
|
||
8915 .loc 1 4596 11 is_stmt 0 view .LVU3015
|
||
8916 0062 10A8 add r0, sp, #64
|
||
8917 0064 FFF7FEFF bl dir_remove
|
||
8918 .LVL1027:
|
||
4597:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8919 .loc 1 4597 5 is_stmt 1 view .LVU3016
|
||
4597:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8920 .loc 1 4597 13 is_stmt 0 view .LVU3017
|
||
8921 0068 0446 mov r4, r0
|
||
4597:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8922 .loc 1 4597 22 view .LVU3018
|
||
8923 006a B0FA80F0 clz r0, r0
|
||
8924 .LVL1028:
|
||
4597:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8925 .loc 1 4597 22 view .LVU3019
|
||
8926 006e 4009 lsrs r0, r0, #5
|
||
8927 0070 002E cmp r6, #0
|
||
8928 0072 08BF it eq
|
||
8929 0074 0020 moveq r0, #0
|
||
4597:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8930 .loc 1 4597 8 view .LVU3020
|
||
8931 0076 D0B9 cbnz r0, .L658
|
||
8932 .LVL1029:
|
||
ARM GAS /tmp/ccH7dUYB.s page 308
|
||
|
||
|
||
8933 .L651:
|
||
4604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8934 .loc 1 4604 5 is_stmt 1 view .LVU3021
|
||
4604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8935 .loc 1 4604 8 is_stmt 0 view .LVU3022
|
||
8936 0078 002C cmp r4, #0
|
||
8937 007a CDD1 bne .L648
|
||
4604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8938 .loc 1 4604 23 is_stmt 1 discriminator 1 view .LVU3023
|
||
4604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8939 .loc 1 4604 29 is_stmt 0 discriminator 1 view .LVU3024
|
||
8940 007c 0398 ldr r0, [sp, #12]
|
||
8941 007e FFF7FEFF bl sync_fs
|
||
8942 .LVL1030:
|
||
8943 0082 0446 mov r4, r0
|
||
8944 .LVL1031:
|
||
4604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8945 .loc 1 4604 29 discriminator 1 view .LVU3025
|
||
8946 0084 C8E7 b .L648
|
||
8947 .LVL1032:
|
||
8948 .L657:
|
||
4578:Middlewares/Third_Party/FatFs/src/ff.c **** sdj.obj.sclust = dclst;
|
||
8949 .loc 1 4578 7 is_stmt 1 view .LVU3026
|
||
4578:Middlewares/Third_Party/FatFs/src/ff.c **** sdj.obj.sclust = dclst;
|
||
8950 .loc 1 4578 18 is_stmt 0 view .LVU3027
|
||
8951 0086 0497 str r7, [sp, #16]
|
||
4579:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8952 .loc 1 4579 7 is_stmt 1 view .LVU3028
|
||
4579:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
8953 .loc 1 4579 22 is_stmt 0 view .LVU3029
|
||
8954 0088 0690 str r0, [sp, #24]
|
||
4586:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8955 .loc 1 4586 7 is_stmt 1 view .LVU3030
|
||
4586:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8956 .loc 1 4586 13 is_stmt 0 view .LVU3031
|
||
8957 008a 0021 movs r1, #0
|
||
8958 008c 04A8 add r0, sp, #16
|
||
8959 .LVL1033:
|
||
4586:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
8960 .loc 1 4586 13 view .LVU3032
|
||
8961 008e FFF7FEFF bl dir_sdi
|
||
8962 .LVL1034:
|
||
4587:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(&sdj, 0); /* Read an item */
|
||
8963 .loc 1 4587 7 is_stmt 1 view .LVU3033
|
||
4587:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_read(&sdj, 0); /* Read an item */
|
||
8964 .loc 1 4587 10 is_stmt 0 view .LVU3034
|
||
8965 0092 0446 mov r4, r0
|
||
8966 0094 0028 cmp r0, #0
|
||
8967 0096 BFD1 bne .L648
|
||
4588:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_DENIED; /* Not empty? */
|
||
8968 .loc 1 4588 8 is_stmt 1 view .LVU3035
|
||
4588:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_DENIED; /* Not empty? */
|
||
8969 .loc 1 4588 14 is_stmt 0 view .LVU3036
|
||
8970 0098 0021 movs r1, #0
|
||
8971 009a 04A8 add r0, sp, #16
|
||
8972 .LVL1035:
|
||
4588:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_DENIED; /* Not empty? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 309
|
||
|
||
|
||
8973 .loc 1 4588 14 view .LVU3037
|
||
8974 009c FFF7FEFF bl dir_read
|
||
8975 .LVL1036:
|
||
4589:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Empty? */
|
||
8976 .loc 1 4589 8 is_stmt 1 view .LVU3038
|
||
4589:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Empty? */
|
||
8977 .loc 1 4589 11 is_stmt 0 view .LVU3039
|
||
8978 00a0 0446 mov r4, r0
|
||
8979 00a2 10B1 cbz r0, .L654
|
||
4590:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8980 .loc 1 4590 8 is_stmt 1 view .LVU3040
|
||
4590:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
8981 .loc 1 4590 11 is_stmt 0 view .LVU3041
|
||
8982 00a4 0428 cmp r0, #4
|
||
8983 00a6 DAD1 bne .L649
|
||
8984 00a8 DBE7 b .L650
|
||
8985 .L654:
|
||
4589:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Empty? */
|
||
8986 .loc 1 4589 30 discriminator 1 view .LVU3042
|
||
8987 00aa 0724 movs r4, #7
|
||
8988 00ac D7E7 b .L649
|
||
8989 .LVL1037:
|
||
8990 .L658:
|
||
4601:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8991 .loc 1 4601 6 is_stmt 1 view .LVU3043
|
||
4601:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
8992 .loc 1 4601 12 is_stmt 0 view .LVU3044
|
||
8993 00ae 0022 movs r2, #0
|
||
8994 00b0 3146 mov r1, r6
|
||
8995 00b2 10A8 add r0, sp, #64
|
||
8996 00b4 FFF7FEFF bl remove_chain
|
||
8997 .LVL1038:
|
||
8998 00b8 0446 mov r4, r0
|
||
8999 .LVL1039:
|
||
4601:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
9000 .loc 1 4601 12 view .LVU3045
|
||
9001 00ba DDE7 b .L651
|
||
9002 .LVL1040:
|
||
9003 .L652:
|
||
4553:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
9004 .loc 1 4553 9 view .LVU3046
|
||
9005 00bc 0624 movs r4, #6
|
||
9006 00be ABE7 b .L648
|
||
9007 .L653:
|
||
4556:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9008 .loc 1 4556 10 view .LVU3047
|
||
9009 00c0 0724 movs r4, #7
|
||
9010 00c2 A9E7 b .L648
|
||
9011 .cfi_endproc
|
||
9012 .LFE1234:
|
||
9014 .section .text.f_mkdir,"ax",%progbits
|
||
9015 .align 1
|
||
9016 .global f_mkdir
|
||
9017 .syntax unified
|
||
9018 .thumb
|
||
9019 .thumb_func
|
||
9021 f_mkdir:
|
||
ARM GAS /tmp/ccH7dUYB.s page 310
|
||
|
||
|
||
9022 .LVL1041:
|
||
9023 .LFB1235:
|
||
4623:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
9024 .loc 1 4623 1 is_stmt 1 view -0
|
||
9025 .cfi_startproc
|
||
9026 @ args = 0, pretend = 0, frame = 64
|
||
9027 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4623:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
9028 .loc 1 4623 1 is_stmt 0 view .LVU3049
|
||
9029 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
9030 .LCFI102:
|
||
9031 .cfi_def_cfa_offset 36
|
||
9032 .cfi_offset 4, -36
|
||
9033 .cfi_offset 5, -32
|
||
9034 .cfi_offset 6, -28
|
||
9035 .cfi_offset 7, -24
|
||
9036 .cfi_offset 8, -20
|
||
9037 .cfi_offset 9, -16
|
||
9038 .cfi_offset 10, -12
|
||
9039 .cfi_offset 11, -8
|
||
9040 .cfi_offset 14, -4
|
||
9041 0004 91B0 sub sp, sp, #68
|
||
9042 .LCFI103:
|
||
9043 .cfi_def_cfa_offset 104
|
||
9044 0006 0190 str r0, [sp, #4]
|
||
4624:Middlewares/Third_Party/FatFs/src/ff.c **** DIR dj;
|
||
9045 .loc 1 4624 2 is_stmt 1 view .LVU3050
|
||
4625:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
9046 .loc 1 4625 2 view .LVU3051
|
||
4626:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *dir;
|
||
9047 .loc 1 4626 2 view .LVU3052
|
||
4627:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n;
|
||
9048 .loc 1 4627 2 view .LVU3053
|
||
4628:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dsc, dcl, pcl, tm;
|
||
9049 .loc 1 4628 2 view .LVU3054
|
||
4629:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
9050 .loc 1 4629 2 view .LVU3055
|
||
4634:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
9051 .loc 1 4634 2 view .LVU3056
|
||
4634:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
9052 .loc 1 4634 8 is_stmt 0 view .LVU3057
|
||
9053 0008 0222 movs r2, #2
|
||
9054 000a 03A9 add r1, sp, #12
|
||
9055 000c 01A8 add r0, sp, #4
|
||
9056 .LVL1042:
|
||
4634:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs;
|
||
9057 .loc 1 4634 8 view .LVU3058
|
||
9058 000e FFF7FEFF bl find_volume
|
||
9059 .LVL1043:
|
||
4635:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9060 .loc 1 4635 2 is_stmt 1 view .LVU3059
|
||
4635:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9061 .loc 1 4635 12 is_stmt 0 view .LVU3060
|
||
9062 0012 039B ldr r3, [sp, #12]
|
||
9063 0014 0493 str r3, [sp, #16]
|
||
4636:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
9064 .loc 1 4636 2 is_stmt 1 view .LVU3061
|
||
ARM GAS /tmp/ccH7dUYB.s page 311
|
||
|
||
|
||
4636:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
9065 .loc 1 4636 5 is_stmt 0 view .LVU3062
|
||
9066 0016 0446 mov r4, r0
|
||
9067 0018 18B1 cbz r0, .L676
|
||
9068 .LVL1044:
|
||
9069 .L660:
|
||
4704:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9070 .loc 1 4704 16 is_stmt 1 view .LVU3063
|
||
4707:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9071 .loc 1 4707 2 view .LVU3064
|
||
4708:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9072 .loc 1 4708 1 is_stmt 0 view .LVU3065
|
||
9073 001a 2046 mov r0, r4
|
||
9074 001c 11B0 add sp, sp, #68
|
||
9075 .LCFI104:
|
||
9076 .cfi_remember_state
|
||
9077 .cfi_def_cfa_offset 36
|
||
9078 @ sp needed
|
||
9079 001e BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
9080 .LVL1045:
|
||
9081 .L676:
|
||
9082 .LCFI105:
|
||
9083 .cfi_restore_state
|
||
4637:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */
|
||
9084 .loc 1 4637 18 is_stmt 1 view .LVU3066
|
||
4638:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_EXIST; /* Any object with same name is already existing */
|
||
9085 .loc 1 4638 3 view .LVU3067
|
||
4638:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_EXIST; /* Any object with same name is already existing */
|
||
9086 .loc 1 4638 9 is_stmt 0 view .LVU3068
|
||
9087 0022 0199 ldr r1, [sp, #4]
|
||
9088 0024 04A8 add r0, sp, #16
|
||
9089 .LVL1046:
|
||
4638:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_EXIST; /* Any object with same name is already existing */
|
||
9090 .loc 1 4638 9 view .LVU3069
|
||
9091 0026 FFF7FEFF bl follow_path
|
||
9092 .LVL1047:
|
||
4639:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_NO_FILE && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
9093 .loc 1 4639 3 is_stmt 1 view .LVU3070
|
||
4639:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_NO_FILE && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
9094 .loc 1 4639 6 is_stmt 0 view .LVU3071
|
||
9095 002a 0028 cmp r0, #0
|
||
9096 002c 00F09780 beq .L669
|
||
4640:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INVALID_NAME;
|
||
9097 .loc 1 4640 3 is_stmt 1 view .LVU3072
|
||
4643:Middlewares/Third_Party/FatFs/src/ff.c **** dcl = create_chain(&dj.obj, 0); /* Allocate a cluster for the new directory table */
|
||
9098 .loc 1 4643 3 view .LVU3073
|
||
4643:Middlewares/Third_Party/FatFs/src/ff.c **** dcl = create_chain(&dj.obj, 0); /* Allocate a cluster for the new directory table */
|
||
9099 .loc 1 4643 6 is_stmt 0 view .LVU3074
|
||
9100 0030 0428 cmp r0, #4
|
||
9101 0032 01D0 beq .L677
|
||
9102 0034 0446 mov r4, r0
|
||
9103 0036 F0E7 b .L660
|
||
9104 .L677:
|
||
4644:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.objsize = (DWORD)fs->csize * SS(fs);
|
||
9105 .loc 1 4644 4 is_stmt 1 view .LVU3075
|
||
4644:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.objsize = (DWORD)fs->csize * SS(fs);
|
||
9106 .loc 1 4644 10 is_stmt 0 view .LVU3076
|
||
ARM GAS /tmp/ccH7dUYB.s page 312
|
||
|
||
|
||
9107 0038 0021 movs r1, #0
|
||
9108 003a 04A8 add r0, sp, #16
|
||
9109 .LVL1048:
|
||
4644:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.objsize = (DWORD)fs->csize * SS(fs);
|
||
9110 .loc 1 4644 10 view .LVU3077
|
||
9111 003c FFF7FEFF bl create_chain
|
||
9112 .LVL1049:
|
||
4645:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
9113 .loc 1 4645 4 is_stmt 1 view .LVU3078
|
||
4645:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
9114 .loc 1 4645 30 is_stmt 0 view .LVU3079
|
||
9115 0040 039A ldr r2, [sp, #12]
|
||
9116 0042 5389 ldrh r3, [r2, #10]
|
||
4645:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
9117 .loc 1 4645 40 view .LVU3080
|
||
9118 0044 9189 ldrh r1, [r2, #12]
|
||
4645:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
9119 .loc 1 4645 38 view .LVU3081
|
||
9120 0046 01FB03F3 mul r3, r1, r3
|
||
4645:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_OK;
|
||
9121 .loc 1 4645 19 view .LVU3082
|
||
9122 004a 0793 str r3, [sp, #28]
|
||
4646:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 0) res = FR_DENIED; /* No space to allocate a new cluster */
|
||
9123 .loc 1 4646 4 is_stmt 1 view .LVU3083
|
||
9124 .LVL1050:
|
||
4647:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 1) res = FR_INT_ERR;
|
||
9125 .loc 1 4647 4 view .LVU3084
|
||
4647:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 1) res = FR_INT_ERR;
|
||
9126 .loc 1 4647 7 is_stmt 0 view .LVU3085
|
||
9127 004c 8146 mov r9, r0
|
||
9128 004e 18B1 cbz r0, .L671
|
||
4648:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
9129 .loc 1 4648 4 is_stmt 1 view .LVU3086
|
||
4648:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
9130 .loc 1 4648 7 is_stmt 0 view .LVU3087
|
||
9131 0050 0128 cmp r0, #1
|
||
9132 0052 02D1 bne .L661
|
||
4648:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 0xFFFFFFFF) res = FR_DISK_ERR;
|
||
9133 .loc 1 4648 22 discriminator 1 view .LVU3088
|
||
9134 0054 0224 movs r4, #2
|
||
9135 0056 03E0 b .L662
|
||
9136 .L671:
|
||
4647:Middlewares/Third_Party/FatFs/src/ff.c **** if (dcl == 1) res = FR_INT_ERR;
|
||
9137 .loc 1 4647 22 discriminator 1 view .LVU3089
|
||
9138 0058 0724 movs r4, #7
|
||
9139 .L661:
|
||
9140 .LVL1051:
|
||
4649:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = sync_window(fs); /* Flush FAT */
|
||
9141 .loc 1 4649 4 is_stmt 1 view .LVU3090
|
||
4649:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = sync_window(fs); /* Flush FAT */
|
||
9142 .loc 1 4649 7 is_stmt 0 view .LVU3091
|
||
9143 005a B9F1FF3F cmp r9, #-1
|
||
9144 005e 55D0 beq .L678
|
||
9145 .LVL1052:
|
||
9146 .L662:
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
9147 .loc 1 4650 4 is_stmt 1 view .LVU3092
|
||
ARM GAS /tmp/ccH7dUYB.s page 313
|
||
|
||
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
9148 .loc 1 4650 7 is_stmt 0 view .LVU3093
|
||
9149 0060 002C cmp r4, #0
|
||
9150 0062 4ED0 beq .L679
|
||
9151 .LVL1053:
|
||
9152 .L663:
|
||
4651:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Initialize the new directory table */
|
||
9153 .loc 1 4651 4 is_stmt 1 view .LVU3094
|
||
4651:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Initialize the new directory table */
|
||
9154 .loc 1 4651 9 is_stmt 0 view .LVU3095
|
||
9155 0064 FFF7FEFF bl get_fattime
|
||
9156 .LVL1054:
|
||
9157 0068 8246 mov r10, r0
|
||
9158 .LVL1055:
|
||
4652:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, dcl);
|
||
9159 .loc 1 4652 4 is_stmt 1 view .LVU3096
|
||
4652:Middlewares/Third_Party/FatFs/src/ff.c **** dsc = clust2sect(fs, dcl);
|
||
9160 .loc 1 4652 7 is_stmt 0 view .LVU3097
|
||
9161 006a 002C cmp r4, #0
|
||
9162 006c 56D1 bne .L664
|
||
4653:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win;
|
||
9163 .loc 1 4653 5 is_stmt 1 view .LVU3098
|
||
4653:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win;
|
||
9164 .loc 1 4653 11 is_stmt 0 view .LVU3099
|
||
9165 006e 039E ldr r6, [sp, #12]
|
||
9166 0070 4946 mov r1, r9
|
||
9167 0072 3046 mov r0, r6
|
||
9168 .LVL1056:
|
||
4653:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win;
|
||
9169 .loc 1 4653 11 view .LVU3100
|
||
9170 0074 FFF7FEFF bl clust2sect
|
||
9171 .LVL1057:
|
||
9172 0078 0546 mov r5, r0
|
||
9173 .LVL1058:
|
||
4654:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir, 0, SS(fs));
|
||
9174 .loc 1 4654 5 is_stmt 1 view .LVU3101
|
||
4654:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir, 0, SS(fs));
|
||
9175 .loc 1 4654 9 is_stmt 0 view .LVU3102
|
||
9176 007a 06F13408 add r8, r6, #52
|
||
9177 .LVL1059:
|
||
4655:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
9178 .loc 1 4655 5 is_stmt 1 view .LVU3103
|
||
9179 007e B289 ldrh r2, [r6, #12]
|
||
9180 0080 0021 movs r1, #0
|
||
9181 0082 4046 mov r0, r8
|
||
9182 .LVL1060:
|
||
4655:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) {
|
||
9183 .loc 1 4655 5 is_stmt 0 view .LVU3104
|
||
9184 0084 FFF7FEFF bl mem_set
|
||
9185 .LVL1061:
|
||
4656:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir + DIR_Name, ' ', 11); /* Create "." entry */
|
||
9186 .loc 1 4656 5 is_stmt 1 view .LVU3105
|
||
4657:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Name] = '.';
|
||
9187 .loc 1 4657 6 view .LVU3106
|
||
9188 0088 0B22 movs r2, #11
|
||
9189 008a 2021 movs r1, #32
|
||
9190 008c 4046 mov r0, r8
|
||
ARM GAS /tmp/ccH7dUYB.s page 314
|
||
|
||
|
||
9191 008e FFF7FEFF bl mem_set
|
||
9192 .LVL1062:
|
||
4658:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = AM_DIR;
|
||
9193 .loc 1 4658 6 view .LVU3107
|
||
4658:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = AM_DIR;
|
||
9194 .loc 1 4658 20 is_stmt 0 view .LVU3108
|
||
9195 0092 4FF02E0B mov fp, #46
|
||
9196 0096 86F834B0 strb fp, [r6, #52]
|
||
4659:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm);
|
||
9197 .loc 1 4659 6 is_stmt 1 view .LVU3109
|
||
4659:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm);
|
||
9198 .loc 1 4659 20 is_stmt 0 view .LVU3110
|
||
9199 009a 1023 movs r3, #16
|
||
9200 009c 86F83F30 strb r3, [r6, #63]
|
||
4660:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, dcl);
|
||
9201 .loc 1 4660 6 is_stmt 1 view .LVU3111
|
||
9202 00a0 5146 mov r1, r10
|
||
9203 00a2 06F14A00 add r0, r6, #74
|
||
9204 00a6 FFF7FEFF bl st_dword
|
||
9205 .LVL1063:
|
||
4661:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dir + SZDIRE, dir, SZDIRE); /* Create ".." entry */
|
||
9206 .loc 1 4661 6 view .LVU3112
|
||
9207 00aa 4A46 mov r2, r9
|
||
9208 00ac 4146 mov r1, r8
|
||
9209 00ae 0398 ldr r0, [sp, #12]
|
||
9210 00b0 FFF7FEFF bl st_clust
|
||
9211 .LVL1064:
|
||
4662:Middlewares/Third_Party/FatFs/src/ff.c **** dir[SZDIRE + 1] = '.'; pcl = dj.obj.sclust;
|
||
9212 .loc 1 4662 6 view .LVU3113
|
||
4662:Middlewares/Third_Party/FatFs/src/ff.c **** dir[SZDIRE + 1] = '.'; pcl = dj.obj.sclust;
|
||
9213 .loc 1 4662 18 is_stmt 0 view .LVU3114
|
||
9214 00b4 06F15407 add r7, r6, #84
|
||
4662:Middlewares/Third_Party/FatFs/src/ff.c **** dir[SZDIRE + 1] = '.'; pcl = dj.obj.sclust;
|
||
9215 .loc 1 4662 6 view .LVU3115
|
||
9216 00b8 2022 movs r2, #32
|
||
9217 00ba 4146 mov r1, r8
|
||
9218 00bc 3846 mov r0, r7
|
||
9219 00be FFF7FEFF bl mem_cpy
|
||
9220 .LVL1065:
|
||
4663:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32 && pcl == fs->dirbase) pcl = 0;
|
||
9221 .loc 1 4663 6 is_stmt 1 view .LVU3116
|
||
4663:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32 && pcl == fs->dirbase) pcl = 0;
|
||
9222 .loc 1 4663 22 is_stmt 0 view .LVU3117
|
||
9223 00c2 86F855B0 strb fp, [r6, #85]
|
||
4663:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32 && pcl == fs->dirbase) pcl = 0;
|
||
9224 .loc 1 4663 29 is_stmt 1 view .LVU3118
|
||
4663:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_FAT32 && pcl == fs->dirbase) pcl = 0;
|
||
9225 .loc 1 4663 33 is_stmt 0 view .LVU3119
|
||
9226 00c6 069A ldr r2, [sp, #24]
|
||
9227 .LVL1066:
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
9228 .loc 1 4664 6 is_stmt 1 view .LVU3120
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
9229 .loc 1 4664 12 is_stmt 0 view .LVU3121
|
||
9230 00c8 0398 ldr r0, [sp, #12]
|
||
9231 00ca 0378 ldrb r3, [r0] @ zero_extendqisi2
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
ARM GAS /tmp/ccH7dUYB.s page 315
|
||
|
||
|
||
9232 .loc 1 4664 9 view .LVU3122
|
||
9233 00cc 032B cmp r3, #3
|
||
9234 00ce 1FD0 beq .L680
|
||
9235 .LVL1067:
|
||
9236 .L665:
|
||
4665:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9237 .loc 1 4665 6 is_stmt 1 view .LVU3123
|
||
9238 00d0 3946 mov r1, r7
|
||
9239 00d2 FFF7FEFF bl st_clust
|
||
9240 .LVL1068:
|
||
4667:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = dsc++;
|
||
9241 .loc 1 4667 5 view .LVU3124
|
||
4667:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = dsc++;
|
||
9242 .loc 1 4667 16 is_stmt 0 view .LVU3125
|
||
9243 00d6 039B ldr r3, [sp, #12]
|
||
9244 00d8 5E89 ldrh r6, [r3, #10]
|
||
9245 .LVL1069:
|
||
9246 .L666:
|
||
4667:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = dsc++;
|
||
9247 .loc 1 4667 25 is_stmt 1 discriminator 1 view .LVU3126
|
||
9248 00da F6B1 cbz r6, .L667
|
||
4668:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9249 .loc 1 4668 6 view .LVU3127
|
||
4668:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9250 .loc 1 4668 23 is_stmt 0 view .LVU3128
|
||
9251 00dc 6F1C adds r7, r5, #1
|
||
9252 .LVL1070:
|
||
4668:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9253 .loc 1 4668 8 view .LVU3129
|
||
9254 00de 039B ldr r3, [sp, #12]
|
||
4668:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9255 .loc 1 4668 18 view .LVU3130
|
||
9256 00e0 1D63 str r5, [r3, #48]
|
||
4669:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_window(fs);
|
||
9257 .loc 1 4669 6 is_stmt 1 view .LVU3131
|
||
4669:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_window(fs);
|
||
9258 .loc 1 4669 16 is_stmt 0 view .LVU3132
|
||
9259 00e2 0122 movs r2, #1
|
||
9260 00e4 DA70 strb r2, [r3, #3]
|
||
4670:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
9261 .loc 1 4670 6 is_stmt 1 view .LVU3133
|
||
4670:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break;
|
||
9262 .loc 1 4670 12 is_stmt 0 view .LVU3134
|
||
9263 00e6 0398 ldr r0, [sp, #12]
|
||
9264 00e8 FFF7FEFF bl sync_window
|
||
9265 .LVL1071:
|
||
4671:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir, 0, SS(fs));
|
||
9266 .loc 1 4671 6 is_stmt 1 view .LVU3135
|
||
4671:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(dir, 0, SS(fs));
|
||
9267 .loc 1 4671 9 is_stmt 0 view .LVU3136
|
||
9268 00ec 0446 mov r4, r0
|
||
9269 00ee A0B9 cbnz r0, .L667
|
||
4672:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9270 .loc 1 4672 6 is_stmt 1 view .LVU3137
|
||
9271 00f0 039B ldr r3, [sp, #12]
|
||
9272 00f2 9A89 ldrh r2, [r3, #12]
|
||
9273 00f4 0021 movs r1, #0
|
||
ARM GAS /tmp/ccH7dUYB.s page 316
|
||
|
||
|
||
9274 00f6 4046 mov r0, r8
|
||
9275 .LVL1072:
|
||
4672:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9276 .loc 1 4672 6 is_stmt 0 view .LVU3138
|
||
9277 00f8 FFF7FEFF bl mem_set
|
||
9278 .LVL1073:
|
||
4667:Middlewares/Third_Party/FatFs/src/ff.c **** fs->winsect = dsc++;
|
||
9279 .loc 1 4667 29 is_stmt 1 discriminator 2 view .LVU3139
|
||
9280 00fc 013E subs r6, r6, #1
|
||
9281 .LVL1074:
|
||
4668:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9282 .loc 1 4668 23 is_stmt 0 view .LVU3140
|
||
9283 00fe 3D46 mov r5, r7
|
||
9284 0100 EBE7 b .L666
|
||
9285 .LVL1075:
|
||
9286 .L679:
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
9287 .loc 1 4650 22 is_stmt 1 discriminator 1 view .LVU3141
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
9288 .loc 1 4650 28 is_stmt 0 discriminator 1 view .LVU3142
|
||
9289 0102 1046 mov r0, r2
|
||
9290 .LVL1076:
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
9291 .loc 1 4650 28 discriminator 1 view .LVU3143
|
||
9292 0104 FFF7FEFF bl sync_window
|
||
9293 .LVL1077:
|
||
9294 0108 0446 mov r4, r0
|
||
9295 .LVL1078:
|
||
4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME();
|
||
9296 .loc 1 4650 28 discriminator 1 view .LVU3144
|
||
9297 010a ABE7 b .L663
|
||
9298 .LVL1079:
|
||
9299 .L678:
|
||
4649:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = sync_window(fs); /* Flush FAT */
|
||
9300 .loc 1 4649 31 discriminator 1 view .LVU3145
|
||
9301 010c 0124 movs r4, #1
|
||
9302 .LVL1080:
|
||
4649:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = sync_window(fs); /* Flush FAT */
|
||
9303 .loc 1 4649 31 discriminator 1 view .LVU3146
|
||
9304 010e A9E7 b .L663
|
||
9305 .LVL1081:
|
||
9306 .L680:
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
9307 .loc 1 4664 46 discriminator 1 view .LVU3147
|
||
9308 0110 836A ldr r3, [r0, #40]
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
9309 .loc 1 4664 34 discriminator 1 view .LVU3148
|
||
9310 0112 9342 cmp r3, r2
|
||
9311 0114 DCD1 bne .L665
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
9312 .loc 1 4664 61 discriminator 2 view .LVU3149
|
||
9313 0116 0022 movs r2, #0
|
||
9314 .LVL1082:
|
||
4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl);
|
||
9315 .loc 1 4664 61 discriminator 2 view .LVU3150
|
||
9316 0118 DAE7 b .L665
|
||
9317 .LVL1083:
|
||
ARM GAS /tmp/ccH7dUYB.s page 317
|
||
|
||
|
||
9318 .L667:
|
||
4675:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&dj); /* Register the object to the directoy */
|
||
9319 .loc 1 4675 4 is_stmt 1 view .LVU3151
|
||
4675:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&dj); /* Register the object to the directoy */
|
||
9320 .loc 1 4675 7 is_stmt 0 view .LVU3152
|
||
9321 011a 2CB1 cbz r4, .L681
|
||
9322 .LVL1084:
|
||
9323 .L664:
|
||
4701:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9324 .loc 1 4701 5 is_stmt 1 view .LVU3153
|
||
9325 011c 0022 movs r2, #0
|
||
9326 011e 4946 mov r1, r9
|
||
9327 0120 04A8 add r0, sp, #16
|
||
9328 0122 FFF7FEFF bl remove_chain
|
||
9329 .LVL1085:
|
||
9330 0126 78E7 b .L660
|
||
9331 .LVL1086:
|
||
9332 .L681:
|
||
4676:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9333 .loc 1 4676 5 view .LVU3154
|
||
4676:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9334 .loc 1 4676 11 is_stmt 0 view .LVU3155
|
||
9335 0128 04A8 add r0, sp, #16
|
||
9336 012a FFF7FEFF bl dir_register
|
||
9337 .LVL1087:
|
||
4678:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
9338 .loc 1 4678 4 is_stmt 1 view .LVU3156
|
||
4678:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
9339 .loc 1 4678 7 is_stmt 0 view .LVU3157
|
||
9340 012e 0446 mov r4, r0
|
||
9341 0130 0028 cmp r0, #0
|
||
9342 0132 F3D1 bne .L664
|
||
4691:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm); /* Created time */
|
||
9343 .loc 1 4691 6 is_stmt 1 view .LVU3158
|
||
4691:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dir + DIR_ModTime, tm); /* Created time */
|
||
9344 .loc 1 4691 10 is_stmt 0 view .LVU3159
|
||
9345 0134 0C9C ldr r4, [sp, #48]
|
||
9346 .LVL1088:
|
||
4692:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, dcl); /* Table start cluster */
|
||
9347 .loc 1 4692 6 is_stmt 1 view .LVU3160
|
||
9348 0136 5146 mov r1, r10
|
||
9349 0138 04F11600 add r0, r4, #22
|
||
9350 .LVL1089:
|
||
4692:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, dcl); /* Table start cluster */
|
||
9351 .loc 1 4692 6 is_stmt 0 view .LVU3161
|
||
9352 013c FFF7FEFF bl st_dword
|
||
9353 .LVL1090:
|
||
4693:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = AM_DIR; /* Attribute */
|
||
9354 .loc 1 4693 6 is_stmt 1 view .LVU3162
|
||
9355 0140 4A46 mov r2, r9
|
||
9356 0142 2146 mov r1, r4
|
||
9357 0144 0398 ldr r0, [sp, #12]
|
||
9358 0146 FFF7FEFF bl st_clust
|
||
9359 .LVL1091:
|
||
4694:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9360 .loc 1 4694 6 view .LVU3163
|
||
4694:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
ARM GAS /tmp/ccH7dUYB.s page 318
|
||
|
||
|
||
9361 .loc 1 4694 20 is_stmt 0 view .LVU3164
|
||
9362 014a 1023 movs r3, #16
|
||
9363 014c E372 strb r3, [r4, #11]
|
||
4695:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9364 .loc 1 4695 6 is_stmt 1 view .LVU3165
|
||
4695:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9365 .loc 1 4695 16 is_stmt 0 view .LVU3166
|
||
9366 014e 039B ldr r3, [sp, #12]
|
||
9367 0150 0122 movs r2, #1
|
||
9368 0152 DA70 strb r2, [r3, #3]
|
||
4697:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
9369 .loc 1 4697 5 is_stmt 1 view .LVU3167
|
||
4698:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9370 .loc 1 4698 6 view .LVU3168
|
||
4698:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9371 .loc 1 4698 12 is_stmt 0 view .LVU3169
|
||
9372 0154 0398 ldr r0, [sp, #12]
|
||
9373 0156 FFF7FEFF bl sync_fs
|
||
9374 .LVL1092:
|
||
9375 015a 0446 mov r4, r0
|
||
9376 .LVL1093:
|
||
4698:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9377 .loc 1 4698 12 view .LVU3170
|
||
9378 015c 5DE7 b .L660
|
||
9379 .LVL1094:
|
||
9380 .L669:
|
||
4639:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_RPATH && res == FR_NO_FILE && (dj.fn[NSFLAG] & NS_DOT)) {
|
||
9381 .loc 1 4639 25 discriminator 1 view .LVU3171
|
||
9382 015e 0824 movs r4, #8
|
||
9383 0160 5BE7 b .L660
|
||
9384 .cfi_endproc
|
||
9385 .LFE1235:
|
||
9387 .section .text.f_rename,"ax",%progbits
|
||
9388 .align 1
|
||
9389 .global f_rename
|
||
9390 .syntax unified
|
||
9391 .thumb
|
||
9392 .thumb_func
|
||
9394 f_rename:
|
||
9395 .LVL1095:
|
||
9396 .LFB1236:
|
||
4721:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
9397 .loc 1 4721 1 is_stmt 1 view -0
|
||
9398 .cfi_startproc
|
||
9399 @ args = 0, pretend = 0, frame = 136
|
||
9400 @ frame_needed = 0, uses_anonymous_args = 0
|
||
4721:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res;
|
||
9401 .loc 1 4721 1 is_stmt 0 view .LVU3173
|
||
9402 0000 30B5 push {r4, r5, lr}
|
||
9403 .LCFI106:
|
||
9404 .cfi_def_cfa_offset 12
|
||
9405 .cfi_offset 4, -12
|
||
9406 .cfi_offset 5, -8
|
||
9407 .cfi_offset 14, -4
|
||
9408 0002 A3B0 sub sp, sp, #140
|
||
9409 .LCFI107:
|
||
9410 .cfi_def_cfa_offset 152
|
||
ARM GAS /tmp/ccH7dUYB.s page 319
|
||
|
||
|
||
9411 0004 0190 str r0, [sp, #4]
|
||
9412 0006 0091 str r1, [sp]
|
||
4722:Middlewares/Third_Party/FatFs/src/ff.c **** DIR djo, djn;
|
||
9413 .loc 1 4722 2 is_stmt 1 view .LVU3174
|
||
4723:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS *fs;
|
||
9414 .loc 1 4723 2 view .LVU3175
|
||
4724:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE buf[_FS_EXFAT ? SZDIRE * 2 : 24], *dir;
|
||
9415 .loc 1 4724 2 view .LVU3176
|
||
4725:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dw;
|
||
9416 .loc 1 4725 2 view .LVU3177
|
||
4726:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF
|
||
9417 .loc 1 4726 2 view .LVU3178
|
||
4730:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path_old, &fs, FA_WRITE); /* Get logical drive of the old object */
|
||
9418 .loc 1 4730 2 view .LVU3179
|
||
9419 0008 6846 mov r0, sp
|
||
9420 .LVL1096:
|
||
4730:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path_old, &fs, FA_WRITE); /* Get logical drive of the old object */
|
||
9421 .loc 1 4730 2 is_stmt 0 view .LVU3180
|
||
9422 000a FFF7FEFF bl get_ldnumber
|
||
9423 .LVL1097:
|
||
4731:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9424 .loc 1 4731 2 is_stmt 1 view .LVU3181
|
||
4731:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9425 .loc 1 4731 8 is_stmt 0 view .LVU3182
|
||
9426 000e 0222 movs r2, #2
|
||
9427 0010 09A9 add r1, sp, #36
|
||
9428 0012 01A8 add r0, sp, #4
|
||
9429 0014 FFF7FEFF bl find_volume
|
||
9430 .LVL1098:
|
||
4732:Middlewares/Third_Party/FatFs/src/ff.c **** djo.obj.fs = fs;
|
||
9431 .loc 1 4732 2 is_stmt 1 view .LVU3183
|
||
4732:Middlewares/Third_Party/FatFs/src/ff.c **** djo.obj.fs = fs;
|
||
9432 .loc 1 4732 5 is_stmt 0 view .LVU3184
|
||
9433 0018 0446 mov r4, r0
|
||
9434 001a 10B1 cbz r0, .L692
|
||
9435 .LVL1099:
|
||
9436 .L683:
|
||
4807:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9437 .loc 1 4807 16 is_stmt 1 view .LVU3185
|
||
4810:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9438 .loc 1 4810 2 view .LVU3186
|
||
4811:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9439 .loc 1 4811 1 is_stmt 0 view .LVU3187
|
||
9440 001c 2046 mov r0, r4
|
||
9441 001e 23B0 add sp, sp, #140
|
||
9442 .LCFI108:
|
||
9443 .cfi_remember_state
|
||
9444 .cfi_def_cfa_offset 12
|
||
9445 @ sp needed
|
||
9446 0020 30BD pop {r4, r5, pc}
|
||
9447 .LVL1100:
|
||
9448 .L692:
|
||
9449 .LCFI109:
|
||
9450 .cfi_restore_state
|
||
4733:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
9451 .loc 1 4733 3 is_stmt 1 view .LVU3188
|
||
4733:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs);
|
||
ARM GAS /tmp/ccH7dUYB.s page 320
|
||
|
||
|
||
9452 .loc 1 4733 14 is_stmt 0 view .LVU3189
|
||
9453 0022 099B ldr r3, [sp, #36]
|
||
9454 0024 1693 str r3, [sp, #88]
|
||
4734:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&djo, path_old); /* Check old object */
|
||
9455 .loc 1 4734 18 is_stmt 1 view .LVU3190
|
||
4735:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (djo.fn[NSFLAG] & (NS_DOT | NS_NONAME))) res = FR_INVALID_NAME; /* Check vali
|
||
9456 .loc 1 4735 3 view .LVU3191
|
||
4735:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (djo.fn[NSFLAG] & (NS_DOT | NS_NONAME))) res = FR_INVALID_NAME; /* Check vali
|
||
9457 .loc 1 4735 9 is_stmt 0 view .LVU3192
|
||
9458 0026 0199 ldr r1, [sp, #4]
|
||
9459 0028 16A8 add r0, sp, #88
|
||
9460 .LVL1101:
|
||
4735:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && (djo.fn[NSFLAG] & (NS_DOT | NS_NONAME))) res = FR_INVALID_NAME; /* Check vali
|
||
9461 .loc 1 4735 9 view .LVU3193
|
||
9462 002a FFF7FEFF bl follow_path
|
||
9463 .LVL1102:
|
||
4736:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
9464 .loc 1 4736 3 is_stmt 1 view .LVU3194
|
||
4736:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
9465 .loc 1 4736 6 is_stmt 0 view .LVU3195
|
||
9466 002e 0446 mov r4, r0
|
||
9467 0030 48B9 cbnz r0, .L684
|
||
4736:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
9468 .loc 1 4736 30 discriminator 1 view .LVU3196
|
||
9469 0032 9DF88730 ldrb r3, [sp, #135] @ zero_extendqisi2
|
||
4736:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_LOCK != 0
|
||
9470 .loc 1 4736 20 discriminator 1 view .LVU3197
|
||
9471 0036 13F0A00F tst r3, #160
|
||
9472 003a 72D1 bne .L688
|
||
4738:Middlewares/Third_Party/FatFs/src/ff.c **** res = chk_lock(&djo, 2);
|
||
9473 .loc 1 4738 3 is_stmt 1 view .LVU3198
|
||
4739:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9474 .loc 1 4739 4 view .LVU3199
|
||
4739:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9475 .loc 1 4739 10 is_stmt 0 view .LVU3200
|
||
9476 003c 0221 movs r1, #2
|
||
9477 003e 16A8 add r0, sp, #88
|
||
9478 .LVL1103:
|
||
4739:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9479 .loc 1 4739 10 view .LVU3201
|
||
9480 0040 FFF7FEFF bl chk_lock
|
||
9481 .LVL1104:
|
||
9482 0044 0446 mov r4, r0
|
||
9483 .LVL1105:
|
||
9484 .L684:
|
||
4742:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
9485 .loc 1 4742 3 is_stmt 1 view .LVU3202
|
||
4742:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT
|
||
9486 .loc 1 4742 6 is_stmt 0 view .LVU3203
|
||
9487 0046 002C cmp r4, #0
|
||
9488 0048 E8D1 bne .L683
|
||
4769:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(&djn, &djo, sizeof (DIR)); /* Duplicate the directory object */
|
||
9489 .loc 1 4769 5 is_stmt 1 view .LVU3204
|
||
9490 004a 1522 movs r2, #21
|
||
9491 004c 1E99 ldr r1, [sp, #120]
|
||
9492 004e 0B31 adds r1, r1, #11
|
||
9493 0050 03A8 add r0, sp, #12
|
||
ARM GAS /tmp/ccH7dUYB.s page 321
|
||
|
||
|
||
9494 0052 FFF7FEFF bl mem_cpy
|
||
9495 .LVL1106:
|
||
4770:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&djn, path_new); /* Make sure if new object name is not in use */
|
||
9496 .loc 1 4770 5 view .LVU3205
|
||
9497 0056 3022 movs r2, #48
|
||
9498 0058 16A9 add r1, sp, #88
|
||
9499 005a 0AA8 add r0, sp, #40
|
||
9500 005c FFF7FEFF bl mem_cpy
|
||
9501 .LVL1107:
|
||
4771:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Is new name already in use by any other object? */
|
||
9502 .loc 1 4771 5 view .LVU3206
|
||
4771:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Is new name already in use by any other object? */
|
||
9503 .loc 1 4771 11 is_stmt 0 view .LVU3207
|
||
9504 0060 0099 ldr r1, [sp]
|
||
9505 0062 0AA8 add r0, sp, #40
|
||
9506 0064 FFF7FEFF bl follow_path
|
||
9507 .LVL1108:
|
||
4772:Middlewares/Third_Party/FatFs/src/ff.c **** res = (djn.obj.sclust == djo.obj.sclust && djn.dptr == djo.dptr) ? FR_NO_FILE : FR_EXIST;
|
||
9508 .loc 1 4772 5 is_stmt 1 view .LVU3208
|
||
4772:Middlewares/Third_Party/FatFs/src/ff.c **** res = (djn.obj.sclust == djo.obj.sclust && djn.dptr == djo.dptr) ? FR_NO_FILE : FR_EXIST;
|
||
9509 .loc 1 4772 8 is_stmt 0 view .LVU3209
|
||
9510 0068 0446 mov r4, r0
|
||
9511 006a 58B9 cbnz r0, .L685
|
||
4773:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9512 .loc 1 4773 6 is_stmt 1 view .LVU3210
|
||
4773:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9513 .loc 1 4773 84 is_stmt 0 view .LVU3211
|
||
9514 006c 0C9A ldr r2, [sp, #48]
|
||
9515 006e 189B ldr r3, [sp, #96]
|
||
9516 0070 9A42 cmp r2, r3
|
||
9517 0072 01D0 beq .L693
|
||
9518 .LVL1109:
|
||
4773:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9519 .loc 1 4773 10 discriminator 6 view .LVU3212
|
||
9520 0074 0824 movs r4, #8
|
||
9521 0076 07E0 b .L686
|
||
9522 .LVL1110:
|
||
9523 .L693:
|
||
4773:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9524 .loc 1 4773 46 discriminator 1 view .LVU3213
|
||
9525 0078 0F9A ldr r2, [sp, #60]
|
||
9526 007a 1B9B ldr r3, [sp, #108]
|
||
9527 007c 9A42 cmp r2, r3
|
||
9528 007e 10D0 beq .L687
|
||
9529 .LVL1111:
|
||
4773:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9530 .loc 1 4773 10 discriminator 6 view .LVU3214
|
||
9531 0080 0824 movs r4, #8
|
||
9532 0082 01E0 b .L686
|
||
9533 .LVL1112:
|
||
9534 .L685:
|
||
4775:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&djn); /* Register the new entry */
|
||
9535 .loc 1 4775 5 is_stmt 1 view .LVU3215
|
||
4775:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_register(&djn); /* Register the new entry */
|
||
9536 .loc 1 4775 8 is_stmt 0 view .LVU3216
|
||
9537 0084 0428 cmp r0, #4
|
||
9538 0086 0CD0 beq .L687
|
||
ARM GAS /tmp/ccH7dUYB.s page 322
|
||
|
||
|
||
9539 .LVL1113:
|
||
9540 .L686:
|
||
4799:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&djo); /* Remove old entry */
|
||
9541 .loc 1 4799 4 is_stmt 1 view .LVU3217
|
||
4799:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&djo); /* Remove old entry */
|
||
9542 .loc 1 4799 7 is_stmt 0 view .LVU3218
|
||
9543 0088 002C cmp r4, #0
|
||
9544 008a C7D1 bne .L683
|
||
4800:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9545 .loc 1 4800 5 is_stmt 1 view .LVU3219
|
||
4800:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9546 .loc 1 4800 11 is_stmt 0 view .LVU3220
|
||
9547 008c 16A8 add r0, sp, #88
|
||
9548 008e FFF7FEFF bl dir_remove
|
||
9549 .LVL1114:
|
||
4801:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
9550 .loc 1 4801 5 is_stmt 1 view .LVU3221
|
||
4801:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs);
|
||
9551 .loc 1 4801 8 is_stmt 0 view .LVU3222
|
||
9552 0092 0446 mov r4, r0
|
||
9553 0094 0028 cmp r0, #0
|
||
9554 0096 C1D1 bne .L683
|
||
4802:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9555 .loc 1 4802 6 is_stmt 1 view .LVU3223
|
||
4802:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9556 .loc 1 4802 12 is_stmt 0 view .LVU3224
|
||
9557 0098 0998 ldr r0, [sp, #36]
|
||
9558 .LVL1115:
|
||
4802:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9559 .loc 1 4802 12 view .LVU3225
|
||
9560 009a FFF7FEFF bl sync_fs
|
||
9561 .LVL1116:
|
||
9562 009e 0446 mov r4, r0
|
||
9563 .LVL1117:
|
||
4802:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9564 .loc 1 4802 12 view .LVU3226
|
||
9565 00a0 BCE7 b .L683
|
||
9566 .LVL1118:
|
||
9567 .L687:
|
||
4776:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9568 .loc 1 4776 6 is_stmt 1 view .LVU3227
|
||
4776:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) {
|
||
9569 .loc 1 4776 12 is_stmt 0 view .LVU3228
|
||
9570 00a2 0AA8 add r0, sp, #40
|
||
9571 00a4 FFF7FEFF bl dir_register
|
||
9572 .LVL1119:
|
||
4777:Middlewares/Third_Party/FatFs/src/ff.c **** dir = djn.dir; /* Copy information about object except name */
|
||
9573 .loc 1 4777 6 is_stmt 1 view .LVU3229
|
||
4777:Middlewares/Third_Party/FatFs/src/ff.c **** dir = djn.dir; /* Copy information about object except name */
|
||
9574 .loc 1 4777 9 is_stmt 0 view .LVU3230
|
||
9575 00a8 0446 mov r4, r0
|
||
9576 00aa 0028 cmp r0, #0
|
||
9577 00ac B6D1 bne .L683
|
||
4778:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dir + 13, buf + 2, 19);
|
||
9578 .loc 1 4778 7 is_stmt 1 view .LVU3231
|
||
4778:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dir + 13, buf + 2, 19);
|
||
9579 .loc 1 4778 11 is_stmt 0 view .LVU3232
|
||
ARM GAS /tmp/ccH7dUYB.s page 323
|
||
|
||
|
||
9580 00ae 129D ldr r5, [sp, #72]
|
||
9581 .LVL1120:
|
||
4779:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = buf[0] | AM_ARC;
|
||
9582 .loc 1 4779 7 is_stmt 1 view .LVU3233
|
||
9583 00b0 1322 movs r2, #19
|
||
9584 00b2 0DF10E01 add r1, sp, #14
|
||
9585 00b6 05F10D00 add r0, r5, #13
|
||
9586 .LVL1121:
|
||
4779:Middlewares/Third_Party/FatFs/src/ff.c **** dir[DIR_Attr] = buf[0] | AM_ARC;
|
||
9587 .loc 1 4779 7 is_stmt 0 view .LVU3234
|
||
9588 00ba FFF7FEFF bl mem_cpy
|
||
9589 .LVL1122:
|
||
4780:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9590 .loc 1 4780 7 is_stmt 1 view .LVU3235
|
||
4780:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9591 .loc 1 4780 26 is_stmt 0 view .LVU3236
|
||
9592 00be 9DF80C30 ldrb r3, [sp, #12] @ zero_extendqisi2
|
||
4780:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9593 .loc 1 4780 21 view .LVU3237
|
||
9594 00c2 43F02003 orr r3, r3, #32
|
||
9595 00c6 EB72 strb r3, [r5, #11]
|
||
4781:Middlewares/Third_Party/FatFs/src/ff.c **** if ((dir[DIR_Attr] & AM_DIR) && djo.obj.sclust != djn.obj.sclust) { /* Update .. entry in the
|
||
9596 .loc 1 4781 7 is_stmt 1 view .LVU3238
|
||
4781:Middlewares/Third_Party/FatFs/src/ff.c **** if ((dir[DIR_Attr] & AM_DIR) && djo.obj.sclust != djn.obj.sclust) { /* Update .. entry in the
|
||
9597 .loc 1 4781 17 is_stmt 0 view .LVU3239
|
||
9598 00c8 099B ldr r3, [sp, #36]
|
||
9599 00ca 0122 movs r2, #1
|
||
9600 00cc DA70 strb r2, [r3, #3]
|
||
4782:Middlewares/Third_Party/FatFs/src/ff.c **** dw = clust2sect(fs, ld_clust(fs, dir));
|
||
9601 .loc 1 4782 7 is_stmt 1 view .LVU3240
|
||
4782:Middlewares/Third_Party/FatFs/src/ff.c **** dw = clust2sect(fs, ld_clust(fs, dir));
|
||
9602 .loc 1 4782 15 is_stmt 0 view .LVU3241
|
||
9603 00ce EB7A ldrb r3, [r5, #11] @ zero_extendqisi2
|
||
4782:Middlewares/Third_Party/FatFs/src/ff.c **** dw = clust2sect(fs, ld_clust(fs, dir));
|
||
9604 .loc 1 4782 10 view .LVU3242
|
||
9605 00d0 13F0100F tst r3, #16
|
||
9606 00d4 D8D0 beq .L686
|
||
4782:Middlewares/Third_Party/FatFs/src/ff.c **** dw = clust2sect(fs, ld_clust(fs, dir));
|
||
9607 .loc 1 4782 36 discriminator 1 view .LVU3243
|
||
9608 00d6 189A ldr r2, [sp, #96]
|
||
9609 00d8 0C9B ldr r3, [sp, #48]
|
||
9610 00da 9A42 cmp r2, r3
|
||
9611 00dc D4D0 beq .L686
|
||
4783:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dw) {
|
||
9612 .loc 1 4783 8 is_stmt 1 view .LVU3244
|
||
4783:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dw) {
|
||
9613 .loc 1 4783 13 is_stmt 0 view .LVU3245
|
||
9614 00de 099C ldr r4, [sp, #36]
|
||
9615 .LVL1123:
|
||
4783:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dw) {
|
||
9616 .loc 1 4783 13 view .LVU3246
|
||
9617 00e0 2946 mov r1, r5
|
||
9618 00e2 2046 mov r0, r4
|
||
9619 00e4 FFF7FEFF bl ld_clust
|
||
9620 .LVL1124:
|
||
9621 00e8 0146 mov r1, r0
|
||
4783:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dw) {
|
||
ARM GAS /tmp/ccH7dUYB.s page 324
|
||
|
||
|
||
9622 .loc 1 4783 13 discriminator 1 view .LVU3247
|
||
9623 00ea 2046 mov r0, r4
|
||
9624 00ec FFF7FEFF bl clust2sect
|
||
9625 .LVL1125:
|
||
4784:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
9626 .loc 1 4784 8 is_stmt 1 view .LVU3248
|
||
4784:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_INT_ERR;
|
||
9627 .loc 1 4784 11 is_stmt 0 view .LVU3249
|
||
9628 00f0 0146 mov r1, r0
|
||
9629 00f2 08B9 cbnz r0, .L694
|
||
9630 .LVL1126:
|
||
4785:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
9631 .loc 1 4785 13 view .LVU3250
|
||
9632 00f4 0224 movs r4, #2
|
||
9633 00f6 91E7 b .L683
|
||
9634 .LVL1127:
|
||
9635 .L694:
|
||
4788:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win + SZDIRE * 1; /* Ptr to .. entry */
|
||
9636 .loc 1 4788 9 is_stmt 1 view .LVU3251
|
||
4788:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win + SZDIRE * 1; /* Ptr to .. entry */
|
||
9637 .loc 1 4788 15 is_stmt 0 view .LVU3252
|
||
9638 00f8 2046 mov r0, r4
|
||
9639 .LVL1128:
|
||
4788:Middlewares/Third_Party/FatFs/src/ff.c **** dir = fs->win + SZDIRE * 1; /* Ptr to .. entry */
|
||
9640 .loc 1 4788 15 view .LVU3253
|
||
9641 00fa FFF7FEFF bl move_window
|
||
9642 .LVL1129:
|
||
4789:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dir[1] == '.') {
|
||
9643 .loc 1 4789 9 is_stmt 1 view .LVU3254
|
||
4789:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dir[1] == '.') {
|
||
9644 .loc 1 4789 17 is_stmt 0 view .LVU3255
|
||
9645 00fe 099B ldr r3, [sp, #36]
|
||
4789:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && dir[1] == '.') {
|
||
9646 .loc 1 4789 13 view .LVU3256
|
||
9647 0100 03F15401 add r1, r3, #84
|
||
9648 .LVL1130:
|
||
4790:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, djn.obj.sclust);
|
||
9649 .loc 1 4790 9 is_stmt 1 view .LVU3257
|
||
4790:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, djn.obj.sclust);
|
||
9650 .loc 1 4790 12 is_stmt 0 view .LVU3258
|
||
9651 0104 0446 mov r4, r0
|
||
9652 0106 0028 cmp r0, #0
|
||
9653 0108 88D1 bne .L683
|
||
4790:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, djn.obj.sclust);
|
||
9654 .loc 1 4790 32 discriminator 1 view .LVU3259
|
||
9655 010a 93F85520 ldrb r2, [r3, #85] @ zero_extendqisi2
|
||
4790:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir, djn.obj.sclust);
|
||
9656 .loc 1 4790 26 discriminator 1 view .LVU3260
|
||
9657 010e 2E2A cmp r2, #46
|
||
9658 0110 BAD1 bne .L686
|
||
4791:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9659 .loc 1 4791 10 is_stmt 1 view .LVU3261
|
||
9660 0112 0C9A ldr r2, [sp, #48]
|
||
9661 0114 1846 mov r0, r3
|
||
9662 .LVL1131:
|
||
4791:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1;
|
||
9663 .loc 1 4791 10 is_stmt 0 view .LVU3262
|
||
ARM GAS /tmp/ccH7dUYB.s page 325
|
||
|
||
|
||
9664 0116 FFF7FEFF bl st_clust
|
||
9665 .LVL1132:
|
||
4792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9666 .loc 1 4792 10 is_stmt 1 view .LVU3263
|
||
4792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9667 .loc 1 4792 20 is_stmt 0 view .LVU3264
|
||
9668 011a 099B ldr r3, [sp, #36]
|
||
9669 011c 0122 movs r2, #1
|
||
9670 011e DA70 strb r2, [r3, #3]
|
||
9671 0120 B2E7 b .L686
|
||
9672 .LVL1133:
|
||
9673 .L688:
|
||
4792:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9674 .loc 1 4792 20 view .LVU3265
|
||
9675 0122 0624 movs r4, #6
|
||
9676 0124 7AE7 b .L683
|
||
9677 .cfi_endproc
|
||
9678 .LFE1236:
|
||
9680 .section .rodata.f_mkfs.str1.4,"aMS",%progbits,1
|
||
9681 .align 2
|
||
9682 .LC1:
|
||
9683 0000 EBFE904D .ascii "\353\376\220MSDOS5.0\000"
|
||
9683 53444F53
|
||
9683 352E3000
|
||
9684 .align 2
|
||
9685 .LC2:
|
||
9686 000c 4E4F204E .ascii "NO NAME FAT32 \000"
|
||
9686 414D4520
|
||
9686 20202046
|
||
9686 41543332
|
||
9686 20202000
|
||
9687 .align 2
|
||
9688 .LC3:
|
||
9689 0020 4E4F204E .ascii "NO NAME FAT \000"
|
||
9689 414D4520
|
||
9689 20202046
|
||
9689 41542020
|
||
9689 20202000
|
||
9690 .section .text.f_mkfs,"ax",%progbits
|
||
9691 .align 1
|
||
9692 .global f_mkfs
|
||
9693 .syntax unified
|
||
9694 .thumb
|
||
9695 .thumb_func
|
||
9697 f_mkfs:
|
||
9698 .LVL1134:
|
||
9699 .LFB1237:
|
||
5308:Middlewares/Third_Party/FatFs/src/ff.c **** const UINT n_fats = 1; /* Number of FATs for FAT12/16/32 volume (1 or 2) */
|
||
9700 .loc 1 5308 1 is_stmt 1 view -0
|
||
9701 .cfi_startproc
|
||
9702 @ args = 4, pretend = 0, frame = 56
|
||
9703 @ frame_needed = 0, uses_anonymous_args = 0
|
||
5308:Middlewares/Third_Party/FatFs/src/ff.c **** const UINT n_fats = 1; /* Number of FATs for FAT12/16/32 volume (1 or 2) */
|
||
9704 .loc 1 5308 1 is_stmt 0 view .LVU3267
|
||
9705 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
9706 .LCFI110:
|
||
9707 .cfi_def_cfa_offset 36
|
||
ARM GAS /tmp/ccH7dUYB.s page 326
|
||
|
||
|
||
9708 .cfi_offset 4, -36
|
||
9709 .cfi_offset 5, -32
|
||
9710 .cfi_offset 6, -28
|
||
9711 .cfi_offset 7, -24
|
||
9712 .cfi_offset 8, -20
|
||
9713 .cfi_offset 9, -16
|
||
9714 .cfi_offset 10, -12
|
||
9715 .cfi_offset 11, -8
|
||
9716 .cfi_offset 14, -4
|
||
9717 0004 8FB0 sub sp, sp, #60
|
||
9718 .LCFI111:
|
||
9719 .cfi_def_cfa_offset 96
|
||
9720 0006 0990 str r0, [sp, #36]
|
||
9721 0008 0F46 mov r7, r1
|
||
9722 000a 1546 mov r5, r2
|
||
9723 000c 1E46 mov r6, r3
|
||
5309:Middlewares/Third_Party/FatFs/src/ff.c **** const UINT n_rootdir = 512; /* Number of root directory entries for FAT12/16 volume */
|
||
9724 .loc 1 5309 2 is_stmt 1 view .LVU3268
|
||
9725 .LVL1135:
|
||
5310:Middlewares/Third_Party/FatFs/src/ff.c **** static const WORD cst[] = {1, 4, 16, 64, 256, 512, 0}; /* Cluster size boundary for FAT12/16 volum
|
||
9726 .loc 1 5310 2 view .LVU3269
|
||
5311:Middlewares/Third_Party/FatFs/src/ff.c **** static const WORD cst32[] = {1, 2, 4, 8, 16, 32, 0}; /* Cluster size boundary for FAT32 volume (12
|
||
9727 .loc 1 5311 2 view .LVU3270
|
||
5312:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE fmt, sys, *buf, *pte, pdrv, part;
|
||
9728 .loc 1 5312 2 view .LVU3271
|
||
5313:Middlewares/Third_Party/FatFs/src/ff.c **** WORD ss;
|
||
9729 .loc 1 5313 2 view .LVU3272
|
||
5314:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD szb_buf, sz_buf, sz_blk, n_clst, pau, sect, nsect, n;
|
||
9730 .loc 1 5314 2 view .LVU3273
|
||
5315:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD b_vol, b_fat, b_data; /* Base LBA for volume, fat, data */
|
||
9731 .loc 1 5315 2 view .LVU3274
|
||
5316:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD sz_vol, sz_rsv, sz_fat, sz_dir; /* Size for volume, fat, dir, data */
|
||
9732 .loc 1 5316 2 view .LVU3275
|
||
5317:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i;
|
||
9733 .loc 1 5317 2 view .LVU3276
|
||
5318:Middlewares/Third_Party/FatFs/src/ff.c **** int vol;
|
||
9734 .loc 1 5318 2 view .LVU3277
|
||
5319:Middlewares/Third_Party/FatFs/src/ff.c **** DSTATUS stat;
|
||
9735 .loc 1 5319 2 view .LVU3278
|
||
5320:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_TRIM || _FS_EXFAT
|
||
9736 .loc 1 5320 2 view .LVU3279
|
||
5327:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
9737 .loc 1 5327 2 view .LVU3280
|
||
5327:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
9738 .loc 1 5327 8 is_stmt 0 view .LVU3281
|
||
9739 000e 09A8 add r0, sp, #36
|
||
9740 .LVL1136:
|
||
5327:Middlewares/Third_Party/FatFs/src/ff.c **** if (vol < 0) return FR_INVALID_DRIVE;
|
||
9741 .loc 1 5327 8 view .LVU3282
|
||
9742 0010 FFF7FEFF bl get_ldnumber
|
||
9743 .LVL1137:
|
||
5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */
|
||
9744 .loc 1 5328 2 is_stmt 1 view .LVU3283
|
||
5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */
|
||
9745 .loc 1 5328 5 is_stmt 0 view .LVU3284
|
||
9746 0014 0028 cmp r0, #0
|
||
5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */
|
||
ARM GAS /tmp/ccH7dUYB.s page 327
|
||
|
||
|
||
9747 .loc 1 5328 5 view .LVU3285
|
||
9748 0016 C0F2FA82 blt .L738
|
||
5329:Middlewares/Third_Party/FatFs/src/ff.c **** pdrv = LD2PD(vol); /* Physical drive */
|
||
9749 .loc 1 5329 2 is_stmt 1 view .LVU3286
|
||
5329:Middlewares/Third_Party/FatFs/src/ff.c **** pdrv = LD2PD(vol); /* Physical drive */
|
||
9750 .loc 1 5329 11 is_stmt 0 view .LVU3287
|
||
9751 001a A14B ldr r3, .L793
|
||
9752 001c 53F82030 ldr r3, [r3, r0, lsl #2]
|
||
5329:Middlewares/Third_Party/FatFs/src/ff.c **** pdrv = LD2PD(vol); /* Physical drive */
|
||
9753 .loc 1 5329 5 view .LVU3288
|
||
9754 0020 0BB1 cbz r3, .L697
|
||
5329:Middlewares/Third_Party/FatFs/src/ff.c **** pdrv = LD2PD(vol); /* Physical drive */
|
||
9755 .loc 1 5329 18 is_stmt 1 discriminator 1 view .LVU3289
|
||
5329:Middlewares/Third_Party/FatFs/src/ff.c **** pdrv = LD2PD(vol); /* Physical drive */
|
||
9756 .loc 1 5329 38 is_stmt 0 discriminator 1 view .LVU3290
|
||
9757 0022 0022 movs r2, #0
|
||
9758 0024 1A70 strb r2, [r3]
|
||
9759 .L697:
|
||
5330:Middlewares/Third_Party/FatFs/src/ff.c **** part = LD2PT(vol); /* Partition (0:create as new, 1-4:get from partition table) */
|
||
9760 .loc 1 5330 2 is_stmt 1 view .LVU3291
|
||
5330:Middlewares/Third_Party/FatFs/src/ff.c **** part = LD2PT(vol); /* Partition (0:create as new, 1-4:get from partition table) */
|
||
9761 .loc 1 5330 7 is_stmt 0 view .LVU3292
|
||
9762 0026 C4B2 uxtb r4, r0
|
||
9763 .LVL1138:
|
||
5331:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9764 .loc 1 5331 2 is_stmt 1 view .LVU3293
|
||
5334:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) return FR_NOT_READY;
|
||
9765 .loc 1 5334 2 view .LVU3294
|
||
5334:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) return FR_NOT_READY;
|
||
9766 .loc 1 5334 9 is_stmt 0 view .LVU3295
|
||
9767 0028 2046 mov r0, r4
|
||
9768 .LVL1139:
|
||
5334:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) return FR_NOT_READY;
|
||
9769 .loc 1 5334 9 view .LVU3296
|
||
9770 002a FFF7FEFF bl disk_initialize
|
||
9771 .LVL1140:
|
||
5335:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
|
||
9772 .loc 1 5335 2 is_stmt 1 view .LVU3297
|
||
5335:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
|
||
9773 .loc 1 5335 5 is_stmt 0 view .LVU3298
|
||
9774 002e 10F0010F tst r0, #1
|
||
9775 0032 40F0EE82 bne .L739
|
||
5336:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_BLOCK_SIZE, &sz_blk) != RES_OK || !sz_blk || sz_blk > 32768 || (sz_blk &
|
||
9776 .loc 1 5336 2 is_stmt 1 view .LVU3299
|
||
5336:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_BLOCK_SIZE, &sz_blk) != RES_OK || !sz_blk || sz_blk > 32768 || (sz_blk &
|
||
9777 .loc 1 5336 5 is_stmt 0 view .LVU3300
|
||
9778 0036 10F0040F tst r0, #4
|
||
9779 003a 40F0EC82 bne .L740
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9780 .loc 1 5337 2 is_stmt 1 view .LVU3301
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9781 .loc 1 5337 6 is_stmt 0 view .LVU3302
|
||
9782 003e 0CAA add r2, sp, #48
|
||
9783 0040 0321 movs r1, #3
|
||
9784 0042 2046 mov r0, r4
|
||
9785 .LVL1141:
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
ARM GAS /tmp/ccH7dUYB.s page 328
|
||
|
||
|
||
9786 .loc 1 5337 6 view .LVU3303
|
||
9787 0044 FFF7FEFF bl disk_ioctl
|
||
9788 .LVL1142:
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9789 .loc 1 5337 5 discriminator 1 view .LVU3304
|
||
9790 0048 38B9 cbnz r0, .L698
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9791 .loc 1 5337 61 discriminator 2 view .LVU3305
|
||
9792 004a 0C9B ldr r3, [sp, #48]
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9793 .loc 1 5337 58 discriminator 2 view .LVU3306
|
||
9794 004c 2BB1 cbz r3, .L698
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9795 .loc 1 5337 69 discriminator 4 view .LVU3307
|
||
9796 004e B3F5004F cmp r3, #32768
|
||
9797 0052 02D8 bhi .L698
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9798 .loc 1 5337 108 discriminator 6 view .LVU3308
|
||
9799 0054 5A1E subs r2, r3, #1
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9800 .loc 1 5337 87 discriminator 6 view .LVU3309
|
||
9801 0056 1342 tst r3, r2
|
||
9802 0058 01D0 beq .L699
|
||
9803 .L698:
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9804 .loc 1 5337 115 is_stmt 1 discriminator 7 view .LVU3310
|
||
5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */
|
||
9805 .loc 1 5337 122 is_stmt 0 discriminator 7 view .LVU3311
|
||
9806 005a 0123 movs r3, #1
|
||
9807 005c 0C93 str r3, [sp, #48]
|
||
9808 .L699:
|
||
5339:Middlewares/Third_Party/FatFs/src/ff.c **** if (ss > _MAX_SS || ss < _MIN_SS || (ss & (ss - 1))) return FR_DISK_ERR;
|
||
9809 .loc 1 5339 2 is_stmt 1 view .LVU3312
|
||
5339:Middlewares/Third_Party/FatFs/src/ff.c **** if (ss > _MAX_SS || ss < _MIN_SS || (ss & (ss - 1))) return FR_DISK_ERR;
|
||
9810 .loc 1 5339 6 is_stmt 0 view .LVU3313
|
||
9811 005e 0DF13602 add r2, sp, #54
|
||
9812 0062 0221 movs r1, #2
|
||
9813 0064 2046 mov r0, r4
|
||
9814 0066 FFF7FEFF bl disk_ioctl
|
||
9815 .LVL1143:
|
||
5339:Middlewares/Third_Party/FatFs/src/ff.c **** if (ss > _MAX_SS || ss < _MIN_SS || (ss & (ss - 1))) return FR_DISK_ERR;
|
||
9816 .loc 1 5339 5 discriminator 1 view .LVU3314
|
||
9817 006a 0028 cmp r0, #0
|
||
9818 006c 40F0D782 bne .L741
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
9819 .loc 1 5340 2 is_stmt 1 view .LVU3315
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
9820 .loc 1 5340 19 is_stmt 0 view .LVU3316
|
||
9821 0070 BDF83630 ldrh r3, [sp, #54]
|
||
9822 0074 A3F50072 sub r2, r3, #512
|
||
9823 0078 92B2 uxth r2, r2
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
9824 .loc 1 5340 5 view .LVU3317
|
||
9825 007a B2F5606F cmp r2, #3584
|
||
9826 007e 00F2D082 bhi .L742
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
9827 .loc 1 5340 48 discriminator 2 view .LVU3318
|
||
ARM GAS /tmp/ccH7dUYB.s page 329
|
||
|
||
|
||
9828 0082 5A1E subs r2, r3, #1
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
9829 .loc 1 5340 35 discriminator 2 view .LVU3319
|
||
9830 0084 1342 tst r3, r2
|
||
9831 0086 40F0CE82 bne .L743
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
9832 .loc 1 5344 2 is_stmt 1 view .LVU3320
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
9833 .loc 1 5344 5 is_stmt 0 view .LVU3321
|
||
9834 008a 35B1 cbz r5, .L700
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
9835 .loc 1 5344 15 discriminator 1 view .LVU3322
|
||
9836 008c AB42 cmp r3, r5
|
||
9837 008e 00F2CC82 bhi .L744
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
9838 .loc 1 5344 27 discriminator 4 view .LVU3323
|
||
9839 0092 B5F1807F cmp r5, #16777216
|
||
9840 0096 00F2CA82 bhi .L745
|
||
9841 .L700:
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
9842 .loc 1 5344 58 discriminator 6 view .LVU3324
|
||
9843 009a 6A1E subs r2, r5, #1
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
9844 .loc 1 5344 45 discriminator 6 view .LVU3325
|
||
9845 009c 2A40 ands r2, r2, r5
|
||
9846 009e 0192 str r2, [sp, #4]
|
||
9847 00a0 40F0C782 bne .L746
|
||
5345:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9848 .loc 1 5345 2 is_stmt 1 view .LVU3326
|
||
5345:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9849 .loc 1 5345 5 is_stmt 0 view .LVU3327
|
||
9850 00a4 B5FBF3F5 udiv r5, r5, r3
|
||
9851 .LVL1144:
|
||
5348:Middlewares/Third_Party/FatFs/src/ff.c **** sz_buf = len / ss; /* Size of working buffer (sector) */
|
||
9852 .loc 1 5348 2 is_stmt 1 view .LVU3328
|
||
5349:Middlewares/Third_Party/FatFs/src/ff.c **** szb_buf = sz_buf * ss; /* Size of working buffer (byte) */
|
||
9853 .loc 1 5349 2 view .LVU3329
|
||
5349:Middlewares/Third_Party/FatFs/src/ff.c **** szb_buf = sz_buf * ss; /* Size of working buffer (byte) */
|
||
9854 .loc 1 5349 9 is_stmt 0 view .LVU3330
|
||
9855 00a8 189A ldr r2, [sp, #96]
|
||
9856 00aa B2FBF3F9 udiv r9, r2, r3
|
||
9857 .LVL1145:
|
||
5350:Middlewares/Third_Party/FatFs/src/ff.c **** if (!szb_buf) return FR_MKFS_ABORTED;
|
||
9858 .loc 1 5350 2 is_stmt 1 view .LVU3331
|
||
5350:Middlewares/Third_Party/FatFs/src/ff.c **** if (!szb_buf) return FR_MKFS_ABORTED;
|
||
9859 .loc 1 5350 10 is_stmt 0 view .LVU3332
|
||
9860 00ae 09FB03F3 mul r3, r9, r3
|
||
9861 00b2 0293 str r3, [sp, #8]
|
||
9862 .LVL1146:
|
||
5351:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9863 .loc 1 5351 2 is_stmt 1 view .LVU3333
|
||
5351:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9864 .loc 1 5351 5 is_stmt 0 view .LVU3334
|
||
9865 00b4 002B cmp r3, #0
|
||
9866 00b6 00F0BE82 beq .L747
|
||
5354:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get partition information from partition table in the MBR */
|
||
9867 .loc 1 5354 2 is_stmt 1 view .LVU3335
|
||
ARM GAS /tmp/ccH7dUYB.s page 330
|
||
|
||
|
||
5364:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = (opt & FM_SFD) ? 0 : 63; /* Volume start sector */
|
||
9868 .loc 1 5364 3 view .LVU3336
|
||
5364:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = (opt & FM_SFD) ? 0 : 63; /* Volume start sector */
|
||
9869 .loc 1 5364 7 is_stmt 0 view .LVU3337
|
||
9870 00ba 0BAA add r2, sp, #44
|
||
9871 00bc 0121 movs r1, #1
|
||
9872 00be 2046 mov r0, r4
|
||
9873 00c0 FFF7FEFF bl disk_ioctl
|
||
9874 .LVL1147:
|
||
5364:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = (opt & FM_SFD) ? 0 : 63; /* Volume start sector */
|
||
9875 .loc 1 5364 6 discriminator 1 view .LVU3338
|
||
9876 00c4 0028 cmp r0, #0
|
||
9877 00c6 40F0B882 bne .L748
|
||
5365:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < b_vol) return FR_MKFS_ABORTED;
|
||
9878 .loc 1 5365 3 is_stmt 1 view .LVU3339
|
||
5365:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < b_vol) return FR_MKFS_ABORTED;
|
||
9879 .loc 1 5365 30 is_stmt 0 view .LVU3340
|
||
9880 00ca 17F00803 ands r3, r7, #8
|
||
9881 00ce 0393 str r3, [sp, #12]
|
||
9882 00d0 22D0 beq .L749
|
||
5365:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < b_vol) return FR_MKFS_ABORTED;
|
||
9883 .loc 1 5365 30 discriminator 1 view .LVU3341
|
||
9884 00d2 DDF804B0 ldr fp, [sp, #4]
|
||
9885 .L701:
|
||
9886 .LVL1148:
|
||
5366:Middlewares/Third_Party/FatFs/src/ff.c **** sz_vol -= b_vol; /* Volume size */
|
||
9887 .loc 1 5366 3 is_stmt 1 view .LVU3342
|
||
5366:Middlewares/Third_Party/FatFs/src/ff.c **** sz_vol -= b_vol; /* Volume size */
|
||
9888 .loc 1 5366 14 is_stmt 0 view .LVU3343
|
||
9889 00d6 0B9A ldr r2, [sp, #44]
|
||
5366:Middlewares/Third_Party/FatFs/src/ff.c **** sz_vol -= b_vol; /* Volume size */
|
||
9890 .loc 1 5366 6 view .LVU3344
|
||
9891 00d8 5A45 cmp r2, fp
|
||
9892 00da C0F0B082 bcc .L750
|
||
5367:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9893 .loc 1 5367 3 is_stmt 1 view .LVU3345
|
||
5367:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9894 .loc 1 5367 10 is_stmt 0 view .LVU3346
|
||
9895 00de A2EB0B02 sub r2, r2, fp
|
||
9896 00e2 0B92 str r2, [sp, #44]
|
||
5369:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9897 .loc 1 5369 2 is_stmt 1 view .LVU3347
|
||
5369:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
9898 .loc 1 5369 5 is_stmt 0 view .LVU3348
|
||
9899 00e4 7F2A cmp r2, #127
|
||
9900 00e6 40F2B982 bls .L751
|
||
5372:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && (opt & FM_EXFAT)) { /* exFAT possible? */
|
||
9901 .loc 1 5372 2 is_stmt 1 view .LVU3349
|
||
5373:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_ANY) == FM_EXFAT || sz_vol >= 0x4000000 || au > 128) { /* exFAT only, vol >= 64Ms
|
||
9902 .loc 1 5373 3 view .LVU3350
|
||
5378:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt & FM_FAT32) { /* FAT32 possible? */
|
||
9903 .loc 1 5378 3 view .LVU3351
|
||
5378:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt & FM_FAT32) { /* FAT32 possible? */
|
||
9904 .loc 1 5378 6 is_stmt 0 view .LVU3352
|
||
9905 00ea 802D cmp r5, #128
|
||
9906 00ec 00F2B882 bhi .L752
|
||
5379:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_ANY) == FM_FAT32 || !(opt & FM_FAT)) { /* FAT32 only or no-FAT? */
|
||
ARM GAS /tmp/ccH7dUYB.s page 331
|
||
|
||
|
||
9907 .loc 1 5379 3 is_stmt 1 view .LVU3353
|
||
5379:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_ANY) == FM_FAT32 || !(opt & FM_FAT)) { /* FAT32 only or no-FAT? */
|
||
9908 .loc 1 5379 6 is_stmt 0 view .LVU3354
|
||
9909 00f0 17F00201 ands r1, r7, #2
|
||
9910 00f4 06D0 beq .L702
|
||
5380:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; break;
|
||
9911 .loc 1 5380 4 is_stmt 1 view .LVU3355
|
||
5380:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; break;
|
||
9912 .loc 1 5380 7 is_stmt 0 view .LVU3356
|
||
9913 00f6 07F00703 and r3, r7, #7
|
||
9914 00fa 022B cmp r3, #2
|
||
9915 00fc 0FD0 beq .L753
|
||
5380:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; break;
|
||
9916 .loc 1 5380 35 discriminator 1 view .LVU3357
|
||
9917 00fe 17F0010F tst r7, #1
|
||
9918 0102 12D0 beq .L754
|
||
9919 .L702:
|
||
5384:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT16;
|
||
9920 .loc 1 5384 3 is_stmt 1 view .LVU3358
|
||
5384:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT16;
|
||
9921 .loc 1 5384 6 is_stmt 0 view .LVU3359
|
||
9922 0104 17F0010F tst r7, #1
|
||
9923 0108 00F0AC82 beq .L755
|
||
5385:Middlewares/Third_Party/FatFs/src/ff.c **** } while (0);
|
||
9924 .loc 1 5385 7 view .LVU3360
|
||
9925 010c 4FF0020A mov r10, #2
|
||
9926 0110 0494 str r4, [sp, #16]
|
||
9927 0112 CDF81490 str r9, [sp, #20]
|
||
9928 0116 6DE0 b .L704
|
||
9929 .LVL1149:
|
||
9930 .L749:
|
||
5365:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < b_vol) return FR_MKFS_ABORTED;
|
||
9931 .loc 1 5365 30 discriminator 2 view .LVU3361
|
||
9932 0118 4FF03F0B mov fp, #63
|
||
9933 011c DBE7 b .L701
|
||
9934 .LVL1150:
|
||
9935 .L753:
|
||
5381:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9936 .loc 1 5381 9 view .LVU3362
|
||
9937 011e 4FF0030A mov r10, #3
|
||
9938 0122 0494 str r4, [sp, #16]
|
||
9939 0124 CDF81490 str r9, [sp, #20]
|
||
9940 0128 64E0 b .L704
|
||
9941 .L754:
|
||
5381:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9942 .loc 1 5381 9 view .LVU3363
|
||
9943 012a 4FF0030A mov r10, #3
|
||
9944 012e 0494 str r4, [sp, #16]
|
||
9945 0130 CDF81490 str r9, [sp, #20]
|
||
9946 0134 5EE0 b .L704
|
||
9947 .LVL1151:
|
||
9948 .L761:
|
||
5604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9949 .loc 1 5604 10 view .LVU3364
|
||
9950 0136 1D46 mov r5, r3
|
||
9951 .LVL1152:
|
||
5604:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 332
|
||
|
||
|
||
9952 .loc 1 5604 10 view .LVU3365
|
||
9953 0138 5CE0 b .L704
|
||
9954 .LVL1153:
|
||
9955 .L762:
|
||
5607:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9956 .loc 1 5607 11 view .LVU3366
|
||
9957 013a 4FF0030A mov r10, #3
|
||
9958 .LVL1154:
|
||
5607:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
9959 .loc 1 5607 11 view .LVU3367
|
||
9960 013e 59E0 b .L704
|
||
9961 .LVL1155:
|
||
9962 .L782:
|
||
5556:Middlewares/Third_Party/FatFs/src/ff.c **** n = sz_vol / 0x20000; /* Volume size in unit of 128KS */
|
||
9963 .loc 1 5556 5 is_stmt 1 view .LVU3368
|
||
5556:Middlewares/Third_Party/FatFs/src/ff.c **** n = sz_vol / 0x20000; /* Volume size in unit of 128KS */
|
||
9964 .loc 1 5556 8 is_stmt 0 view .LVU3369
|
||
9965 0140 ADB1 cbz r5, .L780
|
||
5553:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pre-determine number of clusters and FAT sub-type */
|
||
9966 .loc 1 5553 8 view .LVU3370
|
||
9967 0142 A846 mov r8, r5
|
||
9968 .LVL1156:
|
||
9969 .L706:
|
||
5560:Middlewares/Third_Party/FatFs/src/ff.c **** sz_fat = (n_clst * 4 + 8 + ss - 1) / ss; /* FAT size [sector] */
|
||
9970 .loc 1 5560 5 is_stmt 1 view .LVU3371
|
||
5560:Middlewares/Third_Party/FatFs/src/ff.c **** sz_fat = (n_clst * 4 + 8 + ss - 1) / ss; /* FAT size [sector] */
|
||
9971 .loc 1 5560 12 is_stmt 0 view .LVU3372
|
||
9972 0144 B2FBF8F0 udiv r0, r2, r8
|
||
9973 .LVL1157:
|
||
5561:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 32; /* Number of reserved sectors */
|
||
9974 .loc 1 5561 5 is_stmt 1 view .LVU3373
|
||
5561:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 32; /* Number of reserved sectors */
|
||
9975 .loc 1 5561 26 is_stmt 0 view .LVU3374
|
||
9976 0148 831C adds r3, r0, #2
|
||
5561:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 32; /* Number of reserved sectors */
|
||
9977 .loc 1 5561 30 view .LVU3375
|
||
9978 014a BDF83640 ldrh r4, [sp, #54]
|
||
9979 014e 04EB8303 add r3, r4, r3, lsl #2
|
||
5561:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 32; /* Number of reserved sectors */
|
||
9980 .loc 1 5561 35 view .LVU3376
|
||
9981 0152 013B subs r3, r3, #1
|
||
5561:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 32; /* Number of reserved sectors */
|
||
9982 .loc 1 5561 12 view .LVU3377
|
||
9983 0154 B3FBF4F3 udiv r3, r3, r4
|
||
9984 .LVL1158:
|
||
5562:Middlewares/Third_Party/FatFs/src/ff.c **** sz_dir = 0; /* No static directory */
|
||
9985 .loc 1 5562 5 is_stmt 1 view .LVU3378
|
||
5563:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT16 || n_clst > MAX_FAT32) return FR_MKFS_ABORTED;
|
||
9986 .loc 1 5563 5 view .LVU3379
|
||
5564:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */
|
||
9987 .loc 1 5564 5 view .LVU3380
|
||
5564:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */
|
||
9988 .loc 1 5564 29 is_stmt 0 view .LVU3381
|
||
9989 0158 524C ldr r4, .L793+4
|
||
9990 015a 0444 add r4, r4, r0
|
||
5564:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */
|
||
9991 .loc 1 5564 8 view .LVU3382
|
||
ARM GAS /tmp/ccH7dUYB.s page 333
|
||
|
||
|
||
9992 015c 5248 ldr r0, .L793+8
|
||
9993 .LVL1159:
|
||
5564:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */
|
||
9994 .loc 1 5564 8 view .LVU3383
|
||
9995 015e 8442 cmp r4, r0
|
||
9996 0160 00F28282 bhi .L757
|
||
5563:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT16 || n_clst > MAX_FAT32) return FR_MKFS_ABORTED;
|
||
9997 .loc 1 5563 12 view .LVU3384
|
||
9998 0164 DDF804C0 ldr ip, [sp, #4]
|
||
5562:Middlewares/Third_Party/FatFs/src/ff.c **** sz_dir = 0; /* No static directory */
|
||
9999 .loc 1 5562 12 view .LVU3385
|
||
10000 0168 4FF0200E mov lr, #32
|
||
10001 016c 5CE0 b .L709
|
||
10002 .LVL1160:
|
||
10003 .L780:
|
||
5557:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0, pau = 1; cst32[i] && cst32[i] <= n; i++, pau <<= 1) ; /* Get from table */
|
||
10004 .loc 1 5557 6 is_stmt 1 view .LVU3386
|
||
5557:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0, pau = 1; cst32[i] && cst32[i] <= n; i++, pau <<= 1) ; /* Get from table */
|
||
10005 .loc 1 5557 8 is_stmt 0 view .LVU3387
|
||
10006 016e 540C lsrs r4, r2, #17
|
||
10007 .LVL1161:
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10008 .loc 1 5558 6 is_stmt 1 view .LVU3388
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10009 .loc 1 5558 13 is_stmt 0 view .LVU3389
|
||
10010 0170 2846 mov r0, r5
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10011 .loc 1 5558 22 view .LVU3390
|
||
10012 0172 4FF00108 mov r8, #1
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10013 .loc 1 5558 6 view .LVU3391
|
||
10014 0176 02E0 b .L707
|
||
10015 .LVL1162:
|
||
10016 .L708:
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10017 .loc 1 5558 57 is_stmt 1 discriminator 4 view .LVU3392
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10018 .loc 1 5558 55 is_stmt 0 discriminator 4 view .LVU3393
|
||
10019 0178 0130 adds r0, r0, #1
|
||
10020 .LVL1163:
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10021 .loc 1 5558 63 discriminator 4 view .LVU3394
|
||
10022 017a 4FEA4808 lsl r8, r8, #1
|
||
10023 .LVL1164:
|
||
10024 .L707:
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10025 .loc 1 5558 36 is_stmt 1 discriminator 1 view .LVU3395
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10026 .loc 1 5558 32 is_stmt 0 discriminator 1 view .LVU3396
|
||
10027 017e 4B4B ldr r3, .L793+12
|
||
10028 0180 33F81030 ldrh r3, [r3, r0, lsl #1]
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10029 .loc 1 5558 36 discriminator 1 view .LVU3397
|
||
10030 0184 002B cmp r3, #0
|
||
10031 0186 DDD0 beq .L706
|
||
5558:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10032 .loc 1 5558 36 discriminator 3 view .LVU3398
|
||
ARM GAS /tmp/ccH7dUYB.s page 334
|
||
|
||
|
||
10033 0188 A342 cmp r3, r4
|
||
10034 018a F5D9 bls .L708
|
||
10035 018c DAE7 b .L706
|
||
10036 .LVL1165:
|
||
10037 .L783:
|
||
5567:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0, pau = 1; cst[i] && cst[i] <= n; i++, pau <<= 1) ; /* Get from table */
|
||
10038 .loc 1 5567 6 is_stmt 1 view .LVU3399
|
||
5567:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0, pau = 1; cst[i] && cst[i] <= n; i++, pau <<= 1) ; /* Get from table */
|
||
10039 .loc 1 5567 8 is_stmt 0 view .LVU3400
|
||
10040 018e 140B lsrs r4, r2, #12
|
||
10041 .LVL1166:
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10042 .loc 1 5568 6 is_stmt 1 view .LVU3401
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10043 .loc 1 5568 13 is_stmt 0 view .LVU3402
|
||
10044 0190 2846 mov r0, r5
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10045 .loc 1 5568 22 view .LVU3403
|
||
10046 0192 4FF00108 mov r8, #1
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10047 .loc 1 5568 6 view .LVU3404
|
||
10048 0196 02E0 b .L711
|
||
10049 .LVL1167:
|
||
10050 .L712:
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10051 .loc 1 5568 53 is_stmt 1 discriminator 4 view .LVU3405
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10052 .loc 1 5568 51 is_stmt 0 discriminator 4 view .LVU3406
|
||
10053 0198 0130 adds r0, r0, #1
|
||
10054 .LVL1168:
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10055 .loc 1 5568 59 discriminator 4 view .LVU3407
|
||
10056 019a 4FEA4808 lsl r8, r8, #1
|
||
10057 .LVL1169:
|
||
10058 .L711:
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10059 .loc 1 5568 34 is_stmt 1 discriminator 1 view .LVU3408
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10060 .loc 1 5568 30 is_stmt 0 discriminator 1 view .LVU3409
|
||
10061 019e 444B ldr r3, .L793+16
|
||
10062 01a0 33F81030 ldrh r3, [r3, r0, lsl #1]
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10063 .loc 1 5568 34 discriminator 1 view .LVU3410
|
||
10064 01a4 63B3 cbz r3, .L710
|
||
5568:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10065 .loc 1 5568 34 discriminator 3 view .LVU3411
|
||
10066 01a6 A342 cmp r3, r4
|
||
10067 01a8 F6D9 bls .L712
|
||
10068 01aa 29E0 b .L710
|
||
10069 .LVL1170:
|
||
10070 .L713:
|
||
5574:Middlewares/Third_Party/FatFs/src/ff.c **** n = (n_clst * 3 + 1) / 2 + 3; /* FAT size [byte] */
|
||
10071 .loc 1 5574 6 is_stmt 1 view .LVU3412
|
||
5575:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10072 .loc 1 5575 6 view .LVU3413
|
||
5575:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10073 .loc 1 5575 18 is_stmt 0 view .LVU3414
|
||
ARM GAS /tmp/ccH7dUYB.s page 335
|
||
|
||
|
||
10074 01ac 03EB4303 add r3, r3, r3, lsl #1
|
||
10075 .LVL1171:
|
||
5575:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10076 .loc 1 5575 22 view .LVU3415
|
||
10077 01b0 0133 adds r3, r3, #1
|
||
5575:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10078 .loc 1 5575 27 view .LVU3416
|
||
10079 01b2 5B08 lsrs r3, r3, #1
|
||
5575:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10080 .loc 1 5575 8 view .LVU3417
|
||
10081 01b4 0333 adds r3, r3, #3
|
||
10082 .LVL1172:
|
||
5574:Middlewares/Third_Party/FatFs/src/ff.c **** n = (n_clst * 3 + 1) / 2 + 3; /* FAT size [byte] */
|
||
10083 .loc 1 5574 10 view .LVU3418
|
||
10084 01b6 4FF0010A mov r10, #1
|
||
10085 01ba 29E0 b .L714
|
||
10086 .LVL1173:
|
||
10087 .L784:
|
||
5587:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16: Expand FAT size */
|
||
10088 .loc 1 5587 5 is_stmt 1 view .LVU3419
|
||
5587:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16: Expand FAT size */
|
||
10089 .loc 1 5587 12 is_stmt 0 view .LVU3420
|
||
10090 01bc A644 add lr, lr, r4
|
||
10091 .LVL1174:
|
||
5587:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16: Expand FAT size */
|
||
10092 .loc 1 5587 18 is_stmt 1 view .LVU3421
|
||
5587:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16: Expand FAT size */
|
||
10093 .loc 1 5587 24 is_stmt 0 view .LVU3422
|
||
10094 01be A144 add r9, r9, r4
|
||
10095 .LVL1175:
|
||
5587:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16: Expand FAT size */
|
||
10096 .loc 1 5587 24 view .LVU3423
|
||
10097 01c0 41E0 b .L716
|
||
10098 .LVL1176:
|
||
10099 .L785:
|
||
5596:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau / 2) != 0) continue; /* Adjust cluster size and retry */
|
||
10100 .loc 1 5596 5 is_stmt 1 view .LVU3424
|
||
5596:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau / 2) != 0) continue; /* Adjust cluster size and retry */
|
||
10101 .loc 1 5596 8 is_stmt 0 view .LVU3425
|
||
10102 01c2 4FF6F574 movw r4, #65525
|
||
10103 .LVL1177:
|
||
5596:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau / 2) != 0) continue; /* Adjust cluster size and retry */
|
||
10104 .loc 1 5596 8 view .LVU3426
|
||
10105 01c6 A042 cmp r0, r4
|
||
10106 01c8 4ED8 bhi .L717
|
||
5597:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10107 .loc 1 5597 6 is_stmt 1 view .LVU3427
|
||
5597:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10108 .loc 1 5597 9 is_stmt 0 view .LVU3428
|
||
10109 01ca 002D cmp r5, #0
|
||
10110 01cc 40F05082 bne .L760
|
||
5597:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10111 .loc 1 5597 21 discriminator 1 view .LVU3429
|
||
10112 01d0 4FEA5805 lsr r5, r8, #1
|
||
10113 .LVL1178:
|
||
5597:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10114 .loc 1 5597 14 discriminator 1 view .LVU3430
|
||
ARM GAS /tmp/ccH7dUYB.s page 336
|
||
|
||
|
||
10115 01d4 B8F1010F cmp r8, #1
|
||
10116 01d8 0CD8 bhi .L704
|
||
5598:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10117 .loc 1 5598 13 view .LVU3431
|
||
10118 01da 0E20 movs r0, #14
|
||
10119 .LVL1179:
|
||
5598:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10120 .loc 1 5598 13 view .LVU3432
|
||
10121 01dc 1CE2 b .L696
|
||
10122 .LVL1180:
|
||
10123 .L720:
|
||
5612:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau * 2) <= 128) continue; /* Adjust cluster size and retry */
|
||
10124 .loc 1 5612 5 is_stmt 1 view .LVU3433
|
||
5612:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau * 2) <= 128) continue; /* Adjust cluster size and retry */
|
||
10125 .loc 1 5612 9 is_stmt 0 view .LVU3434
|
||
10126 01de 40F6F574 movw r4, #4085
|
||
10127 01e2 A042 cmp r0, r4
|
||
10128 01e4 66D8 bhi .L719
|
||
5613:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10129 .loc 1 5613 6 is_stmt 1 view .LVU3435
|
||
5613:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10130 .loc 1 5613 9 is_stmt 0 view .LVU3436
|
||
10131 01e6 002D cmp r5, #0
|
||
10132 01e8 40F04682 bne .L764
|
||
5613:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10133 .loc 1 5613 21 discriminator 1 view .LVU3437
|
||
10134 01ec 4FEA4805 lsl r5, r8, #1
|
||
10135 .LVL1181:
|
||
5613:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10136 .loc 1 5613 14 discriminator 1 view .LVU3438
|
||
10137 01f0 802D cmp r5, #128
|
||
10138 01f2 52D8 bhi .L781
|
||
10139 .LVL1182:
|
||
10140 .L704:
|
||
5372:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT && (opt & FM_EXFAT)) { /* exFAT possible? */
|
||
10141 .loc 1 5372 5 is_stmt 1 view .LVU3439
|
||
5552:Middlewares/Third_Party/FatFs/src/ff.c **** pau = au;
|
||
10142 .loc 1 5552 3 view .LVU3440
|
||
5553:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pre-determine number of clusters and FAT sub-type */
|
||
10143 .loc 1 5553 4 view .LVU3441
|
||
5555:Middlewares/Third_Party/FatFs/src/ff.c **** if (!pau) { /* au auto-selection */
|
||
10144 .loc 1 5555 4 view .LVU3442
|
||
5555:Middlewares/Third_Party/FatFs/src/ff.c **** if (!pau) { /* au auto-selection */
|
||
10145 .loc 1 5555 7 is_stmt 0 view .LVU3443
|
||
10146 01f4 BAF1030F cmp r10, #3
|
||
10147 01f8 A2D0 beq .L782
|
||
5566:Middlewares/Third_Party/FatFs/src/ff.c **** n = sz_vol / 0x1000; /* Volume size in unit of 4KS */
|
||
10148 .loc 1 5566 5 is_stmt 1 view .LVU3444
|
||
5566:Middlewares/Third_Party/FatFs/src/ff.c **** n = sz_vol / 0x1000; /* Volume size in unit of 4KS */
|
||
10149 .loc 1 5566 8 is_stmt 0 view .LVU3445
|
||
10150 01fa 002D cmp r5, #0
|
||
10151 01fc C7D0 beq .L783
|
||
5553:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pre-determine number of clusters and FAT sub-type */
|
||
10152 .loc 1 5553 8 view .LVU3446
|
||
10153 01fe A846 mov r8, r5
|
||
10154 .LVL1183:
|
||
10155 .L710:
|
||
ARM GAS /tmp/ccH7dUYB.s page 337
|
||
|
||
|
||
5570:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT12) {
|
||
10156 .loc 1 5570 5 is_stmt 1 view .LVU3447
|
||
5570:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT12) {
|
||
10157 .loc 1 5570 12 is_stmt 0 view .LVU3448
|
||
10158 0200 B2FBF8F3 udiv r3, r2, r8
|
||
10159 .LVL1184:
|
||
5571:Middlewares/Third_Party/FatFs/src/ff.c **** n = n_clst * 2 + 4; /* FAT size [byte] */
|
||
10160 .loc 1 5571 5 is_stmt 1 view .LVU3449
|
||
5571:Middlewares/Third_Party/FatFs/src/ff.c **** n = n_clst * 2 + 4; /* FAT size [byte] */
|
||
10161 .loc 1 5571 8 is_stmt 0 view .LVU3450
|
||
10162 0204 40F6F570 movw r0, #4085
|
||
10163 0208 8342 cmp r3, r0
|
||
10164 020a CFD9 bls .L713
|
||
5572:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10165 .loc 1 5572 6 is_stmt 1 view .LVU3451
|
||
5572:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10166 .loc 1 5572 21 is_stmt 0 view .LVU3452
|
||
10167 020c 0233 adds r3, r3, #2
|
||
10168 .LVL1185:
|
||
5572:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10169 .loc 1 5572 8 view .LVU3453
|
||
10170 020e 5B00 lsls r3, r3, #1
|
||
10171 .LVL1186:
|
||
10172 .L714:
|
||
5577:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 1; /* Number of reserved sectors */
|
||
10173 .loc 1 5577 5 is_stmt 1 view .LVU3454
|
||
5577:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 1; /* Number of reserved sectors */
|
||
10174 .loc 1 5577 17 is_stmt 0 view .LVU3455
|
||
10175 0210 BDF83600 ldrh r0, [sp, #54]
|
||
10176 0214 0344 add r3, r3, r0
|
||
10177 .LVL1187:
|
||
5577:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 1; /* Number of reserved sectors */
|
||
10178 .loc 1 5577 22 view .LVU3456
|
||
10179 0216 013B subs r3, r3, #1
|
||
5577:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv = 1; /* Number of reserved sectors */
|
||
10180 .loc 1 5577 12 view .LVU3457
|
||
10181 0218 B3FBF0F3 udiv r3, r3, r0
|
||
10182 .LVL1188:
|
||
5578:Middlewares/Third_Party/FatFs/src/ff.c **** sz_dir = (DWORD)n_rootdir * SZDIRE / ss; /* Rootdir size [sector] */
|
||
10183 .loc 1 5578 5 is_stmt 1 view .LVU3458
|
||
5579:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10184 .loc 1 5579 5 view .LVU3459
|
||
5579:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10185 .loc 1 5579 12 is_stmt 0 view .LVU3460
|
||
10186 021c 4FF4804C mov ip, #16384
|
||
10187 0220 BCFBF0FC udiv ip, ip, r0
|
||
10188 .LVL1189:
|
||
5578:Middlewares/Third_Party/FatFs/src/ff.c **** sz_dir = (DWORD)n_rootdir * SZDIRE / ss; /* Rootdir size [sector] */
|
||
10189 .loc 1 5578 12 view .LVU3461
|
||
10190 0224 4FF0010E mov lr, #1
|
||
10191 .LVL1190:
|
||
10192 .L709:
|
||
5581:Middlewares/Third_Party/FatFs/src/ff.c **** b_data = b_fat + sz_fat * n_fats + sz_dir; /* Data base */
|
||
10193 .loc 1 5581 4 is_stmt 1 view .LVU3462
|
||
5581:Middlewares/Third_Party/FatFs/src/ff.c **** b_data = b_fat + sz_fat * n_fats + sz_dir; /* Data base */
|
||
10194 .loc 1 5581 10 is_stmt 0 view .LVU3463
|
||
10195 0228 0EEB0B09 add r9, lr, fp
|
||
ARM GAS /tmp/ccH7dUYB.s page 338
|
||
|
||
|
||
10196 .LVL1191:
|
||
5582:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10197 .loc 1 5582 4 is_stmt 1 view .LVU3464
|
||
5582:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10198 .loc 1 5582 19 is_stmt 0 view .LVU3465
|
||
10199 022c 03EB0900 add r0, r3, r9
|
||
5582:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10200 .loc 1 5582 11 view .LVU3466
|
||
10201 0230 6044 add r0, r0, ip
|
||
10202 .LVL1192:
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
10203 .loc 1 5585 4 is_stmt 1 view .LVU3467
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
10204 .loc 1 5585 17 is_stmt 0 view .LVU3468
|
||
10205 0232 0C9F ldr r7, [sp, #48]
|
||
10206 0234 3C18 adds r4, r7, r0
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
10207 .loc 1 5585 26 view .LVU3469
|
||
10208 0236 013C subs r4, r4, #1
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
10209 .loc 1 5585 33 view .LVU3470
|
||
10210 0238 7F42 rsbs r7, r7, #0
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
10211 .loc 1 5585 31 view .LVU3471
|
||
10212 023a 3C40 ands r4, r4, r7
|
||
5585:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { /* FAT32: Move FAT base */
|
||
10213 .loc 1 5585 6 view .LVU3472
|
||
10214 023c 241A subs r4, r4, r0
|
||
10215 .LVL1193:
|
||
5586:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv += n; b_fat += n;
|
||
10216 .loc 1 5586 4 is_stmt 1 view .LVU3473
|
||
5586:Middlewares/Third_Party/FatFs/src/ff.c **** sz_rsv += n; b_fat += n;
|
||
10217 .loc 1 5586 7 is_stmt 0 view .LVU3474
|
||
10218 023e BAF1030F cmp r10, #3
|
||
10219 0242 BBD0 beq .L784
|
||
5589:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10220 .loc 1 5589 5 is_stmt 1 view .LVU3475
|
||
5589:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10221 .loc 1 5589 12 is_stmt 0 view .LVU3476
|
||
10222 0244 2344 add r3, r3, r4
|
||
10223 .LVL1194:
|
||
10224 .L716:
|
||
5593:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - sz_rsv - sz_fat * n_fats - sz_dir) / pau;
|
||
10225 .loc 1 5593 4 is_stmt 1 view .LVU3477
|
||
5593:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - sz_rsv - sz_fat * n_fats - sz_dir) / pau;
|
||
10226 .loc 1 5593 24 is_stmt 0 view .LVU3478
|
||
10227 0246 00EB0810 add r0, r0, r8, lsl #4
|
||
10228 .LVL1195:
|
||
5593:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - sz_rsv - sz_fat * n_fats - sz_dir) / pau;
|
||
10229 .loc 1 5593 35 view .LVU3479
|
||
10230 024a A0EB0B00 sub r0, r0, fp
|
||
5593:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - sz_rsv - sz_fat * n_fats - sz_dir) / pau;
|
||
10231 .loc 1 5593 7 view .LVU3480
|
||
10232 024e 8242 cmp r2, r0
|
||
10233 0250 C0F00C82 bcc .L759
|
||
5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10234 .loc 1 5594 4 is_stmt 1 view .LVU3481
|
||
ARM GAS /tmp/ccH7dUYB.s page 339
|
||
|
||
|
||
5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10235 .loc 1 5594 21 is_stmt 0 view .LVU3482
|
||
10236 0254 A2EB0E00 sub r0, r2, lr
|
||
5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10237 .loc 1 5594 30 view .LVU3483
|
||
10238 0258 C01A subs r0, r0, r3
|
||
5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10239 .loc 1 5594 48 view .LVU3484
|
||
10240 025a A0EB0C00 sub r0, r0, ip
|
||
5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10241 .loc 1 5594 11 view .LVU3485
|
||
10242 025e B0FBF8F0 udiv r0, r0, r8
|
||
10243 .LVL1196:
|
||
5595:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT16) { /* Too few clusters for FAT32 */
|
||
10244 .loc 1 5595 4 is_stmt 1 view .LVU3486
|
||
5595:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst <= MAX_FAT16) { /* Too few clusters for FAT32 */
|
||
10245 .loc 1 5595 7 is_stmt 0 view .LVU3487
|
||
10246 0262 BAF1030F cmp r10, #3
|
||
10247 0266 ACD0 beq .L785
|
||
10248 .LVL1197:
|
||
10249 .L717:
|
||
5601:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT16) { /* Too many clusters for FAT16 */
|
||
10250 .loc 1 5601 4 is_stmt 1 view .LVU3488
|
||
5601:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT16) { /* Too many clusters for FAT16 */
|
||
10251 .loc 1 5601 7 is_stmt 0 view .LVU3489
|
||
10252 0268 BAF1020F cmp r10, #2
|
||
10253 026c 22D1 bne .L719
|
||
5602:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (pau * 2) <= 64) {
|
||
10254 .loc 1 5602 5 is_stmt 1 view .LVU3490
|
||
5602:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (pau * 2) <= 64) {
|
||
10255 .loc 1 5602 8 is_stmt 0 view .LVU3491
|
||
10256 026e 4FF6F574 movw r4, #65525
|
||
10257 0272 A042 cmp r0, r4
|
||
10258 0274 B3D9 bls .L720
|
||
5603:Middlewares/Third_Party/FatFs/src/ff.c **** au = pau * 2; continue; /* Adjust cluster size and retry */
|
||
10259 .loc 1 5603 6 is_stmt 1 view .LVU3492
|
||
5603:Middlewares/Third_Party/FatFs/src/ff.c **** au = pau * 2; continue; /* Adjust cluster size and retry */
|
||
10260 .loc 1 5603 9 is_stmt 0 view .LVU3493
|
||
10261 0276 25B9 cbnz r5, .L721
|
||
5603:Middlewares/Third_Party/FatFs/src/ff.c **** au = pau * 2; continue; /* Adjust cluster size and retry */
|
||
10262 .loc 1 5603 22 discriminator 1 view .LVU3494
|
||
10263 0278 4FEA4803 lsl r3, r8, #1
|
||
10264 .LVL1198:
|
||
5603:Middlewares/Third_Party/FatFs/src/ff.c **** au = pau * 2; continue; /* Adjust cluster size and retry */
|
||
10265 .loc 1 5603 14 discriminator 1 view .LVU3495
|
||
10266 027c 402B cmp r3, #64
|
||
10267 027e 7FF65AAF bls .L761
|
||
10268 .L721:
|
||
5606:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; continue; /* Switch type to FAT32 and retry */
|
||
10269 .loc 1 5606 6 is_stmt 1 view .LVU3496
|
||
5606:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT32; continue; /* Switch type to FAT32 and retry */
|
||
10270 .loc 1 5606 9 is_stmt 0 view .LVU3497
|
||
10271 0282 0029 cmp r1, #0
|
||
10272 0284 7FF459AF bne .L762
|
||
5609:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10273 .loc 1 5609 6 is_stmt 1 view .LVU3498
|
||
5609:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
ARM GAS /tmp/ccH7dUYB.s page 340
|
||
|
||
|
||
10274 .loc 1 5609 9 is_stmt 0 view .LVU3499
|
||
10275 0288 002D cmp r5, #0
|
||
10276 028a 40F0F381 bne .L763
|
||
5609:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10277 .loc 1 5609 21 discriminator 1 view .LVU3500
|
||
10278 028e 4FEA4805 lsl r5, r8, #1
|
||
10279 .LVL1199:
|
||
5609:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED;
|
||
10280 .loc 1 5609 14 discriminator 1 view .LVU3501
|
||
10281 0292 802D cmp r5, #128
|
||
10282 0294 AED9 bls .L704
|
||
5610:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10283 .loc 1 5610 13 view .LVU3502
|
||
10284 0296 0E20 movs r0, #14
|
||
10285 .LVL1200:
|
||
5610:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10286 .loc 1 5610 13 view .LVU3503
|
||
10287 0298 BEE1 b .L696
|
||
10288 .LVL1201:
|
||
10289 .L781:
|
||
5614:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10290 .loc 1 5614 13 view .LVU3504
|
||
10291 029a 0E20 movs r0, #14
|
||
10292 .LVL1202:
|
||
5614:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10293 .loc 1 5614 13 view .LVU3505
|
||
10294 029c BCE1 b .L696
|
||
10295 .L794:
|
||
10296 029e 00BF .align 2
|
||
10297 .L793:
|
||
10298 02a0 00000000 .word FatFs
|
||
10299 02a4 0A00FFFF .word -65526
|
||
10300 02a8 FFFFFE0F .word 268369919
|
||
10301 02ac 00000000 .word cst32.1
|
||
10302 02b0 00000000 .word cst.0
|
||
10303 .LVL1203:
|
||
10304 .L719:
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10305 .loc 1 5617 24 view .LVU3506
|
||
10306 02b4 CDF820C0 str ip, [sp, #32]
|
||
10307 02b8 7746 mov r7, lr
|
||
10308 02ba 0793 str r3, [sp, #28]
|
||
10309 02bc CDF81890 str r9, [sp, #24]
|
||
10310 02c0 049C ldr r4, [sp, #16]
|
||
10311 02c2 DDF81490 ldr r9, [sp, #20]
|
||
10312 .LVL1204:
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10313 .loc 1 5617 24 view .LVU3507
|
||
10314 02c6 0546 mov r5, r0
|
||
10315 .LVL1205:
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10316 .loc 1 5617 4 is_stmt 1 view .LVU3508
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10317 .loc 1 5617 24 is_stmt 0 view .LVU3509
|
||
10318 02c8 40F6F572 movw r2, #4085
|
||
10319 02cc BAF1010F cmp r10, #1
|
||
10320 02d0 14BF ite ne
|
||
ARM GAS /tmp/ccH7dUYB.s page 341
|
||
|
||
|
||
10321 02d2 0023 movne r3, #0
|
||
10322 .LVL1206:
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10323 .loc 1 5617 24 view .LVU3510
|
||
10324 02d4 0123 moveq r3, #1
|
||
10325 02d6 9042 cmp r0, r2
|
||
10326 02d8 98BF it ls
|
||
10327 02da 0023 movls r3, #0
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10328 .loc 1 5617 7 view .LVU3511
|
||
10329 02dc 002B cmp r3, #0
|
||
10330 02de 40F0CD81 bne .L765
|
||
10331 .LVL1207:
|
||
5620:Middlewares/Third_Party/FatFs/src/ff.c **** } while (1);
|
||
10332 .loc 1 5620 4 is_stmt 1 view .LVU3512
|
||
5628:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_JmpBoot, "\xEB\xFE\x90" "MSDOS5.0", 11);/* Boot jump code (x86), OEM name */
|
||
10333 .loc 1 5628 3 view .LVU3513
|
||
10334 02e2 BDF83620 ldrh r2, [sp, #54]
|
||
10335 02e6 0021 movs r1, #0
|
||
10336 02e8 3046 mov r0, r6
|
||
10337 .LVL1208:
|
||
5628:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_JmpBoot, "\xEB\xFE\x90" "MSDOS5.0", 11);/* Boot jump code (x86), OEM name */
|
||
10338 .loc 1 5628 3 is_stmt 0 view .LVU3514
|
||
10339 02ea FFF7FEFF bl mem_set
|
||
10340 .LVL1209:
|
||
5629:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_BytsPerSec, ss); /* Sector size [byte] */
|
||
10341 .loc 1 5629 3 is_stmt 1 view .LVU3515
|
||
10342 02ee 0B22 movs r2, #11
|
||
10343 02f0 D449 ldr r1, .L795
|
||
10344 02f2 3046 mov r0, r6
|
||
10345 02f4 FFF7FEFF bl mem_cpy
|
||
10346 .LVL1210:
|
||
5630:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_SecPerClus] = (BYTE)pau; /* Cluster size [sector] */
|
||
10347 .loc 1 5630 3 view .LVU3516
|
||
10348 02f8 BDF83610 ldrh r1, [sp, #54]
|
||
10349 02fc 06F10B00 add r0, r6, #11
|
||
10350 0300 FFF7FEFF bl st_word
|
||
10351 .LVL1211:
|
||
5631:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_RsvdSecCnt, (WORD)sz_rsv); /* Size of reserved area */
|
||
10352 .loc 1 5631 3 view .LVU3517
|
||
5631:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_RsvdSecCnt, (WORD)sz_rsv); /* Size of reserved area */
|
||
10353 .loc 1 5631 23 is_stmt 0 view .LVU3518
|
||
10354 0304 86F80D80 strb r8, [r6, #13]
|
||
5632:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BPB_NumFATs] = (BYTE)n_fats; /* Number of FATs */
|
||
10355 .loc 1 5632 3 is_stmt 1 view .LVU3519
|
||
10356 0308 B9B2 uxth r1, r7
|
||
10357 030a 06F10E00 add r0, r6, #14
|
||
10358 030e FFF7FEFF bl st_word
|
||
10359 .LVL1212:
|
||
5633:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_RootEntCnt, (WORD)((fmt == FS_FAT32) ? 0 : n_rootdir)); /* Number of root direc
|
||
10360 .loc 1 5633 3 view .LVU3520
|
||
5633:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_RootEntCnt, (WORD)((fmt == FS_FAT32) ? 0 : n_rootdir)); /* Number of root direc
|
||
10361 .loc 1 5633 20 is_stmt 0 view .LVU3521
|
||
10362 0312 0123 movs r3, #1
|
||
10363 0314 3374 strb r3, [r6, #16]
|
||
5634:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x10000) {
|
||
10364 .loc 1 5634 3 is_stmt 1 view .LVU3522
|
||
ARM GAS /tmp/ccH7dUYB.s page 342
|
||
|
||
|
||
10365 0316 06F11100 add r0, r6, #17
|
||
10366 031a BAF1030F cmp r10, #3
|
||
10367 031e 00F08680 beq .L786
|
||
5634:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x10000) {
|
||
10368 .loc 1 5634 3 is_stmt 0 discriminator 2 view .LVU3523
|
||
10369 0322 4FF40071 mov r1, #512
|
||
10370 .L722:
|
||
5634:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x10000) {
|
||
10371 .loc 1 5634 3 discriminator 4 view .LVU3524
|
||
10372 0326 FFF7FEFF bl st_word
|
||
10373 .LVL1213:
|
||
5635:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_TotSec16, (WORD)sz_vol); /* Volume size in 16-bit LBA */
|
||
10374 .loc 1 5635 3 is_stmt 1 view .LVU3525
|
||
5635:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_TotSec16, (WORD)sz_vol); /* Volume size in 16-bit LBA */
|
||
10375 .loc 1 5635 14 is_stmt 0 view .LVU3526
|
||
10376 032a 0B99 ldr r1, [sp, #44]
|
||
5635:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_TotSec16, (WORD)sz_vol); /* Volume size in 16-bit LBA */
|
||
10377 .loc 1 5635 6 view .LVU3527
|
||
10378 032c B1F5803F cmp r1, #65536
|
||
10379 0330 7FD2 bcs .L723
|
||
5636:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10380 .loc 1 5636 4 is_stmt 1 view .LVU3528
|
||
10381 0332 89B2 uxth r1, r1
|
||
10382 0334 06F11300 add r0, r6, #19
|
||
10383 0338 FFF7FEFF bl st_word
|
||
10384 .LVL1214:
|
||
10385 .L724:
|
||
5640:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_SecPerTrk, 63); /* Number of sectors per track (for int13) */
|
||
10386 .loc 1 5640 3 view .LVU3529
|
||
5640:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_SecPerTrk, 63); /* Number of sectors per track (for int13) */
|
||
10387 .loc 1 5640 18 is_stmt 0 view .LVU3530
|
||
10388 033c F823 movs r3, #248
|
||
10389 033e 7375 strb r3, [r6, #21]
|
||
5641:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_NumHeads, 255); /* Number of heads (for int13) */
|
||
10390 .loc 1 5641 3 is_stmt 1 view .LVU3531
|
||
10391 0340 3F21 movs r1, #63
|
||
10392 0342 06F11800 add r0, r6, #24
|
||
10393 0346 FFF7FEFF bl st_word
|
||
10394 .LVL1215:
|
||
5642:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_HiddSec, b_vol); /* Volume offset in the physical drive [sector] */
|
||
10395 .loc 1 5642 3 view .LVU3532
|
||
10396 034a FF21 movs r1, #255
|
||
10397 034c 06F11A00 add r0, r6, #26
|
||
10398 0350 FFF7FEFF bl st_word
|
||
10399 .LVL1216:
|
||
5643:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10400 .loc 1 5643 3 view .LVU3533
|
||
10401 0354 5946 mov r1, fp
|
||
10402 0356 06F11C00 add r0, r6, #28
|
||
10403 035a FFF7FEFF bl st_dword
|
||
10404 .LVL1217:
|
||
5644:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BS_VolID32, GET_FATTIME()); /* VSN */
|
||
10405 .loc 1 5644 3 view .LVU3534
|
||
5644:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BS_VolID32, GET_FATTIME()); /* VSN */
|
||
10406 .loc 1 5644 6 is_stmt 0 view .LVU3535
|
||
10407 035e BAF1030F cmp r10, #3
|
||
10408 0362 6BD0 beq .L787
|
||
ARM GAS /tmp/ccH7dUYB.s page 343
|
||
|
||
|
||
5654:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FATSz16, (WORD)sz_fat); /* FAT size [sector] */
|
||
10409 .loc 1 5654 4 is_stmt 1 view .LVU3536
|
||
10410 0364 FFF7FEFF bl get_fattime
|
||
10411 .LVL1218:
|
||
10412 0368 0146 mov r1, r0
|
||
5654:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FATSz16, (WORD)sz_fat); /* FAT size [sector] */
|
||
10413 .loc 1 5654 4 is_stmt 0 discriminator 1 view .LVU3537
|
||
10414 036a 06F12700 add r0, r6, #39
|
||
10415 036e FFF7FEFF bl st_dword
|
||
10416 .LVL1219:
|
||
5655:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_DrvNum] = 0x80; /* Drive number (for int13) */
|
||
10417 .loc 1 5655 4 is_stmt 1 view .LVU3538
|
||
10418 0372 BDF81C10 ldrh r1, [sp, #28]
|
||
10419 0376 06F11600 add r0, r6, #22
|
||
10420 037a FFF7FEFF bl st_word
|
||
10421 .LVL1220:
|
||
5656:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig] = 0x29; /* Extended boot signature */
|
||
10422 .loc 1 5656 4 view .LVU3539
|
||
5656:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig] = 0x29; /* Extended boot signature */
|
||
10423 .loc 1 5656 19 is_stmt 0 view .LVU3540
|
||
10424 037e 8023 movs r3, #128
|
||
10425 0380 86F82430 strb r3, [r6, #36]
|
||
5657:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_VolLab, "NO NAME " "FAT ", 19); /* Volume label, FAT signature */
|
||
10426 .loc 1 5657 4 is_stmt 1 view .LVU3541
|
||
5657:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_VolLab, "NO NAME " "FAT ", 19); /* Volume label, FAT signature */
|
||
10427 .loc 1 5657 20 is_stmt 0 view .LVU3542
|
||
10428 0384 2923 movs r3, #41
|
||
10429 0386 86F82630 strb r3, [r6, #38]
|
||
5658:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10430 .loc 1 5658 4 is_stmt 1 view .LVU3543
|
||
10431 038a 1322 movs r2, #19
|
||
10432 038c AE49 ldr r1, .L795+4
|
||
10433 038e 06F12B00 add r0, r6, #43
|
||
10434 0392 FFF7FEFF bl mem_cpy
|
||
10435 .LVL1221:
|
||
10436 .L726:
|
||
5660:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, b_vol, 1) != RES_OK) return FR_DISK_ERR; /* Write it to the VBR sector
|
||
10437 .loc 1 5660 3 view .LVU3544
|
||
10438 0396 06F5FF77 add r7, r6, #510
|
||
10439 .LVL1222:
|
||
5660:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, b_vol, 1) != RES_OK) return FR_DISK_ERR; /* Write it to the VBR sector
|
||
10440 .loc 1 5660 3 is_stmt 0 view .LVU3545
|
||
10441 039a 4AF65521 movw r1, #43605
|
||
10442 039e 3846 mov r0, r7
|
||
10443 03a0 FFF7FEFF bl st_word
|
||
10444 .LVL1223:
|
||
5661:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10445 .loc 1 5661 3 is_stmt 1 view .LVU3546
|
||
5661:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10446 .loc 1 5661 7 is_stmt 0 view .LVU3547
|
||
10447 03a4 0123 movs r3, #1
|
||
10448 03a6 5A46 mov r2, fp
|
||
10449 03a8 3146 mov r1, r6
|
||
10450 03aa 2046 mov r0, r4
|
||
10451 03ac FFF7FEFF bl disk_write
|
||
10452 .LVL1224:
|
||
5661:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 344
|
||
|
||
|
||
10453 .loc 1 5661 6 discriminator 1 view .LVU3548
|
||
10454 03b0 0028 cmp r0, #0
|
||
10455 03b2 40F06581 bne .L767
|
||
5664:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 6, 1); /* Write backup VBR (VBR + 6) */
|
||
10456 .loc 1 5664 3 is_stmt 1 view .LVU3549
|
||
5664:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 6, 1); /* Write backup VBR (VBR + 6) */
|
||
10457 .loc 1 5664 6 is_stmt 0 view .LVU3550
|
||
10458 03b6 BAF1030F cmp r10, #3
|
||
10459 03ba 67D0 beq .L788
|
||
10460 .L727:
|
||
5677:Middlewares/Third_Party/FatFs/src/ff.c **** sect = b_fat; /* FAT start sector */
|
||
10461 .loc 1 5677 3 is_stmt 1 view .LVU3551
|
||
10462 03bc 029A ldr r2, [sp, #8]
|
||
10463 03be 0021 movs r1, #0
|
||
10464 03c0 3046 mov r0, r6
|
||
10465 03c2 FFF7FEFF bl mem_set
|
||
10466 .LVL1225:
|
||
5678:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < n_fats; i++) { /* Initialize FATs each */
|
||
10467 .loc 1 5678 3 view .LVU3552
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10468 .loc 1 5679 3 view .LVU3553
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10469 .loc 1 5679 3 is_stmt 0 view .LVU3554
|
||
10470 03c6 4546 mov r5, r8
|
||
10471 .LVL1226:
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10472 .loc 1 5679 3 view .LVU3555
|
||
10473 03c8 0297 str r7, [sp, #8]
|
||
10474 .LVL1227:
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10475 .loc 1 5679 3 view .LVU3556
|
||
10476 03ca 069F ldr r7, [sp, #24]
|
||
10477 .LVL1228:
|
||
10478 .L728:
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10479 .loc 1 5679 17 is_stmt 1 discriminator 1 view .LVU3557
|
||
10480 03cc 019B ldr r3, [sp, #4]
|
||
10481 03ce 002B cmp r3, #0
|
||
10482 03d0 00F09080 beq .L733
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10483 .loc 1 5697 35 is_stmt 0 view .LVU3558
|
||
10484 03d4 A846 mov r8, r5
|
||
10485 03d6 0697 str r7, [sp, #24]
|
||
10486 .LVL1229:
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10487 .loc 1 5697 35 view .LVU3559
|
||
10488 03d8 029F ldr r7, [sp, #8]
|
||
10489 .LVL1230:
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10490 .loc 1 5697 3 is_stmt 1 view .LVU3560
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10491 .loc 1 5697 35 is_stmt 0 view .LVU3561
|
||
10492 03da BAF1030F cmp r10, #3
|
||
10493 03de 00F0C880 beq .L789
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10494 .loc 1 5697 35 view .LVU3562
|
||
10495 03e2 DDF82080 ldr r8, [sp, #32]
|
||
ARM GAS /tmp/ccH7dUYB.s page 345
|
||
|
||
|
||
10496 03e6 0197 str r7, [sp, #4]
|
||
10497 .LVL1231:
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10498 .loc 1 5697 35 view .LVU3563
|
||
10499 03e8 069F ldr r7, [sp, #24]
|
||
10500 .LVL1232:
|
||
10501 .L735:
|
||
5698:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect;
|
||
10502 .loc 1 5698 3 is_stmt 1 view .LVU3564
|
||
5699:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, (UINT)n) != RES_OK) return FR_DISK_ERR;
|
||
10503 .loc 1 5699 4 view .LVU3565
|
||
5699:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, (UINT)n) != RES_OK) return FR_DISK_ERR;
|
||
10504 .loc 1 5699 6 is_stmt 0 view .LVU3566
|
||
10505 03ea 4546 mov r5, r8
|
||
10506 03ec C845 cmp r8, r9
|
||
10507 03ee 28BF it cs
|
||
10508 03f0 4D46 movcs r5, r9
|
||
10509 .LVL1233:
|
||
5700:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
10510 .loc 1 5700 4 is_stmt 1 view .LVU3567
|
||
5700:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
10511 .loc 1 5700 8 is_stmt 0 view .LVU3568
|
||
10512 03f2 2B46 mov r3, r5
|
||
10513 03f4 3A46 mov r2, r7
|
||
10514 03f6 3146 mov r1, r6
|
||
10515 03f8 2046 mov r0, r4
|
||
10516 03fa FFF7FEFF bl disk_write
|
||
10517 .LVL1234:
|
||
5700:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
10518 .loc 1 5700 7 discriminator 1 view .LVU3569
|
||
10519 03fe 0028 cmp r0, #0
|
||
10520 0400 40F04281 bne .L770
|
||
5701:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
10521 .loc 1 5701 4 is_stmt 1 view .LVU3570
|
||
5701:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
10522 .loc 1 5701 9 is_stmt 0 view .LVU3571
|
||
10523 0404 2F44 add r7, r7, r5
|
||
10524 .LVL1235:
|
||
5701:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
10525 .loc 1 5701 15 is_stmt 1 view .LVU3572
|
||
5702:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10526 .loc 1 5702 12 view .LVU3573
|
||
10527 0406 B8EB0508 subs r8, r8, r5
|
||
10528 .LVL1236:
|
||
5702:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10529 .loc 1 5702 12 is_stmt 0 view .LVU3574
|
||
10530 040a EED1 bne .L735
|
||
5709:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x0C; /* FAT32X */
|
||
10531 .loc 1 5709 6 view .LVU3575
|
||
10532 040c 019F ldr r7, [sp, #4]
|
||
10533 .LVL1237:
|
||
5706:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x07; /* HPFS/NTFS/exFAT */
|
||
10534 .loc 1 5706 2 is_stmt 1 view .LVU3576
|
||
5709:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x0C; /* FAT32X */
|
||
10535 .loc 1 5709 3 view .LVU3577
|
||
5709:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x0C; /* FAT32X */
|
||
10536 .loc 1 5709 6 is_stmt 0 view .LVU3578
|
||
ARM GAS /tmp/ccH7dUYB.s page 346
|
||
|
||
|
||
10537 040e BAF1030F cmp r10, #3
|
||
10538 0412 00F0B480 beq .L771
|
||
5712:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x06; /* FAT12/16 (>=64KS) */
|
||
10539 .loc 1 5712 4 is_stmt 1 view .LVU3579
|
||
5712:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x06; /* FAT12/16 (>=64KS) */
|
||
10540 .loc 1 5712 15 is_stmt 0 view .LVU3580
|
||
10541 0416 0B9B ldr r3, [sp, #44]
|
||
5712:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x06; /* FAT12/16 (>=64KS) */
|
||
10542 .loc 1 5712 7 view .LVU3581
|
||
10543 0418 B3F5803F cmp r3, #65536
|
||
10544 041c 80F0F480 bcs .L772
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10545 .loc 1 5715 5 is_stmt 1 view .LVU3582
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10546 .loc 1 5715 9 is_stmt 0 view .LVU3583
|
||
10547 0420 BAF1020F cmp r10, #2
|
||
10548 0424 00F0A880 beq .L790
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10549 .loc 1 5715 9 discriminator 2 view .LVU3584
|
||
10550 0428 4FF00108 mov r8, #1
|
||
10551 .LVL1238:
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10552 .loc 1 5715 9 discriminator 2 view .LVU3585
|
||
10553 042c A9E0 b .L736
|
||
10554 .LVL1239:
|
||
10555 .L786:
|
||
5634:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x10000) {
|
||
10556 .loc 1 5634 3 discriminator 1 view .LVU3586
|
||
10557 042e 0021 movs r1, #0
|
||
10558 0430 79E7 b .L722
|
||
10559 .L723:
|
||
5638:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10560 .loc 1 5638 4 is_stmt 1 view .LVU3587
|
||
10561 0432 06F12000 add r0, r6, #32
|
||
10562 0436 FFF7FEFF bl st_dword
|
||
10563 .LVL1240:
|
||
10564 043a 7FE7 b .L724
|
||
10565 .L787:
|
||
5645:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_FATSz32, sz_fat); /* FAT size [sector] */
|
||
10566 .loc 1 5645 4 view .LVU3588
|
||
10567 043c FFF7FEFF bl get_fattime
|
||
10568 .LVL1241:
|
||
10569 0440 0146 mov r1, r0
|
||
5645:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_FATSz32, sz_fat); /* FAT size [sector] */
|
||
10570 .loc 1 5645 4 is_stmt 0 discriminator 1 view .LVU3589
|
||
10571 0442 06F14300 add r0, r6, #67
|
||
10572 0446 FFF7FEFF bl st_dword
|
||
10573 .LVL1242:
|
||
5646:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BPB_RootClus32, 2); /* Root directory cluster # (2) */
|
||
10574 .loc 1 5646 4 is_stmt 1 view .LVU3590
|
||
10575 044a 0799 ldr r1, [sp, #28]
|
||
10576 044c 06F12400 add r0, r6, #36
|
||
10577 0450 FFF7FEFF bl st_dword
|
||
10578 .LVL1243:
|
||
5647:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FSInfo32, 1); /* Offset of FSINFO sector (VBR + 1) */
|
||
10579 .loc 1 5647 4 view .LVU3591
|
||
10580 0454 0221 movs r1, #2
|
||
ARM GAS /tmp/ccH7dUYB.s page 347
|
||
|
||
|
||
10581 0456 06F12C00 add r0, r6, #44
|
||
10582 045a FFF7FEFF bl st_dword
|
||
10583 .LVL1244:
|
||
5648:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_BkBootSec32, 6); /* Offset of backup VBR (VBR + 6) */
|
||
10584 .loc 1 5648 4 view .LVU3592
|
||
10585 045e 0121 movs r1, #1
|
||
10586 0460 06F13000 add r0, r6, #48
|
||
10587 0464 FFF7FEFF bl st_word
|
||
10588 .LVL1245:
|
||
5649:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_DrvNum32] = 0x80; /* Drive number (for int13) */
|
||
10589 .loc 1 5649 4 view .LVU3593
|
||
10590 0468 0621 movs r1, #6
|
||
10591 046a 06F13200 add r0, r6, #50
|
||
10592 046e FFF7FEFF bl st_word
|
||
10593 .LVL1246:
|
||
5650:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig32] = 0x29; /* Extended boot signature */
|
||
10594 .loc 1 5650 4 view .LVU3594
|
||
5650:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig32] = 0x29; /* Extended boot signature */
|
||
10595 .loc 1 5650 21 is_stmt 0 view .LVU3595
|
||
10596 0472 8023 movs r3, #128
|
||
10597 0474 86F84030 strb r3, [r6, #64]
|
||
5651:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_VolLab32, "NO NAME " "FAT32 ", 19); /* Volume label, FAT signature */
|
||
10598 .loc 1 5651 4 is_stmt 1 view .LVU3596
|
||
5651:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(buf + BS_VolLab32, "NO NAME " "FAT32 ", 19); /* Volume label, FAT signature */
|
||
10599 .loc 1 5651 22 is_stmt 0 view .LVU3597
|
||
10600 0478 2923 movs r3, #41
|
||
10601 047a 86F84230 strb r3, [r6, #66]
|
||
5652:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10602 .loc 1 5652 4 is_stmt 1 view .LVU3598
|
||
10603 047e 1322 movs r2, #19
|
||
10604 0480 7249 ldr r1, .L795+8
|
||
10605 0482 06F14700 add r0, r6, #71
|
||
10606 0486 FFF7FEFF bl mem_cpy
|
||
10607 .LVL1247:
|
||
10608 048a 84E7 b .L726
|
||
10609 .LVL1248:
|
||
10610 .L788:
|
||
5665:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
10611 .loc 1 5665 4 view .LVU3599
|
||
10612 048c 0123 movs r3, #1
|
||
10613 048e 0BF10602 add r2, fp, #6
|
||
10614 0492 3146 mov r1, r6
|
||
10615 0494 2046 mov r0, r4
|
||
10616 0496 FFF7FEFF bl disk_write
|
||
10617 .LVL1249:
|
||
5666:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_LeadSig, 0x41615252);
|
||
10618 .loc 1 5666 4 view .LVU3600
|
||
10619 049a BDF83620 ldrh r2, [sp, #54]
|
||
10620 049e 0021 movs r1, #0
|
||
10621 04a0 3046 mov r0, r6
|
||
10622 04a2 FFF7FEFF bl mem_set
|
||
10623 .LVL1250:
|
||
5667:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_StrucSig, 0x61417272);
|
||
10624 .loc 1 5667 4 view .LVU3601
|
||
10625 04a6 6A49 ldr r1, .L795+12
|
||
10626 04a8 3046 mov r0, r6
|
||
10627 04aa FFF7FEFF bl st_dword
|
||
ARM GAS /tmp/ccH7dUYB.s page 348
|
||
|
||
|
||
10628 .LVL1251:
|
||
5668:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_Free_Count, n_clst - 1); /* Number of free clusters */
|
||
10629 .loc 1 5668 4 view .LVU3602
|
||
10630 04ae 6949 ldr r1, .L795+16
|
||
10631 04b0 06F5F270 add r0, r6, #484
|
||
10632 04b4 FFF7FEFF bl st_dword
|
||
10633 .LVL1252:
|
||
5669:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + FSI_Nxt_Free, 2); /* Last allocated cluster# */
|
||
10634 .loc 1 5669 4 view .LVU3603
|
||
10635 04b8 691E subs r1, r5, #1
|
||
10636 04ba 06F5F470 add r0, r6, #488
|
||
10637 04be FFF7FEFF bl st_dword
|
||
10638 .LVL1253:
|
||
5670:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_55AA, 0xAA55);
|
||
10639 .loc 1 5670 4 view .LVU3604
|
||
10640 04c2 0221 movs r1, #2
|
||
10641 04c4 06F5F670 add r0, r6, #492
|
||
10642 04c8 FFF7FEFF bl st_dword
|
||
10643 .LVL1254:
|
||
5671:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 7, 1); /* Write backup FSINFO (VBR + 7) */
|
||
10644 .loc 1 5671 4 view .LVU3605
|
||
10645 04cc 4AF65521 movw r1, #43605
|
||
10646 04d0 3846 mov r0, r7
|
||
10647 04d2 FFF7FEFF bl st_word
|
||
10648 .LVL1255:
|
||
5672:Middlewares/Third_Party/FatFs/src/ff.c **** disk_write(pdrv, buf, b_vol + 1, 1); /* Write original FSINFO (VBR + 1) */
|
||
10649 .loc 1 5672 4 view .LVU3606
|
||
10650 04d6 0123 movs r3, #1
|
||
10651 04d8 0BF10702 add r2, fp, #7
|
||
10652 04dc 3146 mov r1, r6
|
||
10653 04de 2046 mov r0, r4
|
||
10654 04e0 FFF7FEFF bl disk_write
|
||
10655 .LVL1256:
|
||
5673:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10656 .loc 1 5673 4 view .LVU3607
|
||
10657 04e4 0123 movs r3, #1
|
||
10658 04e6 0BEB0302 add r2, fp, r3
|
||
10659 04ea 3146 mov r1, r6
|
||
10660 04ec 2046 mov r0, r4
|
||
10661 04ee FFF7FEFF bl disk_write
|
||
10662 .LVL1257:
|
||
10663 04f2 63E7 b .L727
|
||
10664 .LVL1258:
|
||
10665 .L733:
|
||
5680:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 0, 0xFFFFFFF8); /* Entry 0 */
|
||
10666 .loc 1 5680 4 view .LVU3608
|
||
5680:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 0, 0xFFFFFFF8); /* Entry 0 */
|
||
10667 .loc 1 5680 7 is_stmt 0 view .LVU3609
|
||
10668 04f4 BAF1030F cmp r10, #3
|
||
10669 04f8 28D0 beq .L791
|
||
5685:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10670 .loc 1 5685 5 is_stmt 1 view .LVU3610
|
||
10671 04fa BAF1010F cmp r10, #1
|
||
10672 04fe 36D0 beq .L792
|
||
5685:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10673 .loc 1 5685 5 is_stmt 0 discriminator 2 view .LVU3611
|
||
10674 0500 6FF00701 mvn r1, #7
|
||
ARM GAS /tmp/ccH7dUYB.s page 349
|
||
|
||
|
||
10675 .L731:
|
||
5685:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10676 .loc 1 5685 5 discriminator 4 view .LVU3612
|
||
10677 0504 3046 mov r0, r6
|
||
10678 0506 FFF7FEFF bl st_dword
|
||
10679 .LVL1259:
|
||
10680 .L730:
|
||
5685:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10681 .loc 1 5685 5 discriminator 2 view .LVU3613
|
||
10682 050a DDF81C80 ldr r8, [sp, #28]
|
||
10683 050e CDF810A0 str r10, [sp, #16]
|
||
10684 .L732:
|
||
10685 .LVL1260:
|
||
5688:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect;
|
||
10686 .loc 1 5688 4 is_stmt 1 view .LVU3614
|
||
5689:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, (UINT)n) != RES_OK) return FR_DISK_ERR;
|
||
10687 .loc 1 5689 5 view .LVU3615
|
||
5689:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, (UINT)n) != RES_OK) return FR_DISK_ERR;
|
||
10688 .loc 1 5689 7 is_stmt 0 view .LVU3616
|
||
10689 0512 C246 mov r10, r8
|
||
10690 0514 C845 cmp r8, r9
|
||
10691 0516 28BF it cs
|
||
10692 0518 CA46 movcs r10, r9
|
||
10693 .LVL1261:
|
||
5690:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
10694 .loc 1 5690 5 is_stmt 1 view .LVU3617
|
||
5690:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
10695 .loc 1 5690 9 is_stmt 0 view .LVU3618
|
||
10696 051a 5346 mov r3, r10
|
||
10697 051c 3A46 mov r2, r7
|
||
10698 051e 3146 mov r1, r6
|
||
10699 0520 2046 mov r0, r4
|
||
10700 0522 FFF7FEFF bl disk_write
|
||
10701 .LVL1262:
|
||
5690:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
10702 .loc 1 5690 8 discriminator 1 view .LVU3619
|
||
10703 0526 0028 cmp r0, #0
|
||
10704 0528 40F0AC80 bne .L769
|
||
5691:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
10705 .loc 1 5691 5 is_stmt 1 view .LVU3620
|
||
10706 052c BDF83620 ldrh r2, [sp, #54]
|
||
10707 0530 0021 movs r1, #0
|
||
10708 0532 3046 mov r0, r6
|
||
10709 0534 FFF7FEFF bl mem_set
|
||
10710 .LVL1263:
|
||
5692:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
10711 .loc 1 5692 5 view .LVU3621
|
||
5692:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
10712 .loc 1 5692 10 is_stmt 0 view .LVU3622
|
||
10713 0538 5744 add r7, r7, r10
|
||
10714 .LVL1264:
|
||
5692:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect);
|
||
10715 .loc 1 5692 16 is_stmt 1 view .LVU3623
|
||
5693:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10716 .loc 1 5693 13 view .LVU3624
|
||
10717 053a B8EB0A08 subs r8, r8, r10
|
||
10718 .LVL1265:
|
||
ARM GAS /tmp/ccH7dUYB.s page 350
|
||
|
||
|
||
5693:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10719 .loc 1 5693 13 is_stmt 0 view .LVU3625
|
||
10720 053e E8D1 bne .L732
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10721 .loc 1 5679 28 discriminator 2 view .LVU3626
|
||
10722 0540 DDF810A0 ldr r10, [sp, #16]
|
||
10723 .LVL1266:
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10724 .loc 1 5679 28 is_stmt 1 discriminator 2 view .LVU3627
|
||
10725 0544 019B ldr r3, [sp, #4]
|
||
10726 0546 0133 adds r3, r3, #1
|
||
10727 0548 0193 str r3, [sp, #4]
|
||
10728 .LVL1267:
|
||
5679:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) {
|
||
10729 .loc 1 5679 28 is_stmt 0 discriminator 2 view .LVU3628
|
||
10730 054a 3FE7 b .L728
|
||
10731 .LVL1268:
|
||
10732 .L791:
|
||
5681:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 4, 0xFFFFFFFF); /* Entry 1 */
|
||
10733 .loc 1 5681 5 is_stmt 1 view .LVU3629
|
||
10734 054c 6FF00701 mvn r1, #7
|
||
10735 0550 3046 mov r0, r6
|
||
10736 0552 FFF7FEFF bl st_dword
|
||
10737 .LVL1269:
|
||
5682:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + 8, 0x0FFFFFFF); /* Entry 2 (root directory) */
|
||
10738 .loc 1 5682 5 view .LVU3630
|
||
10739 0556 4FF0FF31 mov r1, #-1
|
||
10740 055a 301D adds r0, r6, #4
|
||
10741 055c FFF7FEFF bl st_dword
|
||
10742 .LVL1270:
|
||
5683:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10743 .loc 1 5683 5 view .LVU3631
|
||
10744 0560 6FF07041 mvn r1, #-268435456
|
||
10745 0564 06F10800 add r0, r6, #8
|
||
10746 0568 FFF7FEFF bl st_dword
|
||
10747 .LVL1271:
|
||
10748 056c CDE7 b .L730
|
||
10749 .LVL1272:
|
||
10750 .L792:
|
||
5685:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10751 .loc 1 5685 5 is_stmt 0 discriminator 1 view .LVU3632
|
||
10752 056e 3A49 ldr r1, .L795+20
|
||
10753 0570 C8E7 b .L731
|
||
10754 .LVL1273:
|
||
10755 .L789:
|
||
5697:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
10756 .loc 1 5697 35 discriminator 1 view .LVU3633
|
||
10757 0572 0197 str r7, [sp, #4]
|
||
10758 0574 069F ldr r7, [sp, #24]
|
||
10759 0576 38E7 b .L735
|
||
10760 .LVL1274:
|
||
10761 .L790:
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10762 .loc 1 5715 9 discriminator 1 view .LVU3634
|
||
10763 0578 4FF00408 mov r8, #4
|
||
10764 .LVL1275:
|
||
5715:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 351
|
||
|
||
|
||
10765 .loc 1 5715 9 discriminator 1 view .LVU3635
|
||
10766 057c 01E0 b .L736
|
||
10767 .LVL1276:
|
||
10768 .L771:
|
||
5710:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10769 .loc 1 5710 8 view .LVU3636
|
||
10770 057e 4FF00C08 mov r8, #12
|
||
10771 .LVL1277:
|
||
10772 .L736:
|
||
5721:Middlewares/Third_Party/FatFs/src/ff.c **** /* Update system ID in the partition table */
|
||
10773 .loc 1 5721 2 is_stmt 1 view .LVU3637
|
||
5727:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
10774 .loc 1 5727 3 view .LVU3638
|
||
5727:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
10775 .loc 1 5727 6 is_stmt 0 view .LVU3639
|
||
10776 0582 039B ldr r3, [sp, #12]
|
||
10777 0584 C3BB cbnz r3, .L737
|
||
5728:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BS_55AA, 0xAA55); /* MBR signature */
|
||
10778 .loc 1 5728 4 is_stmt 1 view .LVU3640
|
||
10779 0586 BDF83620 ldrh r2, [sp, #54]
|
||
10780 058a 0021 movs r1, #0
|
||
10781 058c 3046 mov r0, r6
|
||
10782 058e FFF7FEFF bl mem_set
|
||
10783 .LVL1278:
|
||
5729:Middlewares/Third_Party/FatFs/src/ff.c **** pte = buf + MBR_Table; /* Create partition table for single partition in the drive */
|
||
10784 .loc 1 5729 4 view .LVU3641
|
||
10785 0592 4AF65521 movw r1, #43605
|
||
10786 0596 3846 mov r0, r7
|
||
10787 0598 FFF7FEFF bl st_word
|
||
10788 .LVL1279:
|
||
5730:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_Boot] = 0; /* Boot indicator */
|
||
10789 .loc 1 5730 4 view .LVU3642
|
||
5731:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StHead] = 1; /* Start head */
|
||
10790 .loc 1 5731 4 view .LVU3643
|
||
5731:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StHead] = 1; /* Start head */
|
||
10791 .loc 1 5731 18 is_stmt 0 view .LVU3644
|
||
10792 059c 0025 movs r5, #0
|
||
10793 .LVL1280:
|
||
5731:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StHead] = 1; /* Start head */
|
||
10794 .loc 1 5731 18 view .LVU3645
|
||
10795 059e 86F8BE51 strb r5, [r6, #446]
|
||
5732:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StSec] = 1; /* Start sector */
|
||
10796 .loc 1 5732 4 is_stmt 1 view .LVU3646
|
||
5732:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StSec] = 1; /* Start sector */
|
||
10797 .loc 1 5732 20 is_stmt 0 view .LVU3647
|
||
10798 05a2 0127 movs r7, #1
|
||
10799 05a4 86F8BF71 strb r7, [r6, #447]
|
||
5733:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StCyl] = 0; /* Start cylinder */
|
||
10800 .loc 1 5733 4 is_stmt 1 view .LVU3648
|
||
5733:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_StCyl] = 0; /* Start cylinder */
|
||
10801 .loc 1 5733 19 is_stmt 0 view .LVU3649
|
||
10802 05a8 86F8C071 strb r7, [r6, #448]
|
||
5734:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_System] = sys; /* System type */
|
||
10803 .loc 1 5734 4 is_stmt 1 view .LVU3650
|
||
5734:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_System] = sys; /* System type */
|
||
10804 .loc 1 5734 19 is_stmt 0 view .LVU3651
|
||
10805 05ac 86F8C151 strb r5, [r6, #449]
|
||
ARM GAS /tmp/ccH7dUYB.s page 352
|
||
|
||
|
||
5735:Middlewares/Third_Party/FatFs/src/ff.c **** n = (b_vol + sz_vol) / (63 * 255); /* (End CHS may be invalid) */
|
||
10806 .loc 1 5735 4 is_stmt 1 view .LVU3652
|
||
5735:Middlewares/Third_Party/FatFs/src/ff.c **** n = (b_vol + sz_vol) / (63 * 255); /* (End CHS may be invalid) */
|
||
10807 .loc 1 5735 20 is_stmt 0 view .LVU3653
|
||
10808 05b0 86F8C281 strb r8, [r6, #450]
|
||
5736:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdHead] = 254; /* End head */
|
||
10809 .loc 1 5736 4 is_stmt 1 view .LVU3654
|
||
5736:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdHead] = 254; /* End head */
|
||
10810 .loc 1 5736 15 is_stmt 0 view .LVU3655
|
||
10811 05b4 0B9B ldr r3, [sp, #44]
|
||
10812 05b6 5B44 add r3, r3, fp
|
||
5736:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdHead] = 254; /* End head */
|
||
10813 .loc 1 5736 6 view .LVU3656
|
||
10814 05b8 43F6C162 movw r2, #16065
|
||
10815 05bc B3FBF2F3 udiv r3, r3, r2
|
||
10816 .LVL1281:
|
||
5737:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdSec] = (BYTE)(n >> 2 | 63); /* End sector */
|
||
10817 .loc 1 5737 4 is_stmt 1 view .LVU3657
|
||
5737:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdSec] = (BYTE)(n >> 2 | 63); /* End sector */
|
||
10818 .loc 1 5737 20 is_stmt 0 view .LVU3658
|
||
10819 05c0 FE22 movs r2, #254
|
||
10820 05c2 86F8C321 strb r2, [r6, #451]
|
||
5738:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdCyl] = (BYTE)n; /* End cylinder */
|
||
10821 .loc 1 5738 4 is_stmt 1 view .LVU3659
|
||
5738:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdCyl] = (BYTE)n; /* End cylinder */
|
||
10822 .loc 1 5738 30 is_stmt 0 view .LVU3660
|
||
10823 05c6 9A08 lsrs r2, r3, #2
|
||
5738:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdCyl] = (BYTE)n; /* End cylinder */
|
||
10824 .loc 1 5738 21 view .LVU3661
|
||
10825 05c8 42F03F02 orr r2, r2, #63
|
||
5738:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_EdCyl] = (BYTE)n; /* End cylinder */
|
||
10826 .loc 1 5738 19 view .LVU3662
|
||
10827 05cc 86F8C421 strb r2, [r6, #452]
|
||
5739:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(pte + PTE_StLba, b_vol); /* Start offset in LBA */
|
||
10828 .loc 1 5739 4 is_stmt 1 view .LVU3663
|
||
5739:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(pte + PTE_StLba, b_vol); /* Start offset in LBA */
|
||
10829 .loc 1 5739 19 is_stmt 0 view .LVU3664
|
||
10830 05d0 86F8C531 strb r3, [r6, #453]
|
||
5740:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(pte + PTE_SizLba, sz_vol); /* Size in sectors */
|
||
10831 .loc 1 5740 4 is_stmt 1 view .LVU3665
|
||
10832 05d4 5946 mov r1, fp
|
||
10833 05d6 06F5E370 add r0, r6, #454
|
||
10834 05da FFF7FEFF bl st_dword
|
||
10835 .LVL1282:
|
||
5741:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, 0, 1) != RES_OK) return FR_DISK_ERR; /* Write it to the MBR */
|
||
10836 .loc 1 5741 4 view .LVU3666
|
||
10837 05de 0B99 ldr r1, [sp, #44]
|
||
10838 05e0 06F5E570 add r0, r6, #458
|
||
10839 05e4 FFF7FEFF bl st_dword
|
||
10840 .LVL1283:
|
||
5742:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10841 .loc 1 5742 4 view .LVU3667
|
||
5742:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10842 .loc 1 5742 8 is_stmt 0 view .LVU3668
|
||
10843 05e8 3B46 mov r3, r7
|
||
10844 05ea 2A46 mov r2, r5
|
||
10845 05ec 3146 mov r1, r6
|
||
ARM GAS /tmp/ccH7dUYB.s page 353
|
||
|
||
|
||
10846 05ee 2046 mov r0, r4
|
||
10847 05f0 FFF7FEFF bl disk_write
|
||
10848 .LVL1284:
|
||
5742:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10849 .loc 1 5742 7 discriminator 1 view .LVU3669
|
||
10850 05f4 0028 cmp r0, #0
|
||
10851 05f6 49D1 bne .L774
|
||
10852 .LVL1285:
|
||
10853 .L737:
|
||
5746:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10854 .loc 1 5746 2 is_stmt 1 view .LVU3670
|
||
5746:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10855 .loc 1 5746 6 is_stmt 0 view .LVU3671
|
||
10856 05f8 0022 movs r2, #0
|
||
10857 05fa 1146 mov r1, r2
|
||
10858 05fc 2046 mov r0, r4
|
||
10859 05fe FFF7FEFF bl disk_ioctl
|
||
10860 .LVL1286:
|
||
5746:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10861 .loc 1 5746 5 discriminator 1 view .LVU3672
|
||
10862 0602 48B1 cbz r0, .L696
|
||
5746:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10863 .loc 1 5746 55 discriminator 1 view .LVU3673
|
||
10864 0604 0120 movs r0, #1
|
||
10865 0606 07E0 b .L696
|
||
10866 .LVL1287:
|
||
10867 .L772:
|
||
5713:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10868 .loc 1 5713 9 view .LVU3674
|
||
10869 0608 4FF00608 mov r8, #6
|
||
10870 .LVL1288:
|
||
5713:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
10871 .loc 1 5713 9 view .LVU3675
|
||
10872 060c B9E7 b .L736
|
||
10873 .LVL1289:
|
||
10874 .L738:
|
||
5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */
|
||
10875 .loc 1 5328 22 discriminator 1 view .LVU3676
|
||
10876 060e 0B20 movs r0, #11
|
||
10877 .LVL1290:
|
||
5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */
|
||
10878 .loc 1 5328 22 discriminator 1 view .LVU3677
|
||
10879 0610 02E0 b .L696
|
||
10880 .LVL1291:
|
||
10881 .L739:
|
||
5335:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
|
||
10882 .loc 1 5335 32 discriminator 1 view .LVU3678
|
||
10883 0612 0320 movs r0, #3
|
||
10884 .LVL1292:
|
||
5335:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
|
||
10885 .loc 1 5335 32 discriminator 1 view .LVU3679
|
||
10886 0614 00E0 b .L696
|
||
10887 .LVL1293:
|
||
10888 .L740:
|
||
5336:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_BLOCK_SIZE, &sz_blk) != RES_OK || !sz_blk || sz_blk > 32768 || (sz_blk &
|
||
10889 .loc 1 5336 33 discriminator 1 view .LVU3680
|
||
10890 0616 0A20 movs r0, #10
|
||
ARM GAS /tmp/ccH7dUYB.s page 354
|
||
|
||
|
||
10891 .LVL1294:
|
||
10892 .L696:
|
||
5749:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10893 .loc 1 5749 1 view .LVU3681
|
||
10894 0618 0FB0 add sp, sp, #60
|
||
10895 .LCFI112:
|
||
10896 .cfi_remember_state
|
||
10897 .cfi_def_cfa_offset 36
|
||
10898 @ sp needed
|
||
10899 061a BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
10900 .LVL1295:
|
||
10901 .L741:
|
||
10902 .LCFI113:
|
||
10903 .cfi_restore_state
|
||
5339:Middlewares/Third_Party/FatFs/src/ff.c **** if (ss > _MAX_SS || ss < _MIN_SS || (ss & (ss - 1))) return FR_DISK_ERR;
|
||
10904 .loc 1 5339 63 discriminator 1 view .LVU3682
|
||
10905 061e 0120 movs r0, #1
|
||
10906 0620 FAE7 b .L696
|
||
10907 .L742:
|
||
5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else
|
||
10908 .loc 1 5340 62 discriminator 3 view .LVU3683
|
||
10909 0622 0120 movs r0, #1
|
||
10910 0624 F8E7 b .L696
|
||
10911 .L743:
|
||
10912 0626 0120 movs r0, #1
|
||
10913 0628 F6E7 b .L696
|
||
10914 .L744:
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
10915 .loc 1 5344 72 discriminator 7 view .LVU3684
|
||
10916 062a 1320 movs r0, #19
|
||
10917 062c F4E7 b .L696
|
||
10918 .L745:
|
||
10919 062e 1320 movs r0, #19
|
||
10920 0630 F2E7 b .L696
|
||
10921 .L746:
|
||
5344:Middlewares/Third_Party/FatFs/src/ff.c **** au /= ss; /* Cluster size in unit of sector */
|
||
10922 .loc 1 5344 72 discriminator 7 view .LVU3685
|
||
10923 0632 1320 movs r0, #19
|
||
10924 0634 F0E7 b .L696
|
||
10925 .LVL1296:
|
||
10926 .L747:
|
||
5351:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10927 .loc 1 5351 23 discriminator 1 view .LVU3686
|
||
10928 0636 0E20 movs r0, #14
|
||
10929 0638 EEE7 b .L696
|
||
10930 .LVL1297:
|
||
10931 .L748:
|
||
5364:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = (opt & FM_SFD) ? 0 : 63; /* Volume start sector */
|
||
10932 .loc 1 5364 69 discriminator 1 view .LVU3687
|
||
10933 063a 0120 movs r0, #1
|
||
10934 063c ECE7 b .L696
|
||
10935 .LVL1298:
|
||
10936 .L750:
|
||
5366:Middlewares/Third_Party/FatFs/src/ff.c **** sz_vol -= b_vol; /* Volume size */
|
||
10937 .loc 1 5366 30 discriminator 1 view .LVU3688
|
||
10938 063e 0E20 movs r0, #14
|
||
10939 0640 EAE7 b .L696
|
||
ARM GAS /tmp/ccH7dUYB.s page 355
|
||
|
||
|
||
10940 .L796:
|
||
10941 0642 00BF .align 2
|
||
10942 .L795:
|
||
10943 0644 00000000 .word .LC1
|
||
10944 0648 20000000 .word .LC3
|
||
10945 064c 0C000000 .word .LC2
|
||
10946 0650 52526141 .word 1096897106
|
||
10947 0654 72724161 .word 1631679090
|
||
10948 0658 F8FFFF00 .word 16777208
|
||
10949 .L751:
|
||
5369:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10950 .loc 1 5369 27 discriminator 1 view .LVU3689
|
||
10951 065c 0E20 movs r0, #14
|
||
10952 065e DBE7 b .L696
|
||
10953 .L752:
|
||
5378:Middlewares/Third_Party/FatFs/src/ff.c **** if (opt & FM_FAT32) { /* FAT32 possible? */
|
||
10954 .loc 1 5378 24 discriminator 1 view .LVU3690
|
||
10955 0660 1320 movs r0, #19
|
||
10956 0662 D9E7 b .L696
|
||
10957 .L755:
|
||
5384:Middlewares/Third_Party/FatFs/src/ff.c **** fmt = FS_FAT16;
|
||
10958 .loc 1 5384 31 discriminator 1 view .LVU3691
|
||
10959 0664 1320 movs r0, #19
|
||
10960 0666 D7E7 b .L696
|
||
10961 .LVL1299:
|
||
10962 .L757:
|
||
5564:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */
|
||
10963 .loc 1 5564 59 discriminator 1 view .LVU3692
|
||
10964 0668 0E20 movs r0, #14
|
||
10965 066a D5E7 b .L696
|
||
10966 .LVL1300:
|
||
10967 .L759:
|
||
5593:Middlewares/Third_Party/FatFs/src/ff.c **** n_clst = (sz_vol - sz_rsv - sz_fat * n_fats - sz_dir) / pau;
|
||
10968 .loc 1 5593 51 discriminator 1 view .LVU3693
|
||
10969 066c 0E20 movs r0, #14
|
||
10970 066e D3E7 b .L696
|
||
10971 .LVL1301:
|
||
10972 .L760:
|
||
5598:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10973 .loc 1 5598 13 view .LVU3694
|
||
10974 0670 0E20 movs r0, #14
|
||
10975 .LVL1302:
|
||
5598:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10976 .loc 1 5598 13 view .LVU3695
|
||
10977 0672 D1E7 b .L696
|
||
10978 .LVL1303:
|
||
10979 .L763:
|
||
5610:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10980 .loc 1 5610 13 view .LVU3696
|
||
10981 0674 0E20 movs r0, #14
|
||
10982 .LVL1304:
|
||
5610:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10983 .loc 1 5610 13 view .LVU3697
|
||
10984 0676 CFE7 b .L696
|
||
10985 .LVL1305:
|
||
10986 .L764:
|
||
5614:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
ARM GAS /tmp/ccH7dUYB.s page 356
|
||
|
||
|
||
10987 .loc 1 5614 13 view .LVU3698
|
||
10988 0678 0E20 movs r0, #14
|
||
10989 .LVL1306:
|
||
5614:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
10990 .loc 1 5614 13 view .LVU3699
|
||
10991 067a CDE7 b .L696
|
||
10992 .LVL1307:
|
||
10993 .L765:
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10994 .loc 1 5617 54 discriminator 1 view .LVU3700
|
||
10995 067c 0E20 movs r0, #14
|
||
10996 .LVL1308:
|
||
5617:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
10997 .loc 1 5617 54 discriminator 1 view .LVU3701
|
||
10998 067e CBE7 b .L696
|
||
10999 .LVL1309:
|
||
11000 .L767:
|
||
5661:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11001 .loc 1 5661 57 discriminator 1 view .LVU3702
|
||
11002 0680 0120 movs r0, #1
|
||
11003 0682 C9E7 b .L696
|
||
11004 .LVL1310:
|
||
11005 .L769:
|
||
5690:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(buf, 0, ss);
|
||
11006 .loc 1 5690 64 discriminator 1 view .LVU3703
|
||
11007 0684 0120 movs r0, #1
|
||
11008 0686 C7E7 b .L696
|
||
11009 .LVL1311:
|
||
11010 .L770:
|
||
5700:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n;
|
||
11011 .loc 1 5700 63 discriminator 1 view .LVU3704
|
||
11012 0688 0120 movs r0, #1
|
||
11013 068a C5E7 b .L696
|
||
11014 .LVL1312:
|
||
11015 .L774:
|
||
5742:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11016 .loc 1 5742 54 discriminator 1 view .LVU3705
|
||
11017 068c 0120 movs r0, #1
|
||
11018 068e C3E7 b .L696
|
||
11019 .cfi_endproc
|
||
11020 .LFE1237:
|
||
11022 .section .text.f_gets,"ax",%progbits
|
||
11023 .align 1
|
||
11024 .global f_gets
|
||
11025 .syntax unified
|
||
11026 .thumb
|
||
11027 .thumb_func
|
||
11029 f_gets:
|
||
11030 .LVL1313:
|
||
11031 .LFB1238:
|
||
5835:Middlewares/Third_Party/FatFs/src/ff.c **** int n = 0;
|
||
11032 .loc 1 5835 1 is_stmt 1 view -0
|
||
11033 .cfi_startproc
|
||
11034 @ args = 0, pretend = 0, frame = 8
|
||
11035 @ frame_needed = 0, uses_anonymous_args = 0
|
||
5835:Middlewares/Third_Party/FatFs/src/ff.c **** int n = 0;
|
||
11036 .loc 1 5835 1 is_stmt 0 view .LVU3707
|
||
ARM GAS /tmp/ccH7dUYB.s page 357
|
||
|
||
|
||
11037 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
|
||
11038 .LCFI114:
|
||
11039 .cfi_def_cfa_offset 24
|
||
11040 .cfi_offset 4, -24
|
||
11041 .cfi_offset 5, -20
|
||
11042 .cfi_offset 6, -16
|
||
11043 .cfi_offset 7, -12
|
||
11044 .cfi_offset 8, -8
|
||
11045 .cfi_offset 14, -4
|
||
11046 0004 82B0 sub sp, sp, #8
|
||
11047 .LCFI115:
|
||
11048 .cfi_def_cfa_offset 32
|
||
11049 0006 8046 mov r8, r0
|
||
11050 0008 0E46 mov r6, r1
|
||
11051 000a 1746 mov r7, r2
|
||
5836:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c, *p = buff;
|
||
11052 .loc 1 5836 2 is_stmt 1 view .LVU3708
|
||
11053 .LVL1314:
|
||
5837:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE s[2];
|
||
11054 .loc 1 5837 2 view .LVU3709
|
||
5838:Middlewares/Third_Party/FatFs/src/ff.c **** UINT rc;
|
||
11055 .loc 1 5838 2 view .LVU3710
|
||
5839:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11056 .loc 1 5839 2 view .LVU3711
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11057 .loc 1 5842 2 view .LVU3712
|
||
5837:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE s[2];
|
||
11058 .loc 1 5837 12 is_stmt 0 view .LVU3713
|
||
11059 000c 0446 mov r4, r0
|
||
5836:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c, *p = buff;
|
||
11060 .loc 1 5836 6 view .LVU3714
|
||
11061 000e 0025 movs r5, #0
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11062 .loc 1 5842 8 view .LVU3715
|
||
11063 0010 01E0 b .L798
|
||
11064 .LVL1315:
|
||
11065 .L803:
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11066 .loc 1 5842 8 view .LVU3716
|
||
11067 0012 A446 mov ip, r4
|
||
11068 .LVL1316:
|
||
11069 .L800:
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11070 .loc 1 5842 8 view .LVU3717
|
||
11071 0014 6446 mov r4, ip
|
||
11072 .LVL1317:
|
||
11073 .L798:
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11074 .loc 1 5842 11 is_stmt 1 view .LVU3718
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11075 .loc 1 5842 17 is_stmt 0 view .LVU3719
|
||
11076 0016 731E subs r3, r6, #1
|
||
5842:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE
|
||
11077 .loc 1 5842 11 view .LVU3720
|
||
11078 0018 AB42 cmp r3, r5
|
||
11079 001a 13DD ble .L799
|
||
5887:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break;
|
||
ARM GAS /tmp/ccH7dUYB.s page 358
|
||
|
||
|
||
11080 .loc 1 5887 3 is_stmt 1 view .LVU3721
|
||
11081 001c 6B46 mov r3, sp
|
||
11082 001e 0122 movs r2, #1
|
||
11083 0020 01A9 add r1, sp, #4
|
||
11084 0022 3846 mov r0, r7
|
||
11085 0024 FFF7FEFF bl f_read
|
||
11086 .LVL1318:
|
||
5888:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0];
|
||
11087 .loc 1 5888 3 view .LVU3722
|
||
5888:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0];
|
||
11088 .loc 1 5888 10 is_stmt 0 view .LVU3723
|
||
11089 0028 009B ldr r3, [sp]
|
||
5888:Middlewares/Third_Party/FatFs/src/ff.c **** c = s[0];
|
||
11090 .loc 1 5888 6 view .LVU3724
|
||
11091 002a 012B cmp r3, #1
|
||
11092 002c 0AD1 bne .L799
|
||
5889:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
11093 .loc 1 5889 3 is_stmt 1 view .LVU3725
|
||
5889:Middlewares/Third_Party/FatFs/src/ff.c **** #endif
|
||
11094 .loc 1 5889 5 is_stmt 0 view .LVU3726
|
||
11095 002e 9DF80430 ldrb r3, [sp, #4] @ zero_extendqisi2
|
||
11096 .LVL1319:
|
||
5891:Middlewares/Third_Party/FatFs/src/ff.c **** *p++ = c;
|
||
11097 .loc 1 5891 3 is_stmt 1 view .LVU3727
|
||
5891:Middlewares/Third_Party/FatFs/src/ff.c **** *p++ = c;
|
||
11098 .loc 1 5891 6 is_stmt 0 view .LVU3728
|
||
11099 0032 0D2B cmp r3, #13
|
||
11100 0034 EDD0 beq .L803
|
||
5892:Middlewares/Third_Party/FatFs/src/ff.c **** n++;
|
||
11101 .loc 1 5892 3 is_stmt 1 view .LVU3729
|
||
5892:Middlewares/Third_Party/FatFs/src/ff.c **** n++;
|
||
11102 .loc 1 5892 5 is_stmt 0 view .LVU3730
|
||
11103 0036 A446 mov ip, r4
|
||
11104 .LVL1320:
|
||
5892:Middlewares/Third_Party/FatFs/src/ff.c **** n++;
|
||
11105 .loc 1 5892 8 view .LVU3731
|
||
11106 0038 0CF8013B strb r3, [ip], #1
|
||
11107 .LVL1321:
|
||
5893:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '\n') break; /* Break on EOL */
|
||
11108 .loc 1 5893 3 is_stmt 1 view .LVU3732
|
||
5893:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '\n') break; /* Break on EOL */
|
||
11109 .loc 1 5893 4 is_stmt 0 view .LVU3733
|
||
11110 003c 0135 adds r5, r5, #1
|
||
11111 .LVL1322:
|
||
5894:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11112 .loc 1 5894 3 is_stmt 1 view .LVU3734
|
||
5894:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11113 .loc 1 5894 6 is_stmt 0 view .LVU3735
|
||
11114 003e 0A2B cmp r3, #10
|
||
11115 0040 E8D1 bne .L800
|
||
5892:Middlewares/Third_Party/FatFs/src/ff.c **** n++;
|
||
11116 .loc 1 5892 5 view .LVU3736
|
||
11117 0042 6446 mov r4, ip
|
||
11118 .LVL1323:
|
||
11119 .L799:
|
||
5896:Middlewares/Third_Party/FatFs/src/ff.c **** return n ? buff : 0; /* When no data read (eof or error), return with error. */
|
||
11120 .loc 1 5896 2 is_stmt 1 view .LVU3737
|
||
ARM GAS /tmp/ccH7dUYB.s page 359
|
||
|
||
|
||
5896:Middlewares/Third_Party/FatFs/src/ff.c **** return n ? buff : 0; /* When no data read (eof or error), return with error. */
|
||
11121 .loc 1 5896 5 is_stmt 0 view .LVU3738
|
||
11122 0044 0023 movs r3, #0
|
||
11123 0046 2370 strb r3, [r4]
|
||
5897:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11124 .loc 1 5897 2 is_stmt 1 view .LVU3739
|
||
5897:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11125 .loc 1 5897 18 is_stmt 0 view .LVU3740
|
||
11126 0048 1DB1 cbz r5, .L805
|
||
5897:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11127 .loc 1 5897 18 discriminator 1 view .LVU3741
|
||
11128 004a 4046 mov r0, r8
|
||
11129 .L797:
|
||
5898:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11130 .loc 1 5898 1 view .LVU3742
|
||
11131 004c 02B0 add sp, sp, #8
|
||
11132 .LCFI116:
|
||
11133 .cfi_remember_state
|
||
11134 .cfi_def_cfa_offset 24
|
||
11135 @ sp needed
|
||
11136 004e BDE8F081 pop {r4, r5, r6, r7, r8, pc}
|
||
11137 .LVL1324:
|
||
11138 .L805:
|
||
11139 .LCFI117:
|
||
11140 .cfi_restore_state
|
||
5897:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11141 .loc 1 5897 18 discriminator 2 view .LVU3743
|
||
11142 0052 0020 movs r0, #0
|
||
5897:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11143 .loc 1 5897 18 view .LVU3744
|
||
11144 0054 FAE7 b .L797
|
||
11145 .cfi_endproc
|
||
11146 .LFE1238:
|
||
11148 .section .text.f_putc,"ax",%progbits
|
||
11149 .align 1
|
||
11150 .global f_putc
|
||
11151 .syntax unified
|
||
11152 .thumb
|
||
11153 .thumb_func
|
||
11155 f_putc:
|
||
11156 .LVL1325:
|
||
11157 .LFB1242:
|
||
5995:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5996:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5997:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
5998:Middlewares/Third_Party/FatFs/src/ff.c **** int f_putc (
|
||
5999:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c, /* A character to be output */
|
||
6000:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp /* Pointer to the file object */
|
||
6001:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
6002:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
11158 .loc 1 6002 1 is_stmt 1 view -0
|
||
11159 .cfi_startproc
|
||
11160 @ args = 0, pretend = 0, frame = 80
|
||
11161 @ frame_needed = 0, uses_anonymous_args = 0
|
||
11162 .loc 1 6002 1 is_stmt 0 view .LVU3746
|
||
11163 0000 10B5 push {r4, lr}
|
||
11164 .LCFI118:
|
||
ARM GAS /tmp/ccH7dUYB.s page 360
|
||
|
||
|
||
11165 .cfi_def_cfa_offset 8
|
||
11166 .cfi_offset 4, -8
|
||
11167 .cfi_offset 14, -4
|
||
11168 0002 94B0 sub sp, sp, #80
|
||
11169 .LCFI119:
|
||
11170 .cfi_def_cfa_offset 88
|
||
11171 0004 0446 mov r4, r0
|
||
6003:Middlewares/Third_Party/FatFs/src/ff.c **** putbuff pb;
|
||
11172 .loc 1 6003 2 is_stmt 1 view .LVU3747
|
||
6004:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6005:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6006:Middlewares/Third_Party/FatFs/src/ff.c **** putc_init(&pb, fp);
|
||
11173 .loc 1 6006 2 view .LVU3748
|
||
11174 0006 01A8 add r0, sp, #4
|
||
11175 .LVL1326:
|
||
11176 .loc 1 6006 2 is_stmt 0 view .LVU3749
|
||
11177 0008 FFF7FEFF bl putc_init
|
||
11178 .LVL1327:
|
||
6007:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(&pb, c); /* Put the character */
|
||
11179 .loc 1 6007 2 is_stmt 1 view .LVU3750
|
||
11180 000c 2146 mov r1, r4
|
||
11181 000e 01A8 add r0, sp, #4
|
||
11182 0010 FFF7FEFF bl putc_bfd
|
||
11183 .LVL1328:
|
||
6008:Middlewares/Third_Party/FatFs/src/ff.c **** return putc_flush(&pb);
|
||
11184 .loc 1 6008 2 view .LVU3751
|
||
11185 .loc 1 6008 9 is_stmt 0 view .LVU3752
|
||
11186 0014 01A8 add r0, sp, #4
|
||
11187 0016 FFF7FEFF bl putc_flush
|
||
11188 .LVL1329:
|
||
6009:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11189 .loc 1 6009 1 view .LVU3753
|
||
11190 001a 14B0 add sp, sp, #80
|
||
11191 .LCFI120:
|
||
11192 .cfi_def_cfa_offset 8
|
||
11193 @ sp needed
|
||
11194 001c 10BD pop {r4, pc}
|
||
11195 .loc 1 6009 1 view .LVU3754
|
||
11196 .cfi_endproc
|
||
11197 .LFE1242:
|
||
11199 .section .text.f_puts,"ax",%progbits
|
||
11200 .align 1
|
||
11201 .global f_puts
|
||
11202 .syntax unified
|
||
11203 .thumb
|
||
11204 .thumb_func
|
||
11206 f_puts:
|
||
11207 .LVL1330:
|
||
11208 .LFB1243:
|
||
6010:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6011:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6012:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6013:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6014:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
6015:Middlewares/Third_Party/FatFs/src/ff.c **** /* Put a string to the file */
|
||
6016:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
6017:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
ARM GAS /tmp/ccH7dUYB.s page 361
|
||
|
||
|
||
6018:Middlewares/Third_Party/FatFs/src/ff.c **** int f_puts (
|
||
6019:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* str, /* Pointer to the string to be output */
|
||
6020:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp /* Pointer to the file object */
|
||
6021:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
6022:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
11209 .loc 1 6022 1 is_stmt 1 view -0
|
||
11210 .cfi_startproc
|
||
11211 @ args = 0, pretend = 0, frame = 80
|
||
11212 @ frame_needed = 0, uses_anonymous_args = 0
|
||
11213 .loc 1 6022 1 is_stmt 0 view .LVU3756
|
||
11214 0000 10B5 push {r4, lr}
|
||
11215 .LCFI121:
|
||
11216 .cfi_def_cfa_offset 8
|
||
11217 .cfi_offset 4, -8
|
||
11218 .cfi_offset 14, -4
|
||
11219 0002 94B0 sub sp, sp, #80
|
||
11220 .LCFI122:
|
||
11221 .cfi_def_cfa_offset 88
|
||
11222 0004 0446 mov r4, r0
|
||
6023:Middlewares/Third_Party/FatFs/src/ff.c **** putbuff pb;
|
||
11223 .loc 1 6023 2 is_stmt 1 view .LVU3757
|
||
6024:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6025:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6026:Middlewares/Third_Party/FatFs/src/ff.c **** putc_init(&pb, fp);
|
||
11224 .loc 1 6026 2 view .LVU3758
|
||
11225 0006 01A8 add r0, sp, #4
|
||
11226 .LVL1331:
|
||
11227 .loc 1 6026 2 is_stmt 0 view .LVU3759
|
||
11228 0008 FFF7FEFF bl putc_init
|
||
11229 .LVL1332:
|
||
6027:Middlewares/Third_Party/FatFs/src/ff.c **** while (*str) putc_bfd(&pb, *str++); /* Put the string */
|
||
11230 .loc 1 6027 2 is_stmt 1 view .LVU3760
|
||
11231 .loc 1 6027 8 is_stmt 0 view .LVU3761
|
||
11232 000c 03E0 b .L810
|
||
11233 .L811:
|
||
11234 .loc 1 6027 15 is_stmt 1 discriminator 2 view .LVU3762
|
||
11235 .loc 1 6027 33 is_stmt 0 discriminator 2 view .LVU3763
|
||
11236 000e 0134 adds r4, r4, #1
|
||
11237 .LVL1333:
|
||
11238 .loc 1 6027 15 discriminator 2 view .LVU3764
|
||
11239 0010 01A8 add r0, sp, #4
|
||
11240 0012 FFF7FEFF bl putc_bfd
|
||
11241 .LVL1334:
|
||
11242 .L810:
|
||
11243 .loc 1 6027 9 is_stmt 1 discriminator 1 view .LVU3765
|
||
11244 0016 2178 ldrb r1, [r4] @ zero_extendqisi2
|
||
11245 0018 0029 cmp r1, #0
|
||
11246 001a F8D1 bne .L811
|
||
6028:Middlewares/Third_Party/FatFs/src/ff.c **** return putc_flush(&pb);
|
||
11247 .loc 1 6028 2 view .LVU3766
|
||
11248 .loc 1 6028 9 is_stmt 0 view .LVU3767
|
||
11249 001c 01A8 add r0, sp, #4
|
||
11250 001e FFF7FEFF bl putc_flush
|
||
11251 .LVL1335:
|
||
6029:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11252 .loc 1 6029 1 view .LVU3768
|
||
11253 0022 14B0 add sp, sp, #80
|
||
ARM GAS /tmp/ccH7dUYB.s page 362
|
||
|
||
|
||
11254 .LCFI123:
|
||
11255 .cfi_def_cfa_offset 8
|
||
11256 @ sp needed
|
||
11257 0024 10BD pop {r4, pc}
|
||
11258 .loc 1 6029 1 view .LVU3769
|
||
11259 .cfi_endproc
|
||
11260 .LFE1243:
|
||
11262 .section .text.f_printf,"ax",%progbits
|
||
11263 .align 1
|
||
11264 .global f_printf
|
||
11265 .syntax unified
|
||
11266 .thumb
|
||
11267 .thumb_func
|
||
11269 f_printf:
|
||
11270 .LVL1336:
|
||
11271 .LFB1244:
|
||
6030:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6031:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6032:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6033:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6034:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
6035:Middlewares/Third_Party/FatFs/src/ff.c **** /* Put a formatted string to the file */
|
||
6036:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/
|
||
6037:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6038:Middlewares/Third_Party/FatFs/src/ff.c **** int f_printf (
|
||
6039:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */
|
||
6040:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* fmt, /* Pointer to the format string */
|
||
6041:Middlewares/Third_Party/FatFs/src/ff.c **** ... /* Optional arguments... */
|
||
6042:Middlewares/Third_Party/FatFs/src/ff.c **** )
|
||
6043:Middlewares/Third_Party/FatFs/src/ff.c **** {
|
||
11272 .loc 1 6043 1 is_stmt 1 view -0
|
||
11273 .cfi_startproc
|
||
11274 @ args = 4, pretend = 12, frame = 112
|
||
11275 @ frame_needed = 0, uses_anonymous_args = 1
|
||
11276 .loc 1 6043 1 is_stmt 0 view .LVU3771
|
||
11277 0000 0EB4 push {r1, r2, r3}
|
||
11278 .LCFI124:
|
||
11279 .cfi_def_cfa_offset 12
|
||
11280 .cfi_offset 1, -12
|
||
11281 .cfi_offset 2, -8
|
||
11282 .cfi_offset 3, -4
|
||
11283 0002 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
11284 .LCFI125:
|
||
11285 .cfi_def_cfa_offset 44
|
||
11286 .cfi_offset 4, -44
|
||
11287 .cfi_offset 5, -40
|
||
11288 .cfi_offset 6, -36
|
||
11289 .cfi_offset 7, -32
|
||
11290 .cfi_offset 8, -28
|
||
11291 .cfi_offset 9, -24
|
||
11292 .cfi_offset 10, -20
|
||
11293 .cfi_offset 14, -16
|
||
11294 0006 9DB0 sub sp, sp, #116
|
||
11295 .LCFI126:
|
||
11296 .cfi_def_cfa_offset 160
|
||
11297 0008 0146 mov r1, r0
|
||
11298 000a 25AC add r4, sp, #148
|
||
ARM GAS /tmp/ccH7dUYB.s page 363
|
||
|
||
|
||
11299 000c 54F8045B ldr r5, [r4], #4
|
||
6044:Middlewares/Third_Party/FatFs/src/ff.c **** va_list arp;
|
||
11300 .loc 1 6044 2 is_stmt 1 view .LVU3772
|
||
6045:Middlewares/Third_Party/FatFs/src/ff.c **** putbuff pb;
|
||
11301 .loc 1 6045 2 view .LVU3773
|
||
6046:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE f, r;
|
||
11302 .loc 1 6046 2 view .LVU3774
|
||
6047:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i, j, w;
|
||
11303 .loc 1 6047 2 view .LVU3775
|
||
6048:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD v;
|
||
11304 .loc 1 6048 2 view .LVU3776
|
||
6049:Middlewares/Third_Party/FatFs/src/ff.c **** TCHAR c, d, str[32], *p;
|
||
11305 .loc 1 6049 2 view .LVU3777
|
||
6050:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6051:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6052:Middlewares/Third_Party/FatFs/src/ff.c **** putc_init(&pb, fp);
|
||
11306 .loc 1 6052 2 view .LVU3778
|
||
11307 0010 08A8 add r0, sp, #32
|
||
11308 .LVL1337:
|
||
11309 .loc 1 6052 2 is_stmt 0 view .LVU3779
|
||
11310 0012 FFF7FEFF bl putc_init
|
||
11311 .LVL1338:
|
||
6053:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6054:Middlewares/Third_Party/FatFs/src/ff.c **** va_start(arp, fmt);
|
||
11312 .loc 1 6054 2 is_stmt 1 view .LVU3780
|
||
11313 0016 1B94 str r4, [sp, #108]
|
||
11314 .LVL1339:
|
||
11315 .L814:
|
||
6055:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6056:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) {
|
||
11316 .loc 1 6056 2 view .LVU3781
|
||
6057:Middlewares/Third_Party/FatFs/src/ff.c **** c = *fmt++;
|
||
11317 .loc 1 6057 3 view .LVU3782
|
||
11318 .loc 1 6057 11 is_stmt 0 view .LVU3783
|
||
11319 0018 2C46 mov r4, r5
|
||
11320 .LVL1340:
|
||
11321 .loc 1 6057 5 view .LVU3784
|
||
11322 001a 14F8011B ldrb r1, [r4], #1 @ zero_extendqisi2
|
||
11323 .LVL1341:
|
||
6058:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) break; /* End of string */
|
||
11324 .loc 1 6058 3 is_stmt 1 view .LVU3785
|
||
11325 .loc 1 6058 6 is_stmt 0 view .LVU3786
|
||
11326 001e 0029 cmp r1, #0
|
||
11327 0020 00F00881 beq .L815
|
||
6059:Middlewares/Third_Party/FatFs/src/ff.c **** if (c != '%') { /* Non escape character */
|
||
11328 .loc 1 6059 3 is_stmt 1 view .LVU3787
|
||
11329 .loc 1 6059 6 is_stmt 0 view .LVU3788
|
||
11330 0024 2529 cmp r1, #37
|
||
11331 0026 04D0 beq .L816
|
||
6060:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(&pb, c);
|
||
11332 .loc 1 6060 4 is_stmt 1 view .LVU3789
|
||
11333 0028 08A8 add r0, sp, #32
|
||
11334 002a FFF7FEFF bl putc_bfd
|
||
11335 .LVL1342:
|
||
6061:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
11336 .loc 1 6061 4 view .LVU3790
|
||
6057:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) break; /* End of string */
|
||
ARM GAS /tmp/ccH7dUYB.s page 364
|
||
|
||
|
||
11337 .loc 1 6057 11 is_stmt 0 view .LVU3791
|
||
11338 002e 2546 mov r5, r4
|
||
11339 .loc 1 6061 4 view .LVU3792
|
||
11340 0030 F2E7 b .L814
|
||
11341 .LVL1343:
|
||
11342 .L816:
|
||
6062:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6063:Middlewares/Third_Party/FatFs/src/ff.c **** w = f = 0;
|
||
11343 .loc 1 6063 3 is_stmt 1 view .LVU3793
|
||
6064:Middlewares/Third_Party/FatFs/src/ff.c **** c = *fmt++;
|
||
11344 .loc 1 6064 3 view .LVU3794
|
||
11345 .loc 1 6064 11 is_stmt 0 view .LVU3795
|
||
11346 0032 AB1C adds r3, r5, #2
|
||
11347 .LVL1344:
|
||
11348 .loc 1 6064 5 view .LVU3796
|
||
11349 0034 2178 ldrb r1, [r4] @ zero_extendqisi2
|
||
11350 .LVL1345:
|
||
6065:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '0') { /* Flag: '0' padding */
|
||
11351 .loc 1 6065 3 is_stmt 1 view .LVU3797
|
||
11352 .loc 1 6065 6 is_stmt 0 view .LVU3798
|
||
11353 0036 3029 cmp r1, #48
|
||
11354 0038 05D0 beq .L865
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
6067:Middlewares/Third_Party/FatFs/src/ff.c **** } else {
|
||
6068:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '-') { /* Flag: left justified */
|
||
11355 .loc 1 6068 4 is_stmt 1 view .LVU3799
|
||
11356 .loc 1 6068 7 is_stmt 0 view .LVU3800
|
||
11357 003a 2D29 cmp r1, #45
|
||
11358 003c 07D0 beq .L866
|
||
6064:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == '0') { /* Flag: '0' padding */
|
||
11359 .loc 1 6064 11 view .LVU3801
|
||
11360 003e 1D46 mov r5, r3
|
||
6063:Middlewares/Third_Party/FatFs/src/ff.c **** c = *fmt++;
|
||
11361 .loc 1 6063 9 view .LVU3802
|
||
11362 0040 0026 movs r6, #0
|
||
11363 .LVL1346:
|
||
11364 .L819:
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
11365 .loc 1 6066 6 view .LVU3803
|
||
11366 0042 0024 movs r4, #0
|
||
11367 0044 0EE0 b .L820
|
||
11368 .LVL1347:
|
||
11369 .L865:
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
11370 .loc 1 6066 4 is_stmt 1 view .LVU3804
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
11371 .loc 1 6066 11 view .LVU3805
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
11372 .loc 1 6066 19 is_stmt 0 view .LVU3806
|
||
11373 0046 0335 adds r5, r5, #3
|
||
11374 .LVL1348:
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
11375 .loc 1 6066 13 view .LVU3807
|
||
11376 0048 6178 ldrb r1, [r4, #1] @ zero_extendqisi2
|
||
11377 .LVL1349:
|
||
6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++;
|
||
11378 .loc 1 6066 6 view .LVU3808
|
||
ARM GAS /tmp/ccH7dUYB.s page 365
|
||
|
||
|
||
11379 004a 0126 movs r6, #1
|
||
11380 004c F9E7 b .L819
|
||
11381 .LVL1350:
|
||
11382 .L866:
|
||
6069:Middlewares/Third_Party/FatFs/src/ff.c **** f = 2; c = *fmt++;
|
||
11383 .loc 1 6069 5 is_stmt 1 view .LVU3809
|
||
11384 .loc 1 6069 12 view .LVU3810
|
||
11385 .loc 1 6069 20 is_stmt 0 view .LVU3811
|
||
11386 004e 0335 adds r5, r5, #3
|
||
11387 .LVL1351:
|
||
11388 .loc 1 6069 14 view .LVU3812
|
||
11389 0050 6178 ldrb r1, [r4, #1] @ zero_extendqisi2
|
||
11390 .LVL1352:
|
||
11391 .loc 1 6069 7 view .LVU3813
|
||
11392 0052 0226 movs r6, #2
|
||
11393 0054 F5E7 b .L819
|
||
11394 .LVL1353:
|
||
11395 .L821:
|
||
6070:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6071:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6072:Middlewares/Third_Party/FatFs/src/ff.c **** while (IsDigit(c)) { /* Precision */
|
||
6073:Middlewares/Third_Party/FatFs/src/ff.c **** w = w * 10 + c - '0';
|
||
11396 .loc 1 6073 4 is_stmt 1 view .LVU3814
|
||
11397 .loc 1 6073 10 is_stmt 0 view .LVU3815
|
||
11398 0056 04EB8404 add r4, r4, r4, lsl #2
|
||
11399 .LVL1354:
|
||
11400 .loc 1 6073 15 view .LVU3816
|
||
11401 005a 01EB4404 add r4, r1, r4, lsl #1
|
||
11402 .loc 1 6073 6 view .LVU3817
|
||
11403 005e 303C subs r4, r4, #48
|
||
11404 .LVL1355:
|
||
6074:Middlewares/Third_Party/FatFs/src/ff.c **** c = *fmt++;
|
||
11405 .loc 1 6074 4 is_stmt 1 view .LVU3818
|
||
11406 .loc 1 6074 6 is_stmt 0 view .LVU3819
|
||
11407 0060 15F8011B ldrb r1, [r5], #1 @ zero_extendqisi2
|
||
11408 .LVL1356:
|
||
11409 .L820:
|
||
6072:Middlewares/Third_Party/FatFs/src/ff.c **** w = w * 10 + c - '0';
|
||
11410 .loc 1 6072 10 is_stmt 1 view .LVU3820
|
||
11411 0064 A1F13003 sub r3, r1, #48
|
||
11412 0068 DBB2 uxtb r3, r3
|
||
11413 006a 092B cmp r3, #9
|
||
11414 006c F3D9 bls .L821
|
||
6075:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6076:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 'l' || c == 'L') { /* Prefix: Size is long int */
|
||
11415 .loc 1 6076 3 view .LVU3821
|
||
11416 .loc 1 6076 6 is_stmt 0 view .LVU3822
|
||
11417 006e 4C29 cmp r1, #76
|
||
11418 0070 18BF it ne
|
||
11419 0072 6C29 cmpne r1, #108
|
||
11420 0074 03D1 bne .L822
|
||
6077:Middlewares/Third_Party/FatFs/src/ff.c **** f |= 4; c = *fmt++;
|
||
11421 .loc 1 6077 4 is_stmt 1 view .LVU3823
|
||
11422 .loc 1 6077 6 is_stmt 0 view .LVU3824
|
||
11423 0076 46F00406 orr r6, r6, #4
|
||
11424 .LVL1357:
|
||
11425 .loc 1 6077 12 is_stmt 1 view .LVU3825
|
||
ARM GAS /tmp/ccH7dUYB.s page 366
|
||
|
||
|
||
11426 .loc 1 6077 14 is_stmt 0 view .LVU3826
|
||
11427 007a 15F8011B ldrb r1, [r5], #1 @ zero_extendqisi2
|
||
11428 .LVL1358:
|
||
11429 .L822:
|
||
6078:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6079:Middlewares/Third_Party/FatFs/src/ff.c **** if (!c) break;
|
||
11430 .loc 1 6079 3 is_stmt 1 view .LVU3827
|
||
11431 .loc 1 6079 6 is_stmt 0 view .LVU3828
|
||
11432 007e 0029 cmp r1, #0
|
||
11433 0080 00F0D880 beq .L815
|
||
6080:Middlewares/Third_Party/FatFs/src/ff.c **** d = c;
|
||
11434 .loc 1 6080 3 is_stmt 1 view .LVU3829
|
||
11435 .LVL1359:
|
||
6081:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsLower(d)) d -= 0x20;
|
||
11436 .loc 1 6081 3 view .LVU3830
|
||
11437 .loc 1 6081 7 is_stmt 0 view .LVU3831
|
||
11438 0084 A1F16103 sub r3, r1, #97
|
||
11439 0088 DBB2 uxtb r3, r3
|
||
11440 .loc 1 6081 6 view .LVU3832
|
||
11441 008a 192B cmp r3, #25
|
||
11442 008c 14D8 bhi .L858
|
||
11443 .loc 1 6081 19 is_stmt 1 discriminator 1 view .LVU3833
|
||
11444 .loc 1 6081 21 is_stmt 0 discriminator 1 view .LVU3834
|
||
11445 008e A1F12003 sub r3, r1, #32
|
||
11446 0092 DBB2 uxtb r3, r3
|
||
11447 .LVL1360:
|
||
11448 .L823:
|
||
6082:Middlewares/Third_Party/FatFs/src/ff.c **** switch (d) { /* Type is... */
|
||
11449 .loc 1 6082 3 is_stmt 1 view .LVU3835
|
||
11450 0094 A3F14202 sub r2, r3, #66
|
||
11451 0098 162A cmp r2, #22
|
||
11452 009a 5DD8 bhi .L824
|
||
11453 009c DFE802F0 tbb [pc, r2]
|
||
11454 .L826:
|
||
11455 00a0 60 .byte (.L831-.L826)/2
|
||
11456 00a1 3D .byte (.L830-.L826)/2
|
||
11457 00a2 45 .byte (.L827-.L826)/2
|
||
11458 00a3 5C .byte (.L824-.L826)/2
|
||
11459 00a4 5C .byte (.L824-.L826)/2
|
||
11460 00a5 5C .byte (.L824-.L826)/2
|
||
11461 00a6 5C .byte (.L824-.L826)/2
|
||
11462 00a7 5C .byte (.L824-.L826)/2
|
||
11463 00a8 5C .byte (.L824-.L826)/2
|
||
11464 00a9 5C .byte (.L824-.L826)/2
|
||
11465 00aa 5C .byte (.L824-.L826)/2
|
||
11466 00ab 5C .byte (.L824-.L826)/2
|
||
11467 00ac 5C .byte (.L824-.L826)/2
|
||
11468 00ad 62 .byte (.L859-.L826)/2
|
||
11469 00ae 5C .byte (.L824-.L826)/2
|
||
11470 00af 5C .byte (.L824-.L826)/2
|
||
11471 00b0 5C .byte (.L824-.L826)/2
|
||
11472 00b1 0E .byte (.L828-.L826)/2
|
||
11473 00b2 5C .byte (.L824-.L826)/2
|
||
11474 00b3 45 .byte (.L827-.L826)/2
|
||
11475 00b4 5C .byte (.L824-.L826)/2
|
||
11476 00b5 5C .byte (.L824-.L826)/2
|
||
11477 00b6 5A .byte (.L825-.L826)/2
|
||
ARM GAS /tmp/ccH7dUYB.s page 367
|
||
|
||
|
||
11478 .LVL1361:
|
||
11479 00b7 00 .p2align 1
|
||
11480 .L858:
|
||
6080:Middlewares/Third_Party/FatFs/src/ff.c **** d = c;
|
||
11481 .loc 1 6080 5 is_stmt 0 view .LVU3836
|
||
11482 00b8 0B46 mov r3, r1
|
||
11483 00ba EBE7 b .L823
|
||
11484 .LVL1362:
|
||
11485 .L828:
|
||
6083:Middlewares/Third_Party/FatFs/src/ff.c **** case 'S' : /* String */
|
||
6084:Middlewares/Third_Party/FatFs/src/ff.c **** p = va_arg(arp, TCHAR*);
|
||
11486 .loc 1 6084 4 is_stmt 1 view .LVU3837
|
||
11487 .loc 1 6084 6 is_stmt 0 view .LVU3838
|
||
11488 00bc 1B9B ldr r3, [sp, #108]
|
||
11489 .LVL1363:
|
||
11490 .loc 1 6084 6 view .LVU3839
|
||
11491 00be 1A1D adds r2, r3, #4
|
||
11492 .LVL1364:
|
||
11493 .loc 1 6084 6 view .LVU3840
|
||
11494 00c0 1B92 str r2, [sp, #108]
|
||
11495 00c2 D3F80080 ldr r8, [r3]
|
||
6085:Middlewares/Third_Party/FatFs/src/ff.c **** for (j = 0; p[j]; j++) ;
|
||
11496 .loc 1 6085 4 is_stmt 1 view .LVU3841
|
||
11497 .LVL1365:
|
||
11498 .loc 1 6085 11 is_stmt 0 view .LVU3842
|
||
11499 00c6 0027 movs r7, #0
|
||
11500 .loc 1 6085 4 view .LVU3843
|
||
11501 00c8 00E0 b .L832
|
||
11502 .LVL1366:
|
||
11503 .L833:
|
||
11504 .loc 1 6085 23 is_stmt 1 discriminator 3 view .LVU3844
|
||
11505 00ca 0137 adds r7, r7, #1
|
||
11506 .LVL1367:
|
||
11507 .L832:
|
||
11508 .loc 1 6085 16 discriminator 1 view .LVU3845
|
||
11509 .loc 1 6085 17 is_stmt 0 discriminator 1 view .LVU3846
|
||
11510 00cc 18F80730 ldrb r3, [r8, r7] @ zero_extendqisi2
|
||
11511 .loc 1 6085 16 discriminator 1 view .LVU3847
|
||
11512 00d0 002B cmp r3, #0
|
||
11513 00d2 FAD1 bne .L833
|
||
6086:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(f & 2)) {
|
||
11514 .loc 1 6086 4 is_stmt 1 view .LVU3848
|
||
11515 .loc 1 6086 7 is_stmt 0 view .LVU3849
|
||
11516 00d4 16F0020F tst r6, #2
|
||
11517 00d8 10D1 bne .L837
|
||
11518 00da 05E0 b .L834
|
||
11519 .LVL1368:
|
||
11520 .L836:
|
||
6087:Middlewares/Third_Party/FatFs/src/ff.c **** while (j++ < w) putc_bfd(&pb, ' ');
|
||
11521 .loc 1 6087 21 is_stmt 1 discriminator 2 view .LVU3850
|
||
11522 00dc 2021 movs r1, #32
|
||
11523 00de 0DEB0100 add r0, sp, r1
|
||
11524 00e2 FFF7FEFF bl putc_bfd
|
||
11525 .LVL1369:
|
||
11526 .loc 1 6087 13 is_stmt 0 discriminator 1 view .LVU3851
|
||
11527 00e6 3746 mov r7, r6
|
||
11528 .LVL1370:
|
||
ARM GAS /tmp/ccH7dUYB.s page 368
|
||
|
||
|
||
11529 .L834:
|
||
11530 .loc 1 6087 16 is_stmt 1 discriminator 1 view .LVU3852
|
||
11531 .loc 1 6087 13 is_stmt 0 discriminator 1 view .LVU3853
|
||
11532 00e8 7E1C adds r6, r7, #1
|
||
11533 .LVL1371:
|
||
11534 .loc 1 6087 16 discriminator 1 view .LVU3854
|
||
11535 00ea A742 cmp r7, r4
|
||
11536 00ec F6D3 bcc .L836
|
||
11537 .loc 1 6087 13 discriminator 1 view .LVU3855
|
||
11538 00ee 3746 mov r7, r6
|
||
11539 00f0 04E0 b .L837
|
||
11540 .LVL1372:
|
||
11541 .L838:
|
||
6088:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6089:Middlewares/Third_Party/FatFs/src/ff.c **** while (*p) putc_bfd(&pb, *p++);
|
||
11542 .loc 1 6089 15 is_stmt 1 discriminator 2 view .LVU3856
|
||
11543 .loc 1 6089 31 is_stmt 0 discriminator 2 view .LVU3857
|
||
11544 00f2 08F10108 add r8, r8, #1
|
||
11545 .LVL1373:
|
||
11546 .loc 1 6089 15 discriminator 2 view .LVU3858
|
||
11547 00f6 08A8 add r0, sp, #32
|
||
11548 00f8 FFF7FEFF bl putc_bfd
|
||
11549 .LVL1374:
|
||
11550 .L837:
|
||
11551 .loc 1 6089 11 is_stmt 1 discriminator 1 view .LVU3859
|
||
11552 00fc 98F80010 ldrb r1, [r8] @ zero_extendqisi2
|
||
11553 0100 0029 cmp r1, #0
|
||
11554 0102 F6D1 bne .L838
|
||
11555 .loc 1 6089 11 is_stmt 0 discriminator 1 view .LVU3860
|
||
11556 0104 05E0 b .L839
|
||
11557 .LVL1375:
|
||
11558 .L840:
|
||
6090:Middlewares/Third_Party/FatFs/src/ff.c **** while (j++ < w) putc_bfd(&pb, ' ');
|
||
11559 .loc 1 6090 20 is_stmt 1 discriminator 2 view .LVU3861
|
||
11560 0106 2021 movs r1, #32
|
||
11561 0108 0DEB0100 add r0, sp, r1
|
||
11562 010c FFF7FEFF bl putc_bfd
|
||
11563 .LVL1376:
|
||
11564 .loc 1 6090 12 is_stmt 0 discriminator 1 view .LVU3862
|
||
11565 0110 3746 mov r7, r6
|
||
11566 .LVL1377:
|
||
11567 .L839:
|
||
11568 .loc 1 6090 15 is_stmt 1 discriminator 1 view .LVU3863
|
||
11569 .loc 1 6090 12 is_stmt 0 discriminator 1 view .LVU3864
|
||
11570 0112 7E1C adds r6, r7, #1
|
||
11571 .LVL1378:
|
||
11572 .loc 1 6090 15 discriminator 1 view .LVU3865
|
||
11573 0114 A742 cmp r7, r4
|
||
11574 0116 F6D3 bcc .L840
|
||
11575 0118 7EE7 b .L814
|
||
11576 .LVL1379:
|
||
11577 .L830:
|
||
6091:Middlewares/Third_Party/FatFs/src/ff.c **** continue;
|
||
6092:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6093:Middlewares/Third_Party/FatFs/src/ff.c **** case 'C' : /* Character */
|
||
6094:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(&pb, (TCHAR)va_arg(arp, int)); continue;
|
||
11578 .loc 1 6094 4 is_stmt 1 view .LVU3866
|
||
ARM GAS /tmp/ccH7dUYB.s page 369
|
||
|
||
|
||
11579 .loc 1 6094 25 is_stmt 0 view .LVU3867
|
||
11580 011a 1B9B ldr r3, [sp, #108]
|
||
11581 .LVL1380:
|
||
11582 .loc 1 6094 25 view .LVU3868
|
||
11583 011c 1A1D adds r2, r3, #4
|
||
11584 .LVL1381:
|
||
11585 .loc 1 6094 25 view .LVU3869
|
||
11586 011e 1B92 str r2, [sp, #108]
|
||
11587 .loc 1 6094 4 discriminator 1 view .LVU3870
|
||
11588 0120 1978 ldrb r1, [r3] @ zero_extendqisi2
|
||
11589 .LVL1382:
|
||
11590 .loc 1 6094 4 discriminator 1 view .LVU3871
|
||
11591 0122 08A8 add r0, sp, #32
|
||
11592 0124 FFF7FEFF bl putc_bfd
|
||
11593 .LVL1383:
|
||
11594 .loc 1 6094 44 is_stmt 1 discriminator 2 view .LVU3872
|
||
11595 .loc 1 6094 44 is_stmt 0 view .LVU3873
|
||
11596 0128 76E7 b .L814
|
||
11597 .LVL1384:
|
||
11598 .L827:
|
||
6095:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6096:Middlewares/Third_Party/FatFs/src/ff.c **** case 'B' : /* Binary */
|
||
6097:Middlewares/Third_Party/FatFs/src/ff.c **** r = 2; break;
|
||
6098:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6099:Middlewares/Third_Party/FatFs/src/ff.c **** case 'O' : /* Octal */
|
||
6100:Middlewares/Third_Party/FatFs/src/ff.c **** r = 8; break;
|
||
6101:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6102:Middlewares/Third_Party/FatFs/src/ff.c **** case 'D' : /* Signed decimal */
|
||
6103:Middlewares/Third_Party/FatFs/src/ff.c **** case 'U' : /* Unsigned decimal */
|
||
6104:Middlewares/Third_Party/FatFs/src/ff.c **** r = 10; break;
|
||
11599 .loc 1 6104 4 is_stmt 1 view .LVU3874
|
||
11600 .loc 1 6104 12 view .LVU3875
|
||
11601 .loc 1 6104 6 is_stmt 0 view .LVU3876
|
||
11602 012a 0A20 movs r0, #10
|
||
11603 .LVL1385:
|
||
11604 .L829:
|
||
6105:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6106:Middlewares/Third_Party/FatFs/src/ff.c **** case 'X' : /* Hexdecimal */
|
||
6107:Middlewares/Third_Party/FatFs/src/ff.c **** r = 16; break;
|
||
6108:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6109:Middlewares/Third_Party/FatFs/src/ff.c **** default: /* Unknown type (pass-through) */
|
||
6110:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(&pb, c); continue;
|
||
6111:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6112:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6113:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get an argument and put it in numeral */
|
||
6114:Middlewares/Third_Party/FatFs/src/ff.c **** v = (f & 4) ? (DWORD)va_arg(arp, long) : ((d == 'D') ? (DWORD)(long)va_arg(arp, int) : (DWORD)va_
|
||
11605 .loc 1 6114 3 is_stmt 1 view .LVU3877
|
||
11606 .loc 1 6114 42 is_stmt 0 view .LVU3878
|
||
11607 012c 16F0040F tst r6, #4
|
||
11608 0130 1AD0 beq .L841
|
||
11609 .loc 1 6114 24 discriminator 1 view .LVU3879
|
||
11610 0132 1B9A ldr r2, [sp, #108]
|
||
11611 0134 171D adds r7, r2, #4
|
||
11612 0136 1B97 str r7, [sp, #108]
|
||
11613 0138 1268 ldr r2, [r2]
|
||
11614 .L842:
|
||
11615 .LVL1386:
|
||
ARM GAS /tmp/ccH7dUYB.s page 370
|
||
|
||
|
||
6115:Middlewares/Third_Party/FatFs/src/ff.c **** if (d == 'D' && (v & 0x80000000)) {
|
||
11616 .loc 1 6115 3 is_stmt 1 view .LVU3880
|
||
11617 .loc 1 6115 16 is_stmt 0 view .LVU3881
|
||
11618 013a D70F lsrs r7, r2, #31
|
||
11619 013c 442B cmp r3, #68
|
||
11620 013e 14BF ite ne
|
||
11621 0140 0027 movne r7, #0
|
||
11622 0142 07F00107 andeq r7, r7, #1
|
||
11623 .loc 1 6115 6 view .LVU3882
|
||
11624 0146 17B1 cbz r7, .L844
|
||
6116:Middlewares/Third_Party/FatFs/src/ff.c **** v = 0 - v;
|
||
11625 .loc 1 6116 4 is_stmt 1 view .LVU3883
|
||
11626 .loc 1 6116 6 is_stmt 0 view .LVU3884
|
||
11627 0148 5242 rsbs r2, r2, #0
|
||
11628 .LVL1387:
|
||
6117:Middlewares/Third_Party/FatFs/src/ff.c **** f |= 8;
|
||
11629 .loc 1 6117 4 is_stmt 1 view .LVU3885
|
||
11630 .loc 1 6117 6 is_stmt 0 view .LVU3886
|
||
11631 014a 46F00806 orr r6, r6, #8
|
||
11632 .LVL1388:
|
||
11633 .L844:
|
||
6118:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6119:Middlewares/Third_Party/FatFs/src/ff.c **** i = 0;
|
||
11634 .loc 1 6119 3 is_stmt 1 view .LVU3887
|
||
11635 .loc 1 6119 5 is_stmt 0 view .LVU3888
|
||
11636 014e 4FF0000C mov ip, #0
|
||
11637 0152 28E0 b .L847
|
||
11638 .LVL1389:
|
||
11639 .L825:
|
||
6107:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11640 .loc 1 6107 4 is_stmt 1 view .LVU3889
|
||
6107:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11641 .loc 1 6107 12 view .LVU3890
|
||
6107:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11642 .loc 1 6107 6 is_stmt 0 view .LVU3891
|
||
11643 0154 1020 movs r0, #16
|
||
6107:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11644 .loc 1 6107 12 view .LVU3892
|
||
11645 0156 E9E7 b .L829
|
||
11646 .LVL1390:
|
||
11647 .L824:
|
||
6110:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11648 .loc 1 6110 4 is_stmt 1 view .LVU3893
|
||
11649 0158 08A8 add r0, sp, #32
|
||
11650 015a FFF7FEFF bl putc_bfd
|
||
11651 .LVL1391:
|
||
6110:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11652 .loc 1 6110 22 discriminator 1 view .LVU3894
|
||
6110:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11653 .loc 1 6110 22 is_stmt 0 view .LVU3895
|
||
11654 015e 5BE7 b .L814
|
||
11655 .LVL1392:
|
||
11656 .L831:
|
||
6082:Middlewares/Third_Party/FatFs/src/ff.c **** case 'S' : /* String */
|
||
11657 .loc 1 6082 3 view .LVU3896
|
||
11658 0160 0220 movs r0, #2
|
||
11659 0162 E3E7 b .L829
|
||
ARM GAS /tmp/ccH7dUYB.s page 371
|
||
|
||
|
||
11660 .L859:
|
||
6100:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
11661 .loc 1 6100 6 view .LVU3897
|
||
11662 0164 0820 movs r0, #8
|
||
11663 0166 E1E7 b .L829
|
||
11664 .LVL1393:
|
||
11665 .L841:
|
||
6114:Middlewares/Third_Party/FatFs/src/ff.c **** if (d == 'D' && (v & 0x80000000)) {
|
||
11666 .loc 1 6114 88 discriminator 2 view .LVU3898
|
||
11667 0168 442B cmp r3, #68
|
||
11668 016a 04D0 beq .L867
|
||
6114:Middlewares/Third_Party/FatFs/src/ff.c **** if (d == 'D' && (v & 0x80000000)) {
|
||
11669 .loc 1 6114 88 discriminator 5 view .LVU3899
|
||
11670 016c 1B9A ldr r2, [sp, #108]
|
||
11671 016e 171D adds r7, r2, #4
|
||
11672 0170 1B97 str r7, [sp, #108]
|
||
11673 0172 1268 ldr r2, [r2]
|
||
11674 0174 E1E7 b .L842
|
||
11675 .L867:
|
||
6114:Middlewares/Third_Party/FatFs/src/ff.c **** if (d == 'D' && (v & 0x80000000)) {
|
||
11676 .loc 1 6114 71 discriminator 4 view .LVU3900
|
||
11677 0176 1B9A ldr r2, [sp, #108]
|
||
11678 0178 171D adds r7, r2, #4
|
||
11679 017a 1B97 str r7, [sp, #108]
|
||
11680 017c 1268 ldr r2, [r2]
|
||
11681 017e DCE7 b .L842
|
||
11682 .LVL1394:
|
||
11683 .L868:
|
||
6120:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
6121:Middlewares/Third_Party/FatFs/src/ff.c **** d = (TCHAR)(v % r); v /= r;
|
||
6122:Middlewares/Third_Party/FatFs/src/ff.c **** if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
|
||
11684 .loc 1 6122 17 discriminator 2 view .LVU3901
|
||
11685 0180 2727 movs r7, #39
|
||
11686 .L846:
|
||
11687 .loc 1 6122 17 discriminator 5 view .LVU3902
|
||
11688 0182 3B44 add r3, r3, r7
|
||
11689 .LVL1395:
|
||
11690 .loc 1 6122 17 discriminator 5 view .LVU3903
|
||
11691 0184 DBB2 uxtb r3, r3
|
||
11692 .LVL1396:
|
||
11693 .L845:
|
||
6123:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11694 .loc 1 6123 4 is_stmt 1 view .LVU3904
|
||
11695 .loc 1 6123 9 is_stmt 0 view .LVU3905
|
||
11696 0186 0CF10107 add r7, ip, #1
|
||
11697 .LVL1397:
|
||
11698 .loc 1 6123 17 view .LVU3906
|
||
11699 018a 3033 adds r3, r3, #48
|
||
11700 .LVL1398:
|
||
11701 .loc 1 6123 13 view .LVU3907
|
||
11702 018c 0CF17009 add r9, ip, #112
|
||
11703 0190 E944 add r9, sp, r9
|
||
11704 0192 09F8703C strb r3, [r9, #-112]
|
||
6124:Middlewares/Third_Party/FatFs/src/ff.c **** } while (v && i < sizeof str / sizeof str[0]);
|
||
11705 .loc 1 6124 14 is_stmt 1 view .LVU3908
|
||
11706 .loc 1 6124 19 is_stmt 0 view .LVU3909
|
||
11707 0196 1F2F cmp r7, #31
|
||
ARM GAS /tmp/ccH7dUYB.s page 372
|
||
|
||
|
||
11708 0198 8CBF ite hi
|
||
11709 019a 0023 movhi r3, #0
|
||
11710 .LVL1399:
|
||
11711 .loc 1 6124 19 view .LVU3910
|
||
11712 019c 0123 movls r3, #1
|
||
11713 .loc 1 6124 14 view .LVU3911
|
||
11714 019e C645 cmp lr, r8
|
||
11715 01a0 0FD8 bhi .L863
|
||
11716 01a2 73B1 cbz r3, .L863
|
||
6123:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11717 .loc 1 6123 9 view .LVU3912
|
||
11718 01a4 BC46 mov ip, r7
|
||
11719 .LVL1400:
|
||
11720 .L847:
|
||
6120:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
11721 .loc 1 6120 3 is_stmt 1 view .LVU3913
|
||
6121:Middlewares/Third_Party/FatFs/src/ff.c **** if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
|
||
11722 .loc 1 6121 4 view .LVU3914
|
||
6121:Middlewares/Third_Party/FatFs/src/ff.c **** if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
|
||
11723 .loc 1 6121 18 is_stmt 0 view .LVU3915
|
||
11724 01a6 8646 mov lr, r0
|
||
11725 01a8 B2FBF0F7 udiv r7, r2, r0
|
||
11726 01ac 00FB1723 mls r3, r0, r7, r2
|
||
6121:Middlewares/Third_Party/FatFs/src/ff.c **** if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
|
||
11727 .loc 1 6121 6 view .LVU3916
|
||
11728 01b0 DBB2 uxtb r3, r3
|
||
11729 .LVL1401:
|
||
6121:Middlewares/Third_Party/FatFs/src/ff.c **** if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
|
||
11730 .loc 1 6121 24 is_stmt 1 view .LVU3917
|
||
11731 01b2 9046 mov r8, r2
|
||
6121:Middlewares/Third_Party/FatFs/src/ff.c **** if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
|
||
11732 .loc 1 6121 26 is_stmt 0 view .LVU3918
|
||
11733 01b4 3A46 mov r2, r7
|
||
11734 .LVL1402:
|
||
6122:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11735 .loc 1 6122 4 is_stmt 1 view .LVU3919
|
||
6122:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11736 .loc 1 6122 7 is_stmt 0 view .LVU3920
|
||
11737 01b6 092B cmp r3, #9
|
||
11738 01b8 E5D9 bls .L845
|
||
6122:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11739 .loc 1 6122 15 is_stmt 1 discriminator 1 view .LVU3921
|
||
6122:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11740 .loc 1 6122 17 is_stmt 0 discriminator 1 view .LVU3922
|
||
11741 01ba 7829 cmp r1, #120
|
||
11742 01bc E0D0 beq .L868
|
||
6122:Middlewares/Third_Party/FatFs/src/ff.c **** str[i++] = d + '0';
|
||
11743 .loc 1 6122 17 discriminator 3 view .LVU3923
|
||
11744 01be 0727 movs r7, #7
|
||
11745 01c0 DFE7 b .L846
|
||
11746 .LVL1403:
|
||
11747 .L863:
|
||
6125:Middlewares/Third_Party/FatFs/src/ff.c **** if (f & 8) str[i++] = '-';
|
||
11748 .loc 1 6125 3 is_stmt 1 view .LVU3924
|
||
11749 .loc 1 6125 6 is_stmt 0 view .LVU3925
|
||
11750 01c2 16F0080F tst r6, #8
|
||
11751 01c6 08D0 beq .L849
|
||
ARM GAS /tmp/ccH7dUYB.s page 373
|
||
|
||
|
||
11752 .loc 1 6125 14 is_stmt 1 discriminator 1 view .LVU3926
|
||
11753 .LVL1404:
|
||
11754 .loc 1 6125 23 is_stmt 0 discriminator 1 view .LVU3927
|
||
11755 01c8 07F17003 add r3, r7, #112
|
||
11756 01cc 0DEB0307 add r7, sp, r3
|
||
11757 01d0 2D23 movs r3, #45
|
||
11758 01d2 07F8703C strb r3, [r7, #-112]
|
||
11759 .loc 1 6125 19 discriminator 1 view .LVU3928
|
||
11760 01d6 0CF10207 add r7, ip, #2
|
||
11761 .LVL1405:
|
||
11762 .L849:
|
||
6126:Middlewares/Third_Party/FatFs/src/ff.c **** j = i; d = (f & 1) ? '0' : ' ';
|
||
11763 .loc 1 6126 3 is_stmt 1 view .LVU3929
|
||
11764 .loc 1 6126 10 view .LVU3930
|
||
11765 .loc 1 6126 12 is_stmt 0 view .LVU3931
|
||
11766 01da 16F0010F tst r6, #1
|
||
11767 01de 03D0 beq .L862
|
||
11768 .loc 1 6126 12 discriminator 1 view .LVU3932
|
||
11769 01e0 4FF0300A mov r10, #48
|
||
11770 .L850:
|
||
11771 .LVL1406:
|
||
6127:Middlewares/Third_Party/FatFs/src/ff.c **** while (!(f & 2) && j++ < w) putc_bfd(&pb, d);
|
||
11772 .loc 1 6127 3 is_stmt 1 view .LVU3933
|
||
6126:Middlewares/Third_Party/FatFs/src/ff.c **** j = i; d = (f & 1) ? '0' : ' ';
|
||
11773 .loc 1 6126 5 is_stmt 0 view .LVU3934
|
||
11774 01e4 B846 mov r8, r7
|
||
11775 .loc 1 6127 9 view .LVU3935
|
||
11776 01e6 07E0 b .L851
|
||
11777 .LVL1407:
|
||
11778 .L862:
|
||
6126:Middlewares/Third_Party/FatFs/src/ff.c **** j = i; d = (f & 1) ? '0' : ' ';
|
||
11779 .loc 1 6126 12 discriminator 2 view .LVU3936
|
||
11780 01e8 4FF0200A mov r10, #32
|
||
11781 01ec FAE7 b .L850
|
||
11782 .LVL1408:
|
||
11783 .L853:
|
||
11784 .loc 1 6127 31 is_stmt 1 discriminator 3 view .LVU3937
|
||
11785 01ee 5146 mov r1, r10
|
||
11786 01f0 08A8 add r0, sp, #32
|
||
11787 01f2 FFF7FEFF bl putc_bfd
|
||
11788 .LVL1409:
|
||
11789 .loc 1 6127 23 is_stmt 0 discriminator 2 view .LVU3938
|
||
11790 01f6 C846 mov r8, r9
|
||
11791 .LVL1410:
|
||
11792 .L851:
|
||
11793 .loc 1 6127 19 is_stmt 1 discriminator 1 view .LVU3939
|
||
11794 01f8 16F0020F tst r6, #2
|
||
11795 01fc 04D1 bne .L854
|
||
11796 .loc 1 6127 23 is_stmt 0 discriminator 2 view .LVU3940
|
||
11797 01fe 08F10109 add r9, r8, #1
|
||
11798 .LVL1411:
|
||
11799 .loc 1 6127 19 discriminator 2 view .LVU3941
|
||
11800 0202 A045 cmp r8, r4
|
||
11801 0204 F3D3 bcc .L853
|
||
11802 .loc 1 6127 23 discriminator 2 view .LVU3942
|
||
11803 0206 C846 mov r8, r9
|
||
11804 .LVL1412:
|
||
ARM GAS /tmp/ccH7dUYB.s page 374
|
||
|
||
|
||
11805 .L854:
|
||
6128:Middlewares/Third_Party/FatFs/src/ff.c **** do {
|
||
11806 .loc 1 6128 3 is_stmt 1 view .LVU3943
|
||
6129:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(&pb, str[--i]);
|
||
11807 .loc 1 6129 4 view .LVU3944
|
||
11808 0208 013F subs r7, r7, #1
|
||
11809 .LVL1413:
|
||
11810 .loc 1 6129 4 is_stmt 0 view .LVU3945
|
||
11811 020a 07F17003 add r3, r7, #112
|
||
11812 020e 6B44 add r3, sp, r3
|
||
11813 0210 13F8701C ldrb r1, [r3, #-112] @ zero_extendqisi2
|
||
11814 0214 08A8 add r0, sp, #32
|
||
11815 0216 FFF7FEFF bl putc_bfd
|
||
11816 .LVL1414:
|
||
6130:Middlewares/Third_Party/FatFs/src/ff.c **** } while (i);
|
||
11817 .loc 1 6130 12 is_stmt 1 discriminator 1 view .LVU3946
|
||
11818 021a 002F cmp r7, #0
|
||
11819 021c F4D1 bne .L854
|
||
11820 .LVL1415:
|
||
11821 .L855:
|
||
6131:Middlewares/Third_Party/FatFs/src/ff.c **** while (j++ < w) putc_bfd(&pb, d);
|
||
11822 .loc 1 6131 14 discriminator 1 view .LVU3947
|
||
11823 .loc 1 6131 11 is_stmt 0 discriminator 1 view .LVU3948
|
||
11824 021e 08F10106 add r6, r8, #1
|
||
11825 .LVL1416:
|
||
11826 .loc 1 6131 14 discriminator 1 view .LVU3949
|
||
11827 0222 A045 cmp r8, r4
|
||
11828 0224 BFF4F8AE bcs .L814
|
||
11829 .loc 1 6131 19 is_stmt 1 discriminator 2 view .LVU3950
|
||
11830 0228 5146 mov r1, r10
|
||
11831 022a 08A8 add r0, sp, #32
|
||
11832 022c FFF7FEFF bl putc_bfd
|
||
11833 .LVL1417:
|
||
11834 .loc 1 6131 11 is_stmt 0 discriminator 1 view .LVU3951
|
||
11835 0230 B046 mov r8, r6
|
||
11836 0232 F4E7 b .L855
|
||
11837 .LVL1418:
|
||
11838 .L815:
|
||
6132:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
6133:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6134:Middlewares/Third_Party/FatFs/src/ff.c **** va_end(arp);
|
||
11839 .loc 1 6134 2 is_stmt 1 view .LVU3952
|
||
6135:Middlewares/Third_Party/FatFs/src/ff.c ****
|
||
6136:Middlewares/Third_Party/FatFs/src/ff.c **** return putc_flush(&pb);
|
||
11840 .loc 1 6136 2 view .LVU3953
|
||
11841 .loc 1 6136 9 is_stmt 0 view .LVU3954
|
||
11842 0234 08A8 add r0, sp, #32
|
||
11843 0236 FFF7FEFF bl putc_flush
|
||
11844 .LVL1419:
|
||
6137:Middlewares/Third_Party/FatFs/src/ff.c **** }
|
||
11845 .loc 1 6137 1 view .LVU3955
|
||
11846 023a 1DB0 add sp, sp, #116
|
||
11847 .LCFI127:
|
||
11848 .cfi_def_cfa_offset 44
|
||
11849 @ sp needed
|
||
11850 023c BDE8F047 pop {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
11851 .LCFI128:
|
||
ARM GAS /tmp/ccH7dUYB.s page 375
|
||
|
||
|
||
11852 .cfi_restore 14
|
||
11853 .cfi_restore 10
|
||
11854 .cfi_restore 9
|
||
11855 .cfi_restore 8
|
||
11856 .cfi_restore 7
|
||
11857 .cfi_restore 6
|
||
11858 .cfi_restore 5
|
||
11859 .cfi_restore 4
|
||
11860 .cfi_def_cfa_offset 12
|
||
11861 0240 03B0 add sp, sp, #12
|
||
11862 .LCFI129:
|
||
11863 .cfi_restore 3
|
||
11864 .cfi_restore 2
|
||
11865 .cfi_restore 1
|
||
11866 .cfi_def_cfa_offset 0
|
||
11867 0242 7047 bx lr
|
||
11868 .cfi_endproc
|
||
11869 .LFE1244:
|
||
11871 .section .rodata.cst.0,"a"
|
||
11872 .align 2
|
||
11875 cst.0:
|
||
11876 0000 0100 .short 1
|
||
11877 0002 0400 .short 4
|
||
11878 0004 1000 .short 16
|
||
11879 0006 4000 .short 64
|
||
11880 0008 0001 .short 256
|
||
11881 000a 0002 .short 512
|
||
11882 000c 0000 .short 0
|
||
11883 .section .rodata.cst32.1,"a"
|
||
11884 .align 2
|
||
11887 cst32.1:
|
||
11888 0000 0100 .short 1
|
||
11889 0002 0200 .short 2
|
||
11890 0004 0400 .short 4
|
||
11891 0006 0800 .short 8
|
||
11892 0008 1000 .short 16
|
||
11893 000a 2000 .short 32
|
||
11894 000c 0000 .short 0
|
||
11895 .section .rodata.ExCvt,"a"
|
||
11896 .align 2
|
||
11899 ExCvt:
|
||
11900 0000 43554541 .ascii "CUEAAAACEEEIIIAAE\222\222OOOUUYOUO\234O\236\237AIOU"
|
||
11900 41414143
|
||
11900 45454549
|
||
11900 49494141
|
||
11900 4592924F
|
||
11901 0024 A5A5A6A7 .ascii "\245\245\246\247\250\251\252\253\254\255\256\257\260"
|
||
11901 A8A9AAAB
|
||
11901 ACADAEAF
|
||
11901 B0
|
||
11902 0031 B1B2B3B4 .ascii "\261\262\263\264AAA\270\271\272\273\274\275\276\277"
|
||
11902 414141B8
|
||
11902 B9BABBBC
|
||
11902 BDBEBF
|
||
11903 0040 C0C1C2C3 .ascii "\300\301\302\303\304\305AA\310\311\312\313\314\315\316"
|
||
11903 C4C54141
|
||
11903 C8C9CACB
|
||
ARM GAS /tmp/ccH7dUYB.s page 376
|
||
|
||
|
||
11903 CCCDCE
|
||
11904 004f CFD1D145 .ascii "\317\321\321EEEIIII\331\332\333\334\335I\337O\341OO"
|
||
11904 45454949
|
||
11904 4949D9DA
|
||
11904 DBDCDD49
|
||
11904 DF4FE14F
|
||
11905 0064 4F4FE6E8 .ascii "OO\346\350\350UUUYY\356\357\360\361\362\363\364\365"
|
||
11905 E8555555
|
||
11905 5959EEEF
|
||
11905 F0F1F2F3
|
||
11905 F4F5
|
||
11906 0076 F6F7F8F9 .ascii "\366\367\370\371\372\373\374\375\376\377"
|
||
11906 FAFBFCFD
|
||
11906 FEFF
|
||
11907 .section .bss.Files,"aw",%nobits
|
||
11908 .align 2
|
||
11911 Files:
|
||
11912 0000 00000000 .space 32
|
||
11912 00000000
|
||
11912 00000000
|
||
11912 00000000
|
||
11912 00000000
|
||
11913 .section .bss.Fsid,"aw",%nobits
|
||
11914 .align 1
|
||
11917 Fsid:
|
||
11918 0000 0000 .space 2
|
||
11919 .section .bss.FatFs,"aw",%nobits
|
||
11920 .align 2
|
||
11923 FatFs:
|
||
11924 0000 00000000 .space 4
|
||
11925 .text
|
||
11926 .Letext0:
|
||
11927 .file 2 "Middlewares/Third_Party/FatFs/src/integer.h"
|
||
11928 .file 3 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h"
|
||
11929 .file 4 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h"
|
||
11930 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h"
|
||
11931 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h"
|
||
11932 .file 7 "Middlewares/Third_Party/FatFs/src/ff.h"
|
||
11933 .file 8 "Middlewares/Third_Party/FatFs/src/diskio.h"
|
||
11934 .file 9 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdarg.h"
|
||
11935 .file 10 "<built-in>"
|
||
ARM GAS /tmp/ccH7dUYB.s page 377
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:00000000 ff.c
|
||
/tmp/ccH7dUYB.s:20 .text.ld_word:00000000 $t
|
||
/tmp/ccH7dUYB.s:25 .text.ld_word:00000000 ld_word
|
||
/tmp/ccH7dUYB.s:52 .text.ld_dword:00000000 $t
|
||
/tmp/ccH7dUYB.s:57 .text.ld_dword:00000000 ld_dword
|
||
/tmp/ccH7dUYB.s:96 .text.st_word:00000000 $t
|
||
/tmp/ccH7dUYB.s:101 .text.st_word:00000000 st_word
|
||
/tmp/ccH7dUYB.s:125 .text.st_dword:00000000 $t
|
||
/tmp/ccH7dUYB.s:130 .text.st_dword:00000000 st_dword
|
||
/tmp/ccH7dUYB.s:169 .text.mem_cpy:00000000 $t
|
||
/tmp/ccH7dUYB.s:174 .text.mem_cpy:00000000 mem_cpy
|
||
/tmp/ccH7dUYB.s:214 .text.mem_set:00000000 $t
|
||
/tmp/ccH7dUYB.s:219 .text.mem_set:00000000 mem_set
|
||
/tmp/ccH7dUYB.s:246 .text.mem_cmp:00000000 $t
|
||
/tmp/ccH7dUYB.s:251 .text.mem_cmp:00000000 mem_cmp
|
||
/tmp/ccH7dUYB.s:294 .text.chk_chr:00000000 $t
|
||
/tmp/ccH7dUYB.s:299 .text.chk_chr:00000000 chk_chr
|
||
/tmp/ccH7dUYB.s:335 .text.chk_lock:00000000 $t
|
||
/tmp/ccH7dUYB.s:340 .text.chk_lock:00000000 chk_lock
|
||
/tmp/ccH7dUYB.s:477 .text.chk_lock:00000078 $d
|
||
/tmp/ccH7dUYB.s:11911 .bss.Files:00000000 Files
|
||
/tmp/ccH7dUYB.s:482 .text.enq_lock:00000000 $t
|
||
/tmp/ccH7dUYB.s:487 .text.enq_lock:00000000 enq_lock
|
||
/tmp/ccH7dUYB.s:531 .text.enq_lock:0000001c $d
|
||
/tmp/ccH7dUYB.s:536 .text.inc_lock:00000000 $t
|
||
/tmp/ccH7dUYB.s:541 .text.inc_lock:00000000 inc_lock
|
||
/tmp/ccH7dUYB.s:711 .text.inc_lock:0000009c $d
|
||
/tmp/ccH7dUYB.s:716 .text.dec_lock:00000000 $t
|
||
/tmp/ccH7dUYB.s:721 .text.dec_lock:00000000 dec_lock
|
||
/tmp/ccH7dUYB.s:802 .text.dec_lock:0000003c $d
|
||
/tmp/ccH7dUYB.s:807 .text.clear_lock:00000000 $t
|
||
/tmp/ccH7dUYB.s:812 .text.clear_lock:00000000 clear_lock
|
||
/tmp/ccH7dUYB.s:889 .text.clear_lock:00000038 $d
|
||
/tmp/ccH7dUYB.s:894 .text.clust2sect:00000000 $t
|
||
/tmp/ccH7dUYB.s:899 .text.clust2sect:00000000 clust2sect
|
||
/tmp/ccH7dUYB.s:939 .text.clmt_clust:00000000 $t
|
||
/tmp/ccH7dUYB.s:944 .text.clmt_clust:00000000 clmt_clust
|
||
/tmp/ccH7dUYB.s:1015 .text.ld_clust:00000000 $t
|
||
/tmp/ccH7dUYB.s:1020 .text.ld_clust:00000000 ld_clust
|
||
/tmp/ccH7dUYB.s:1076 .text.st_clust:00000000 $t
|
||
/tmp/ccH7dUYB.s:1081 .text.st_clust:00000000 st_clust
|
||
/tmp/ccH7dUYB.s:1130 .text.get_fileinfo:00000000 $t
|
||
/tmp/ccH7dUYB.s:1135 .text.get_fileinfo:00000000 get_fileinfo
|
||
/tmp/ccH7dUYB.s:1275 .rodata.create_name.str1.4:00000000 $d
|
||
/tmp/ccH7dUYB.s:1279 .text.create_name:00000000 $t
|
||
/tmp/ccH7dUYB.s:1284 .text.create_name:00000000 create_name
|
||
/tmp/ccH7dUYB.s:1516 .text.create_name:000000c8 $d
|
||
/tmp/ccH7dUYB.s:11899 .rodata.ExCvt:00000000 ExCvt
|
||
/tmp/ccH7dUYB.s:1522 .text.get_ldnumber:00000000 $t
|
||
/tmp/ccH7dUYB.s:1527 .text.get_ldnumber:00000000 get_ldnumber
|
||
/tmp/ccH7dUYB.s:1628 .text.putc_init:00000000 $t
|
||
/tmp/ccH7dUYB.s:1633 .text.putc_init:00000000 putc_init
|
||
/tmp/ccH7dUYB.s:1656 .text.validate:00000000 $t
|
||
/tmp/ccH7dUYB.s:1661 .text.validate:00000000 validate
|
||
/tmp/ccH7dUYB.s:1770 .text.sync_window:00000000 $t
|
||
/tmp/ccH7dUYB.s:1775 .text.sync_window:00000000 sync_window
|
||
ARM GAS /tmp/ccH7dUYB.s page 378
|
||
|
||
|
||
/tmp/ccH7dUYB.s:1882 .text.move_window:00000000 $t
|
||
/tmp/ccH7dUYB.s:1887 .text.move_window:00000000 move_window
|
||
/tmp/ccH7dUYB.s:1959 .text.check_fs:00000000 $t
|
||
/tmp/ccH7dUYB.s:1964 .text.check_fs:00000000 check_fs
|
||
/tmp/ccH7dUYB.s:2060 .text.check_fs:0000006c $d
|
||
/tmp/ccH7dUYB.s:2067 .text.find_volume:00000000 $t
|
||
/tmp/ccH7dUYB.s:2072 .text.find_volume:00000000 find_volume
|
||
/tmp/ccH7dUYB.s:2746 .text.find_volume:00000314 $d
|
||
/tmp/ccH7dUYB.s:11923 .bss.FatFs:00000000 FatFs
|
||
/tmp/ccH7dUYB.s:11917 .bss.Fsid:00000000 Fsid
|
||
/tmp/ccH7dUYB.s:2753 .text.find_volume:00000324 $t
|
||
/tmp/ccH7dUYB.s:2802 .text.put_fat:00000000 $t
|
||
/tmp/ccH7dUYB.s:2807 .text.put_fat:00000000 put_fat
|
||
/tmp/ccH7dUYB.s:3085 .text.get_fat:00000000 $t
|
||
/tmp/ccH7dUYB.s:3090 .text.get_fat:00000000 get_fat
|
||
/tmp/ccH7dUYB.s:3338 .text.dir_sdi:00000000 $t
|
||
/tmp/ccH7dUYB.s:3343 .text.dir_sdi:00000000 dir_sdi
|
||
/tmp/ccH7dUYB.s:3548 .text.create_chain:00000000 $t
|
||
/tmp/ccH7dUYB.s:3553 .text.create_chain:00000000 create_chain
|
||
/tmp/ccH7dUYB.s:3789 .text.remove_chain:00000000 $t
|
||
/tmp/ccH7dUYB.s:3794 .text.remove_chain:00000000 remove_chain
|
||
/tmp/ccH7dUYB.s:3955 .text.dir_remove:00000000 $t
|
||
/tmp/ccH7dUYB.s:3960 .text.dir_remove:00000000 dir_remove
|
||
/tmp/ccH7dUYB.s:4011 .text.dir_next:00000000 $t
|
||
/tmp/ccH7dUYB.s:4016 .text.dir_next:00000000 dir_next
|
||
/tmp/ccH7dUYB.s:4326 .text.dir_find:00000000 $t
|
||
/tmp/ccH7dUYB.s:4331 .text.dir_find:00000000 dir_find
|
||
/tmp/ccH7dUYB.s:4439 .text.follow_path:00000000 $t
|
||
/tmp/ccH7dUYB.s:4444 .text.follow_path:00000000 follow_path
|
||
/tmp/ccH7dUYB.s:4612 .text.dir_alloc:00000000 $t
|
||
/tmp/ccH7dUYB.s:4617 .text.dir_alloc:00000000 dir_alloc
|
||
/tmp/ccH7dUYB.s:4728 .text.dir_register:00000000 $t
|
||
/tmp/ccH7dUYB.s:4733 .text.dir_register:00000000 dir_register
|
||
/tmp/ccH7dUYB.s:4807 .text.dir_read:00000000 $t
|
||
/tmp/ccH7dUYB.s:4812 .text.dir_read:00000000 dir_read
|
||
/tmp/ccH7dUYB.s:4934 .text.sync_fs:00000000 $t
|
||
/tmp/ccH7dUYB.s:4939 .text.sync_fs:00000000 sync_fs
|
||
/tmp/ccH7dUYB.s:5053 .text.sync_fs:00000080 $d
|
||
/tmp/ccH7dUYB.s:5059 .text.f_mount:00000000 $t
|
||
/tmp/ccH7dUYB.s:5065 .text.f_mount:00000000 f_mount
|
||
/tmp/ccH7dUYB.s:5181 .text.f_mount:0000005c $d
|
||
/tmp/ccH7dUYB.s:5186 .text.f_open:00000000 $t
|
||
/tmp/ccH7dUYB.s:5192 .text.f_open:00000000 f_open
|
||
/tmp/ccH7dUYB.s:5748 .text.f_read:00000000 $t
|
||
/tmp/ccH7dUYB.s:5754 .text.f_read:00000000 f_read
|
||
/tmp/ccH7dUYB.s:6186 .text.f_write:00000000 $t
|
||
/tmp/ccH7dUYB.s:6192 .text.f_write:00000000 f_write
|
||
/tmp/ccH7dUYB.s:6673 .text.putc_bfd:00000000 $t
|
||
/tmp/ccH7dUYB.s:6678 .text.putc_bfd:00000000 putc_bfd
|
||
/tmp/ccH7dUYB.s:6790 .text.putc_flush:00000000 $t
|
||
/tmp/ccH7dUYB.s:6795 .text.putc_flush:00000000 putc_flush
|
||
/tmp/ccH7dUYB.s:6874 .text.f_sync:00000000 $t
|
||
/tmp/ccH7dUYB.s:6880 .text.f_sync:00000000 f_sync
|
||
/tmp/ccH7dUYB.s:7031 .text.f_close:00000000 $t
|
||
/tmp/ccH7dUYB.s:7037 .text.f_close:00000000 f_close
|
||
/tmp/ccH7dUYB.s:7106 .text.f_lseek:00000000 $t
|
||
/tmp/ccH7dUYB.s:7112 .text.f_lseek:00000000 f_lseek
|
||
ARM GAS /tmp/ccH7dUYB.s page 379
|
||
|
||
|
||
/tmp/ccH7dUYB.s:7838 .text.f_opendir:00000000 $t
|
||
/tmp/ccH7dUYB.s:7844 .text.f_opendir:00000000 f_opendir
|
||
/tmp/ccH7dUYB.s:8024 .text.f_closedir:00000000 $t
|
||
/tmp/ccH7dUYB.s:8030 .text.f_closedir:00000000 f_closedir
|
||
/tmp/ccH7dUYB.s:8096 .text.f_readdir:00000000 $t
|
||
/tmp/ccH7dUYB.s:8102 .text.f_readdir:00000000 f_readdir
|
||
/tmp/ccH7dUYB.s:8207 .text.f_stat:00000000 $t
|
||
/tmp/ccH7dUYB.s:8213 .text.f_stat:00000000 f_stat
|
||
/tmp/ccH7dUYB.s:8306 .text.f_getfree:00000000 $t
|
||
/tmp/ccH7dUYB.s:8312 .text.f_getfree:00000000 f_getfree
|
||
/tmp/ccH7dUYB.s:8597 .text.f_truncate:00000000 $t
|
||
/tmp/ccH7dUYB.s:8603 .text.f_truncate:00000000 f_truncate
|
||
/tmp/ccH7dUYB.s:8787 .text.f_unlink:00000000 $t
|
||
/tmp/ccH7dUYB.s:8793 .text.f_unlink:00000000 f_unlink
|
||
/tmp/ccH7dUYB.s:9015 .text.f_mkdir:00000000 $t
|
||
/tmp/ccH7dUYB.s:9021 .text.f_mkdir:00000000 f_mkdir
|
||
/tmp/ccH7dUYB.s:9388 .text.f_rename:00000000 $t
|
||
/tmp/ccH7dUYB.s:9394 .text.f_rename:00000000 f_rename
|
||
/tmp/ccH7dUYB.s:9681 .rodata.f_mkfs.str1.4:00000000 $d
|
||
/tmp/ccH7dUYB.s:9691 .text.f_mkfs:00000000 $t
|
||
/tmp/ccH7dUYB.s:9697 .text.f_mkfs:00000000 f_mkfs
|
||
/tmp/ccH7dUYB.s:10298 .text.f_mkfs:000002a0 $d
|
||
/tmp/ccH7dUYB.s:11887 .rodata.cst32.1:00000000 cst32.1
|
||
/tmp/ccH7dUYB.s:11875 .rodata.cst.0:00000000 cst.0
|
||
/tmp/ccH7dUYB.s:10306 .text.f_mkfs:000002b4 $t
|
||
/tmp/ccH7dUYB.s:10943 .text.f_mkfs:00000644 $d
|
||
/tmp/ccH7dUYB.s:10951 .text.f_mkfs:0000065c $t
|
||
/tmp/ccH7dUYB.s:11023 .text.f_gets:00000000 $t
|
||
/tmp/ccH7dUYB.s:11029 .text.f_gets:00000000 f_gets
|
||
/tmp/ccH7dUYB.s:11149 .text.f_putc:00000000 $t
|
||
/tmp/ccH7dUYB.s:11155 .text.f_putc:00000000 f_putc
|
||
/tmp/ccH7dUYB.s:11200 .text.f_puts:00000000 $t
|
||
/tmp/ccH7dUYB.s:11206 .text.f_puts:00000000 f_puts
|
||
/tmp/ccH7dUYB.s:11263 .text.f_printf:00000000 $t
|
||
/tmp/ccH7dUYB.s:11269 .text.f_printf:00000000 f_printf
|
||
/tmp/ccH7dUYB.s:11455 .text.f_printf:000000a0 $d
|
||
/tmp/ccH7dUYB.s:11872 .rodata.cst.0:00000000 $d
|
||
/tmp/ccH7dUYB.s:11884 .rodata.cst32.1:00000000 $d
|
||
/tmp/ccH7dUYB.s:11896 .rodata.ExCvt:00000000 $d
|
||
/tmp/ccH7dUYB.s:11908 .bss.Files:00000000 $d
|
||
/tmp/ccH7dUYB.s:11914 .bss.Fsid:00000000 $d
|
||
/tmp/ccH7dUYB.s:11920 .bss.FatFs:00000000 $d
|
||
/tmp/ccH7dUYB.s:11479 .text.f_printf:000000b7 $d
|
||
/tmp/ccH7dUYB.s:11479 .text.f_printf:000000b8 $t
|
||
|
||
UNDEFINED SYMBOLS
|
||
disk_status
|
||
disk_write
|
||
disk_read
|
||
disk_initialize
|
||
disk_ioctl
|
||
get_fattime
|