3996 lines
244 KiB
Plaintext
3996 lines
244 KiB
Plaintext
![]() |
|
||
|
rom.exe: file format ELF32-pi32v2
|
||
|
|
||
|
Disassembly of section .rom_code:
|
||
|
_start:
|
||
|
110000: c0 ea d9 07 goto 0xfb2 <usb_code_end : 110fb6 > ## startup.S:25:0
|
||
|
|
||
|
|
||
|
exception_irq_handler:
|
||
|
110004: 58 e9 2f 38 [--sp] = {ssp, usp, icfg, psr, rets, retx, rete, reti} ## startup.S:91:0
|
||
|
110008: d8 e8 ff ff [--sp] = {r15-r0} ## startup.S:92:0
|
||
|
11000c: 64 e0 00 0e r0 = sp ## startup.S:93:0
|
||
|
110010: 80 ea 7b 08 call 0x10f6 <exception_analyze : 11110a > ## startup.S:94:0
|
||
|
110014: f7 9f goto -0x2 <exception_irq_handler+0x10 : 110014 > ## startup.S:96:0
|
||
|
|
||
|
|
||
|
the_debug_isr:
|
||
|
110016: d8 e8 01 00 [--sp] = {r0} ## debug_stub.S:16:0
|
||
|
11001a: 64 e0 00 0e r0 = sp ## debug_stub.S:17:0
|
||
|
11001e: ee ff bc be 02 00 sp = 0x2bebc ## debug_stub.S:18:0
|
||
|
110024: 58 e9 ff 7f [--sp] = {sp, ssp, usp, icfg, sr10, sr9, sr8, sr7, cnum, psr, sr4, rets, retx, rete, reti} ## debug_stub.S:20:0
|
||
|
110028: d8 e8 ff ff [--sp] = {r15-r0} ## debug_stub.S:21:0
|
||
|
11002c: 01 60 r1 = [r0+0x0] ## debug_stub.S:41:0
|
||
|
11002e: 81 20 [sp] = r1 ## debug_stub.S:42:0
|
||
|
110030: 08 84 r0 = r0 + 0x4 ## debug_stub.S:44:0
|
||
|
110032: 80 3e [sp+120] = r0 ## debug_stub.S:45:0
|
||
|
110034: 64 e0 00 0e r0 = sp ## debug_stub.S:46:0
|
||
|
110038: c1 ff 80 f0 10 00 r1 = 0x10f080 <_IRQ_MEM_ADDR+0xE3180 : 10f080 > ## debug_stub.S:47:0
|
||
|
11003e: 90 61 [r1+0x4] = r0 ## debug_stub.S:48:0
|
||
|
110040: 12 60 r2 = [r1+0x0] ## debug_stub.S:50:0
|
||
|
110042: ba 3f r2 &= 0x7fffffff ## debug_stub.S:51:0
|
||
|
110044: 92 60 [r1+0x0] = r2 ## debug_stub.S:52:0
|
||
|
110046: 4a 20 r2 = 0x20 ## debug_stub.S:55:0
|
||
|
110048: 00 00 nop ## debug_stub.S:57:0
|
||
|
11004a: 02 ea fd ff if (--r2 != 0) goto -0x6 <the_debug_isr+0x32 : 110048 > ## debug_stub.S:58:0
|
||
|
11004e: 10 60 r0 = [r1+0x0] ## debug_stub.S:59:0
|
||
|
110050: 50 e8 f9 f9 if ((r0 & 0x80000000) == 0) goto -0xe <the_debug_isr+0x30 : 110046 > ## debug_stub.S:61:0
|
||
|
110054: d4 e8 ff ff {r15-r0} = [sp++] ## debug_stub.S:64:0
|
||
|
110058: 50 e9 ff 7f {sp, ssp, usp, icfg, sr10, sr9, sr8, sr7, cnum, psr, sr4, rets, retx, rete, reti} = [sp++] ## debug_stub.S:65:0
|
||
|
11005c: 83 00 rte ## debug_stub.S:67:0
|
||
|
|
||
|
|
||
|
memmove:
|
||
|
11005e: 76 04 [--sp] = {rets, r6-r4}
|
||
|
110060: 00 ec 03 10 if (r1 > r0) goto 0x6 <memmove+0xC : 11006a >
|
||
|
110064: 93 1c r3 = r1 + r2
|
||
|
110066: 00 ec 29 30 if (r3 > r0) goto 0x52 <memmove+0x5E : 1100bc >
|
||
|
11006a: 03 16 r3 = r0
|
||
|
11006c: 82 f9 14 10 if (r2 < 0x8) goto 0x28 <memmove+0x3A : 110098 >
|
||
|
110070: 65 e1 03 10 r5 = r1 & 0x3
|
||
|
110074: 64 e1 03 30 r4 = r3 & 0x3
|
||
|
110078: 04 46 if (r4 == 0) goto 0xc <memmove+0x28 : 110086 >
|
||
|
11007a: a6 e0 04 40 r6 = 0x4 - r4
|
||
|
11007e: a2 1f r2 = r2 - r6
|
||
|
110080: 16 03 rep 0x4 r6 {
|
||
|
110082: 16 07 r6 = b[r1++=0x1] (u)
|
||
|
110084: b6 07 b[r3++=0x1] = r6
|
||
|
}
|
||
|
110086: 5c 19 r4 ^= r5
|
||
|
110088: a5 a2 r5 = r2 >> 0x2
|
||
|
11008a: 84 4a if (r4 != 0) goto 0x14 <memmove+0x42 : 1100a0 >
|
||
|
11008c: 15 03 rep 0x4 r5 {
|
||
|
11008e: 16 05 r6 = [r1++=0x4]
|
||
|
110090: b6 05 [r3++=0x4] = r6
|
||
|
}
|
||
|
110092: f5 5c if (r5 != 0) goto -0x8 <memmove+0x2E : 11008c >
|
||
|
110094: 62 e1 03 20 r2 = r2 & 0x3
|
||
|
110098: 12 03 rep 0x4 r2 {
|
||
|
11009a: 12 07 r2 = b[r1++=0x1] (u)
|
||
|
11009c: b2 07 b[r3++=0x1] = r2
|
||
|
}
|
||
|
11009e: 56 04 {pc, r6-r4} = [sp++]
|
||
|
1100a0: a5 03 rep 0x16 r5 {
|
||
|
1100a2: 16 07 r6 = b[r1++=0x1] (u)
|
||
|
1100a4: 14 07 r4 = b[r1++=0x1] (u)
|
||
|
1100a6: a6 f1 20 44 r6 <= insert(r4, p:0x8, l:0x8) #
|
||
|
1100aa: 14 07 r4 = b[r1++=0x1] (u)
|
||
|
1100ac: a6 f1 20 48 r6 <= insert(r4, p:0x10, l:0x8) #
|
||
|
1100b0: 14 07 r4 = b[r1++=0x1] (u)
|
||
|
1100b2: a6 e1 20 4c r6 <= insert(r4, p:0x18, l:0x8)
|
||
|
1100b6: b6 05 [r3++=0x4] = r6
|
||
|
}
|
||
|
1100b8: f5 53 if (r5 != 0) goto -0x1a <memmove+0x42 : 1100a0 >
|
||
|
1100ba: f7 8c goto -0x28 <memmove+0x36 : 110094 >
|
||
|
1100bc: 83 1c r3 = r0 + r2
|
||
|
1100be: 91 1c r1 = r1 + r2
|
||
|
1100c0: 82 f9 17 10 if (r2 < 0x8) goto 0x2e <memmove+0x94 : 1100f2 >
|
||
|
1100c4: 65 e1 03 10 r5 = r1 & 0x3
|
||
|
1100c8: 64 e1 03 30 r4 = r3 & 0x3
|
||
|
1100cc: 04 47 if (r4 == 0) goto 0xe <memmove+0x7E : 1100dc >
|
||
|
1100ce: 22 1f r2 = r2 - r4
|
||
|
1100d0: 46 16 r6 = r4
|
||
|
1100d2: 36 03 rep 0x8 r6 {
|
||
|
1100d4: 59 ee 1f 6f r6 = b[++r1=-0x1] (u)
|
||
|
1100d8: 5b ee 3f 6f b[++r3=-0x1] = r6
|
||
|
}
|
||
|
1100dc: 5c 19 r4 ^= r5
|
||
|
1100de: a5 a2 r5 = r2 >> 0x2
|
||
|
1100e0: 84 4e if (r4 != 0) goto 0x1c <memmove+0xA0 : 1100fe >
|
||
|
1100e2: 35 03 rep 0x8 r5 {
|
||
|
1100e4: d7 ec 1e 6f r6 = [++r1=-0x4]
|
||
|
1100e8: d7 ec 3f 6f [++r3=-0x4] = r6
|
||
|
}
|
||
|
1100ec: f5 5a if (r5 != 0) goto -0xc <memmove+0x84 : 1100e2 >
|
||
|
1100ee: 62 e1 03 20 r2 = r2 & 0x3
|
||
|
1100f2: 32 03 rep 0x8 r2 {
|
||
|
1100f4: 59 ee 1f 6f r6 = b[++r1=-0x1] (u)
|
||
|
1100f8: 5b ee 3f 6f b[++r3=-0x1] = r6
|
||
|
}
|
||
|
1100fc: 56 04 {pc, r6-r4} = [sp++]
|
||
|
1100fe: f9 3f r1 += -0x1
|
||
|
110100: b5 03 rep 0x18 r5 {
|
||
|
110102: 1e 07 r6 = b[r1++=-0x1] (u)
|
||
|
110104: 66 b8 r6 = r6 << 0x18
|
||
|
110106: 1c 07 r4 = b[r1++=-0x1] (u)
|
||
|
110108: a6 f1 20 48 r6 <= insert(r4, p:0x10, l:0x8) #
|
||
|
11010c: 1c 07 r4 = b[r1++=-0x1] (u)
|
||
|
11010e: a6 f1 20 44 r6 <= insert(r4, p:0x8, l:0x8) #
|
||
|
110112: 1c 07 r4 = b[r1++=-0x1] (u)
|
||
|
110114: 46 19 r6 |= r4
|
||
|
110116: d7 ec 3f 6f [++r3=-0x4] = r6
|
||
|
}
|
||
|
11011a: f5 52 if (r5 != 0) goto -0x1c <memmove+0xA2 : 110100 >
|
||
|
11011c: 19 81 r1 = r1 + 0x1
|
||
|
11011e: f7 87 goto -0x32 <memmove+0x90 : 1100ee >
|
||
|
|
||
|
|
||
|
memset:
|
||
|
110120: 74 04 [--sp] = {rets, r4}
|
||
|
110122: 03 16 r3 = r0
|
||
|
110124: 02 52 if (r2 == 0) goto 0x24 <memset+0x2A : 11014a >
|
||
|
110126: 33 ea 03 40 if ((r3 & 0x3) != 0) {
|
||
|
11012a: f2 f0 01 20 r2 = r2 - 0x1 #
|
||
|
11012e: b1 07 b[r3++=0x1] = r1
|
||
|
110130: f7 99 goto -0xe
|
||
|
} <memset+0x4 : 110124 >
|
||
|
110132: a4 a2 r4 = r2 >> 0x2
|
||
|
110134: a1 e1 20 14 r1 <= insert(r1, p:0x8, l:0x8)
|
||
|
110138: a1 e1 40 18 r1 <= insert(r1, p:0x10, l:0x10)
|
||
|
11013c: 04 03 rep 0x2 r4 {
|
||
|
11013e: b1 05 [r3++=0x4] = r1
|
||
|
}
|
||
|
110140: f4 5d if (r4 != 0) goto -0x6 <memset+0x1C : 11013c >
|
||
|
110142: 62 e1 03 20 r2 = r2 & 0x3
|
||
|
110146: 02 03 rep 0x2 r2 {
|
||
|
110148: b1 07 b[r3++=0x1] = r1
|
||
|
}
|
||
|
11014a: 54 04 {pc, r4} = [sp++]
|
||
|
|
||
|
|
||
|
memcmp:
|
||
|
11014c: 74 04 [--sp] = {rets, r4}
|
||
|
11014e: 82 f9 19 08 if (r2 < 0x4) goto 0x32 <memcmp+0x38 : 110184 >
|
||
|
110152: 90 e1 10 30 r3 = r1 | r0
|
||
|
110156: 61 ff 03 30 14 00 if ((r3 & 0x3) != 0) goto 0x28 <memcmp+0x38 : 110184 >
|
||
|
11015c: 04 83 goto 0x6 <memcmp+0x18 : 110164 >
|
||
|
11015e: fa 3c r2 += -0x4
|
||
|
110160: c1 24 r1 += 0x4
|
||
|
110162: c0 24 r0 += 0x4
|
||
|
110164: 82 f9 0e 08 if (r2 < 0x4) goto 0x1c <memcmp+0x38 : 110184 >
|
||
|
110168: 13 60 r3 = [r1+0x0]
|
||
|
11016a: 04 60 r4 = [r0+0x0]
|
||
|
11016c: 03 e8 f7 41 if (r4 == r3) goto -0x12 <memcmp+0x12 : 11015e >
|
||
|
110170: 04 89 goto 0x12 <memcmp+0x38 : 110184 >
|
||
|
110172: d0 ee 11 30 r3 = b[r1++=0x1] (u)
|
||
|
110176: d0 ee 01 40 r4 = b[r0++=0x1] (u)
|
||
|
11017a: fa 3f r2 += -0x1
|
||
|
11017c: 94 e8 00 43 if (r4 != r3) {
|
||
|
110180: c8 1e r0 = r4 - r3
|
||
|
110182: 54 04 {pc, r4} = [sp++]
|
||
|
}
|
||
|
110184: f2 56 if (r2 != 0) goto -0x14 <memcmp+0x26 : 110172 >
|
||
|
110186: 40 20 r0 = 0x0
|
||
|
110188: 54 04 {pc, r4} = [sp++]
|
||
|
|
||
|
|
||
|
memmem:
|
||
|
11018a: 77 04 [--sp] = {rets, r7-r4}
|
||
|
11018c: 35 16 r5 = r3
|
||
|
11018e: 26 16 r6 = r2
|
||
|
110190: 17 16 r7 = r1
|
||
|
110192: 04 16 r4 = r0
|
||
|
110194: 85 49 if (r5 != 0) goto 0x12 <memmem+0x1E : 1101a8 >
|
||
|
110196: 04 8b goto 0x16 <memmem+0x24 : 1101ae >
|
||
|
110198: 40 16 r0 = r4
|
||
|
11019a: 61 16 r1 = r6
|
||
|
11019c: 52 16 r2 = r5
|
||
|
11019e: bf ea d5 ff call -0x56 <memcmp : 11014c >
|
||
|
1101a2: 00 45 if (r0 == 0) goto 0xa <memmem+0x24 : 1101ae >
|
||
|
1101a4: ff 3f r7 += -0x1
|
||
|
1101a6: c4 21 r4 += 0x1
|
||
|
1101a8: 05 e9 f6 71 if (r7 >= r5) goto -0x14 <memmem+0xE : 110198 >
|
||
|
1101ac: 44 20 r4 = 0x0
|
||
|
1101ae: 40 16 r0 = r4
|
||
|
1101b0: 57 04 {pc, r7-r4} = [sp++]
|
||
|
|
||
|
|
||
|
strcmp:
|
||
|
1101b2: 77 04 [--sp] = {rets, r7-r4}
|
||
|
1101b4: 64 e1 03 00 r4 = r0 & 0x3
|
||
|
1101b8: 04 4b if (r4 == 0) goto 0x16 <strcmp+0x1E : 1101d0 >
|
||
|
1101ba: a4 e0 04 40 r4 = 0x4 - r4
|
||
|
1101be: 0a 40 r2 = b[r0+0x0] (u)
|
||
|
1101c0: 22 41 if (r2 == 0) goto 0x82 <strcmp+0x92 : 110244 >
|
||
|
1101c2: 1b 40 r3 = b[r1+0x0] (u)
|
||
|
1101c4: 83 e8 3f 20 if (r2 != r3) goto 0x7e <strcmp+0x94 : 110246 >
|
||
|
1101c8: 08 81 r0 = r0 + 0x1
|
||
|
1101ca: 19 81 r1 = r1 + 0x1
|
||
|
1101cc: 04 ea f7 ff if (--r4 != 0) goto -0x12 <strcmp+0xC : 1101be >
|
||
|
1101d0: 90 e1 10 20 r2 = r1 | r0
|
||
|
1101d4: c6 ff ff fe fe fe r6 = 0xfefefeff <__stub_doe+0xFEEDD702 : fefefefe >
|
||
|
1101da: 61 ff 03 20 13 00 if ((r2 & 0x3) != 0) goto 0x26 <strcmp+0x54 : 110206 >
|
||
|
1101e0: 02 60 r2 = [r0+0x0]
|
||
|
1101e2: 13 60 r3 = [r1+0x0]
|
||
|
1101e4: 83 e8 26 20 if (r2 != r3) goto 0x4c <strcmp+0x82 : 110234 >
|
||
|
1101e8: 14 16 r4 = r1
|
||
|
1101ea: a1 1d r1 = r2 + r6
|
||
|
1101ec: 90 e1 13 12 r1 = r1 & ~r2
|
||
|
1101f0: 61 ff 80 13 2c 00 if ((r1 & 0x80808080) != 0) goto 0x58 <strcmp+0x9C : 11024e >
|
||
|
1101f6: 02 61 r2 = [r0+0x4]
|
||
|
1101f8: 45 61 r5 = [r4+0x4]
|
||
|
1101fa: 49 84 r1 = r4 + 0x4
|
||
|
1101fc: 08 84 r0 = r0 + 0x4
|
||
|
1101fe: 14 16 r4 = r1
|
||
|
110200: 05 e8 f3 21 if (r2 == r5) goto -0x1a <strcmp+0x38 : 1101ea >
|
||
|
110204: 04 97 goto 0x2e <strcmp+0x82 : 110234 >
|
||
|
110206: 14 16 r4 = r1
|
||
|
110208: 02 60 r2 = [r0+0x0]
|
||
|
11020a: 43 07 r3 = b[r4++=0x1] (u)
|
||
|
11020c: 45 07 r5 = b[r4++=0x1] (u)
|
||
|
11020e: a3 e1 20 54 r3 <= insert(r5, p:0x8, l:0x8)
|
||
|
110212: 45 07 r5 = b[r4++=0x1] (u)
|
||
|
110214: a3 e1 20 58 r3 <= insert(r5, p:0x10, l:0x8)
|
||
|
110218: 45 07 r5 = b[r4++=0x1] (u)
|
||
|
11021a: a3 e1 20 5c r3 <= insert(r5, p:0x18, l:0x8)
|
||
|
11021e: 83 e8 09 20 if (r2 != r3) goto 0x12 <strcmp+0x82 : 110234 >
|
||
|
110222: a5 1d r5 = r2 + r6
|
||
|
110224: 90 e1 53 52 r5 = r5 & ~r2
|
||
|
110228: 61 ff 80 53 10 00 if ((r5 & 0x80808080) != 0) goto 0x20 <strcmp+0x9C : 11024e >
|
||
|
11022e: 08 84 r0 = r0 + 0x4
|
||
|
110230: 19 84 r1 = r1 + 0x4
|
||
|
110232: f7 89 goto -0x2e <strcmp+0x54 : 110206 >
|
||
|
110234: 0a 40 r2 = b[r0+0x0] (u)
|
||
|
110236: 02 46 if (r2 == 0) goto 0xc <strcmp+0x92 : 110244 >
|
||
|
110238: 1c 40 r4 = b[r1+0x0] (u)
|
||
|
11023a: 84 e8 04 20 if (r2 != r4) goto 0x8 <strcmp+0x94 : 110246 >
|
||
|
11023e: 08 81 r0 = r0 + 0x1
|
||
|
110240: 19 81 r1 = r1 + 0x1
|
||
|
110242: f7 98 goto -0x10 <strcmp+0x82 : 110234 >
|
||
|
110244: 42 20 r2 = 0x0
|
||
|
110246: 13 16 r3 = r1
|
||
|
110248: 38 40 r0 = b[r3+0x0] (u)
|
||
|
11024a: 20 1e r0 = r2 - r0
|
||
|
11024c: 57 04 {pc, r7-r4} = [sp++]
|
||
|
11024e: 40 20 r0 = 0x0
|
||
|
110250: 57 04 {pc, r7-r4} = [sp++]
|
||
|
|
||
|
|
||
|
strcpy:
|
||
|
110252: 77 04 [--sp] = {rets, r7-r4}
|
||
|
110254: 07 16 r7 = r0
|
||
|
110256: 64 e1 03 00 r4 = r0 & 0x3
|
||
|
11025a: 04 47 if (r4 == 0) goto 0xe <strcpy+0x18 : 11026a >
|
||
|
11025c: a4 e0 04 40 r4 = 0x4 - r4
|
||
|
110260: 12 07 r2 = b[r1++=0x1] (u)
|
||
|
110262: 82 07 b[r0++=0x1] = r2
|
||
|
110264: 12 4b if (r2 == 0) goto 0x56 <strcpy+0x6A : 1102bc >
|
||
|
110266: 04 ea fb ff if (--r4 != 0) goto -0xa <strcpy+0xE : 110260 >
|
||
|
11026a: 90 e1 10 20 r2 = r1 | r0
|
||
|
11026e: c6 ff ff fe fe fe r6 = 0xfefefeff <__stub_doe+0xFEEDD702 : fefefefe >
|
||
|
110274: 61 ff 03 20 0a 00 if ((r2 & 0x3) != 0) goto 0x14 <strcpy+0x3C : 11028e >
|
||
|
11027a: 12 60 r2 = [r1+0x0]
|
||
|
11027c: a3 1d r3 = r2 + r6
|
||
|
11027e: 90 e1 33 32 r3 = r3 & ~r2
|
||
|
110282: 61 ff 80 33 17 00 if ((r3 & 0x80808080) != 0) goto 0x2e <strcpy+0x64 : 1102b6 >
|
||
|
110288: 19 84 r1 = r1 + 0x4
|
||
|
11028a: 82 05 [r0++=0x4] = r2
|
||
|
11028c: f7 96 goto -0x14 <strcpy+0x28 : 11027a >
|
||
|
11028e: 14 16 r4 = r1
|
||
|
110290: 42 07 r2 = b[r4++=0x1] (u)
|
||
|
110292: 45 07 r5 = b[r4++=0x1] (u)
|
||
|
110294: a2 e1 20 54 r2 <= insert(r5, p:0x8, l:0x8)
|
||
|
110298: 45 07 r5 = b[r4++=0x1] (u)
|
||
|
11029a: a2 e1 20 58 r2 <= insert(r5, p:0x10, l:0x8)
|
||
|
11029e: 45 07 r5 = b[r4++=0x1] (u)
|
||
|
1102a0: a2 e1 20 5c r2 <= insert(r5, p:0x18, l:0x8)
|
||
|
1102a4: a5 1d r5 = r2 + r6
|
||
|
1102a6: 90 e1 53 52 r5 = r5 & ~r2
|
||
|
1102aa: 61 ff 80 53 03 00 if ((r5 & 0x80808080) != 0) goto 0x6 <strcpy+0x64 : 1102b6 >
|
||
|
1102b0: 82 05 [r0++=0x4] = r2
|
||
|
1102b2: 41 16 r1 = r4
|
||
|
1102b4: f7 8c goto -0x28 <strcpy+0x3C : 11028e >
|
||
|
1102b6: 12 07 r2 = b[r1++=0x1] (u)
|
||
|
1102b8: 82 07 b[r0++=0x1] = r2
|
||
|
1102ba: f2 5d if (r2 != 0) goto -0x6 <strcpy+0x64 : 1102b6 >
|
||
|
1102bc: 70 16 r0 = r7
|
||
|
1102be: 57 04 {pc, r7-r4} = [sp++]
|
||
|
|
||
|
|
||
|
strlen:
|
||
|
1102c0: 01 16 r1 = r0
|
||
|
1102c2: d0 ee 11 20 r2 = b[r1++=0x1] (u)
|
||
|
1102c6: f2 5d if (r2 != 0) goto -0x6 <strlen+0x2 : 1102c2 >
|
||
|
1102c8: f9 3f r1 += -0x1
|
||
|
1102ca: 10 1e r0 = r1 - r0
|
||
|
1102cc: 80 00 rts
|
||
|
|
||
|
|
||
|
nvram_uart_tag:
|
||
|
1102ce: 75 61 72 74 d9 c4 05 a8
|
||
|
|
||
|
|
||
|
nvram_usb_tag:
|
||
|
1102d6: 75 73 62 ed 63 81 67 ef
|
||
|
|
||
|
|
||
|
chip_reset:
|
||
|
1102de: 68 20 r0 = 0xa0 ## main.c:74:0
|
||
|
1102e0: 41 30 r1 = 0x10 ## main.c:75:5
|
||
|
1102e2: 80 ea f1 06 call 0xde2 <p33_tx_1byte : 1110c8 > ## main.c:75:5
|
||
|
1102e6: f7 9f goto -0x2 <chip_reset+0x8 : 1102e6 > ## main.c:78:5
|
||
|
|
||
|
|
||
|
nvram_boot_state:
|
||
|
1102e8: 75 04 [--sp] = {rets, r5, r4} ## boot_nvram.c:121:0
|
||
|
1102ea: c5 ff 00 08 01 00 r5 = 0x10800 <nvram_list : 10800 > ## boot_nvram.c:121:0
|
||
|
1102f0: 5c 84 r4 = r5 + 0x4 ## boot_nvram.c:122:9
|
||
|
1102f2: c1 ff d6 02 11 00 r1 = 0x1102d6 <nvram_usb_tag : 1102d6 > ## boot_nvram.c:122:9
|
||
|
1102f8: 42 28 r2 = 0x8 ## boot_nvram.c:122:9
|
||
|
1102fa: 40 16 r0 = r4 ## boot_nvram.c:122:9
|
||
|
1102fc: bf ea 26 ff call -0x1b4 <memcmp : 11014c > ## boot_nvram.c:122:9
|
||
|
110300: 00 4c if (r0 == 0) goto 0x18 <nvram_boot_state+0x32 : 11031a > ## boot_nvram.c:122:9
|
||
|
110302: c1 ff ce 02 11 00 r1 = 0x1102ce <nvram_uart_tag : 1102ce > ## boot_nvram.c:125:16
|
||
|
110308: 42 28 r2 = 0x8 ## boot_nvram.c:125:16
|
||
|
11030a: 40 16 r0 = r4 ## boot_nvram.c:125:16
|
||
|
11030c: bf ea 1e ff call -0x1c4 <memcmp : 11014c > ## boot_nvram.c:125:16
|
||
|
110310: 01 16 r1 = r0 ## boot_nvram.c:125:16
|
||
|
110312: 40 20 r0 = 0x0 ## boot_nvram.c:125:16
|
||
|
110314: 81 47 if (r1 != 0) goto 0xe <nvram_boot_state+0x3C : 110324 > ## boot_nvram.c:125:16
|
||
|
110316: 40 23 r0 = 0x3
|
||
|
110318: 04 81 goto 0x2 <nvram_boot_state+0x34 : 11031c >
|
||
|
11031a: 40 22 r0 = 0x2
|
||
|
11031c: 42 20 r2 = 0x0 ## boot_nvram.c:118:5
|
||
|
11031e: 43 20 r3 = 0x0 ## boot_nvram.c:118:5
|
||
|
110320: 50 ec 55 20 d[r5+0x4] = r3_r2 ## boot_nvram.c:118:5
|
||
|
110324: 55 04 {pc, r5, r4} = [sp++] ## boot_nvram.c:130:1
|
||
|
|
||
|
|
||
|
nvram_get_addr:
|
||
|
110326: c0 ff 00 08 01 00 r0 = 0x10800 <nvram_list : 10800 > ## boot_nvram.c:146:0
|
||
|
11032c: 80 00 rts ## boot_nvram.c:147:5
|
||
|
|
||
|
|
||
|
nvram_set_boot_state:
|
||
|
11032e: 00 f8 09 04 if (r0 == 0x2) goto 0x12 <nvram_set_boot_state+0x16 : 110344 > ## boot_nvram.c:132:0
|
||
|
110332: 80 f8 12 06 if (r0 != 0x3) goto 0x24 <nvram_set_boot_state+0x2C : 11035a > ## boot_nvram.c:132:0
|
||
|
110336: c0 ff 75 61 72 74 r0 = 0x74726175 <__stub_doe+0x74613978 : 74726174 > ## boot_nvram.c:132:0
|
||
|
11033c: c1 ff d9 c4 05 a8 r1 = 0xa805c4d9 <__stub_doe+0xA7F49CDC : a805c4d8 > ## boot_nvram.c:132:0
|
||
|
110342: 04 86 goto 0xc <nvram_set_boot_state+0x22 : 110350 > ## boot_nvram.c:132:0
|
||
|
110344: c0 ff 75 73 62 ed r0 = 0xed627375 <__stub_doe+0xED514B78 : ed627374 > ## boot_nvram.c:132:0
|
||
|
11034a: c1 ff 63 81 67 ef r1 = 0xef678163 <__stub_doe+0xEF565966 : ef678162 > ## boot_nvram.c:132:0
|
||
|
110350: c2 ff 00 08 01 00 r2 = 0x10800 <nvram_list : 10800 > ## boot_nvram.c:132:0
|
||
|
110356: 50 ec 25 00 d[r2+0x4] = r1_r0 ## boot_nvram.c:132:0
|
||
|
11035a: 80 00 rts ## boot_nvram.c:144:1
|
||
|
|
||
|
|
||
|
os_code_begin:
|
||
|
11035c: 60 00 cli ## mask_export.c:60:0
|
||
|
11035e: c0 ff bc be 02 00 r0 = 0x2bebc <the_debug_isr_stack : 2bebc > ## mask_export.c:62:35
|
||
|
110364: c0 eb 01 00 [r0+0x0] += 0x1 ## mask_export.c:62:35
|
||
|
110368: 80 00 rts ## mask_export.c:63:1
|
||
|
|
||
|
|
||
|
local_irq_enable:
|
||
|
11036a: c0 ff bc be 02 00 r0 = 0x2bebc <the_debug_isr_stack : 2bebc > ## mask_export.c:71:0
|
||
|
110370: 01 60 r1 = [r0+0x0] ## mask_export.c:72:9
|
||
|
110372: f9 3f r1 += -0x1 ## mask_export.c:72:9
|
||
|
110374: 81 60 [r0+0x0] = r1 ## mask_export.c:72:9
|
||
|
110376: 81 41 if (r1 != 0) goto 0x2 <local_irq_enable+0x10 : 11037a > ## mask_export.c:72:9
|
||
|
110378: 61 00 sti ## mask_export.c:73:9
|
||
|
11037a: 80 00 rts ## mask_export.c:75:1
|
||
|
|
||
|
|
||
|
irq_init:
|
||
|
11037c: c0 ff bc be 02 00 r0 = 0x2bebc <the_debug_isr_stack : 2bebc > ## mask_export.c:67:0
|
||
|
110382: 40 ea 00 00 [r0+0x0] = 0x0 ## mask_export.c:68:5
|
||
|
110386: 80 00 rts ## mask_export.c:69:1
|
||
|
|
||
|
|
||
|
mask_init:
|
||
|
110388: c1 ff bc be 02 00 r1 = 0x2bebc <the_debug_isr_stack : 2bebc > ## mask_export.c:53:0
|
||
|
11038e: 40 ea 00 10 [r1+0x0] = 0x0 ## mask_export.c:68:5
|
||
|
110392: c1 ff c0 be 02 00 r1 = 0x2bec0 <exception_irq_hook : 2bec0 > ## mask_export.c:56:24
|
||
|
110398: 90 60 [r1+0x0] = r0 ## mask_export.c:56:24
|
||
|
11039a: 80 00 rts ## mask_export.c:57:1
|
||
|
|
||
|
|
||
|
usb_code_begin:
|
||
|
11039c: c2 ff 00 18 1e 00 r2 = 0x1e1800 <__stub_doe+0xCF004 : 1e1800 > ## usb_phy.c:52:0
|
||
|
1103a2: 23 60 r3 = [r2+0x0] ## usb_phy.c:54:19
|
||
|
1103a4: 53 e8 07 10 if ((r3 & 0x4) == 0) goto 0xe <usb_code_begin+0x1A : 1103b6 >
|
||
|
1103a8: a1 e1 20 04 r1 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:57:32
|
||
|
1103ac: a1 61 [r2+0x4] = r1 ## usb_phy.c:57:18
|
||
|
1103ae: 20 00 csync ## usb_phy.c:58:5
|
||
|
1103b0: 20 61 r0 = [r2+0x4] ## usb_phy.c:59:21
|
||
|
1103b2: 50 e8 fd 79 if ((r0 & 0x8000) == 0) goto -0x6 <usb_code_begin+0x14 : 1103b0 > ## usb_phy.c:59:21
|
||
|
1103b6: 80 00 rts ## usb_phy.c:66:1
|
||
|
|
||
|
|
||
|
musb_read_usb:
|
||
|
1103b8: c1 ff 00 18 1e 00 r1 = 0x1e1800 <__stub_doe+0xCF004 : 1e1800 > ## usb_phy.c:31:0
|
||
|
1103be: 13 60 r3 = [r1+0x0] ## usb_phy.c:35:19
|
||
|
1103c0: 42 20 r2 = 0x0
|
||
|
1103c2: 53 e8 08 10 if ((r3 & 0x4) == 0) goto 0x10 <musb_read_usb+0x1E : 1103d6 >
|
||
|
1103c6: 30 26 r0 |= 0x40 ## usb_phy.c:38:26
|
||
|
1103c8: 00 a8 r0 = r0 << 0x8 ## usb_phy.c:38:36
|
||
|
1103ca: 90 61 [r1+0x4] = r0 ## usb_phy.c:38:18
|
||
|
1103cc: 20 00 csync ## usb_phy.c:39:5
|
||
|
1103ce: 10 61 r0 = [r1+0x4] ## usb_phy.c:40:21
|
||
|
1103d0: 50 e8 fd 79 if ((r0 & 0x8000) == 0) goto -0x6 <musb_read_usb+0x16 : 1103ce > ## usb_phy.c:40:5
|
||
|
1103d4: 12 61 r2 = [r1+0x4] ## usb_phy.c:47:20
|
||
|
1103d6: 20 17 r0 = r2.b0 (u) ## usb_phy.c:49:1
|
||
|
1103d8: 80 00 rts ## usb_phy.c:49:1
|
||
|
|
||
|
|
||
|
usb_clr_intr_rxe:
|
||
|
1103da: 75 04 [--sp] = {rets, r5, r4} ## usb_phy.c:210:0
|
||
|
1103dc: 04 16 r4 = r0 ## usb_phy.c:210:0
|
||
|
1103de: bf ea bd ff call -0x86 <os_code_begin : 11035c > ## usb_phy.c:211:5
|
||
|
1103e2: 40 29 r0 = 0x9 ## usb_phy.c:212:20
|
||
|
1103e4: 71 89 call -0x2e <musb_read_usb : 1103b8 > ## usb_phy.c:212:20
|
||
|
1103e6: 05 16 r5 = r0 ## usb_phy.c:212:20
|
||
|
1103e8: 40 2a r0 = 0xa ## usb_phy.c:212:51
|
||
|
1103ea: 71 86 call -0x34 <musb_read_usb : 1103b8 > ## usb_phy.c:212:51
|
||
|
1103ec: b4 e8 ff df if (r4 != -0x1) { ## usb_phy.c:212:51
|
||
|
1103f0: c1 ff ff ff 00 00 r1 = 0xffff <text_size+0xD7FE : fffe > ## usb_phy.c:216:21
|
||
|
1103f6: 94 e1 11 14 r1 = r1 ^ (1 << r4) ## usb_phy.c:216:21
|
||
|
1103fa: a5 e1 20 04 r5 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:212:49
|
||
|
1103fe: 90 e1 52 41 r4 = r5 & r1
|
||
|
} else { ## usb_phy.c:216:18
|
||
|
110402: 44 20 r4 = 0x0
|
||
|
}
|
||
|
110404: 71 e1 7f 4c r1 = r4 & 0xFFFF00FF ## usb_phy.c:218:5
|
||
|
110408: 40 29 r0 = 0x9 ## usb_phy.c:218:5
|
||
|
11040a: 61 88 call -0x70 <usb_code_begin : 11039c > ## usb_phy.c:218:5
|
||
|
11040c: c1 a8 r1 = r4 >> 0x8 ## usb_phy.c:219:44
|
||
|
11040e: 40 2a r0 = 0xa ## usb_phy.c:219:5
|
||
|
110410: 61 85 call -0x76 <usb_code_begin : 11039c > ## usb_phy.c:219:5
|
||
|
110412: 35 04 {rets, r5, r4} = [sp++] ## usb_phy.c:220:5
|
||
|
110414: ff ea a9 ff goto -0xae <local_irq_enable : 11036a > ## usb_phy.c:220:5
|
||
|
|
||
|
|
||
|
usb_clr_intr_txe:
|
||
|
110418: 75 04 [--sp] = {rets, r5, r4} ## usb_phy.c:188:0
|
||
|
11041a: 04 16 r4 = r0 ## usb_phy.c:188:0
|
||
|
11041c: bf ea 9e ff call -0xc4 <os_code_begin : 11035c > ## usb_phy.c:189:5
|
||
|
110420: 40 27 r0 = 0x7 ## usb_phy.c:190:20
|
||
|
110422: 61 8a call -0x6c <musb_read_usb : 1103b8 > ## usb_phy.c:190:20
|
||
|
110424: 05 16 r5 = r0 ## usb_phy.c:190:20
|
||
|
110426: 40 28 r0 = 0x8 ## usb_phy.c:190:51
|
||
|
110428: 61 87 call -0x72 <musb_read_usb : 1103b8 > ## usb_phy.c:190:51
|
||
|
11042a: b4 e8 ff df if (r4 != -0x1) { ## usb_phy.c:190:51
|
||
|
11042e: c1 ff ff ff 00 00 r1 = 0xffff <text_size+0xD7FE : fffe > ## usb_phy.c:194:21
|
||
|
110434: 94 e1 11 14 r1 = r1 ^ (1 << r4) ## usb_phy.c:194:21
|
||
|
110438: a5 e1 20 04 r5 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:190:49
|
||
|
11043c: 90 e1 52 41 r4 = r5 & r1
|
||
|
} else { ## usb_phy.c:194:18
|
||
|
110440: 44 20 r4 = 0x0
|
||
|
}
|
||
|
110442: 71 e1 7f 4c r1 = r4 & 0xFFFF00FF ## usb_phy.c:196:5
|
||
|
110446: 40 27 r0 = 0x7 ## usb_phy.c:196:5
|
||
|
110448: 51 89 call -0xae <usb_code_begin : 11039c > ## usb_phy.c:196:5
|
||
|
11044a: c1 a8 r1 = r4 >> 0x8 ## usb_phy.c:197:44
|
||
|
11044c: 40 28 r0 = 0x8 ## usb_phy.c:197:5
|
||
|
11044e: 51 86 call -0xb4 <usb_code_begin : 11039c > ## usb_phy.c:197:5
|
||
|
110450: 35 04 {rets, r5, r4} = [sp++] ## usb_phy.c:198:5
|
||
|
110452: ff ea 8a ff goto -0xec <local_irq_enable : 11036a > ## usb_phy.c:198:5
|
||
|
|
||
|
|
||
|
musb_write_index:
|
||
|
110456: 01 16 r1 = r0 ## usb_phy.c:68:0
|
||
|
110458: 40 2e r0 = 0xe ## usb_phy.c:69:5
|
||
|
11045a: d7 80 goto -0xc0 <usb_code_begin : 11039c > ## usb_phy.c:69:5
|
||
|
|
||
|
|
||
|
usb_read_rxcsr:
|
||
|
11045c: 74 04 [--sp] = {rets, r4} ## usb_phy.c:253:0
|
||
|
11045e: bf ea 7d ff call -0x106 <os_code_begin : 11035c > ## usb_phy.c:254:5
|
||
|
110462: 40 21 r0 = 0x1 ## usb_phy.c:255:5
|
||
|
110464: 71 98 call -0x10 <musb_write_index : 110456 > ## usb_phy.c:255:5
|
||
|
110466: 40 34 r0 = 0x14 ## usb_phy.c:256:17
|
||
|
110468: 51 87 call -0xb2 <musb_read_usb : 1103b8 > ## usb_phy.c:256:17
|
||
|
11046a: 04 16 r4 = r0 ## usb_phy.c:256:17
|
||
|
11046c: 40 35 r0 = 0x15 ## usb_phy.c:256:47
|
||
|
11046e: 51 84 call -0xb8 <musb_read_usb : 1103b8 > ## usb_phy.c:256:47
|
||
|
110470: a4 e1 20 04 r4 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:256:44
|
||
|
110474: bf ea 79 ff call -0x10e <local_irq_enable : 11036a > ## usb_phy.c:257:5
|
||
|
110478: 40 16 r0 = r4 ## usb_phy.c:258:5
|
||
|
11047a: 54 04 {pc, r4} = [sp++] ## usb_phy.c:258:5
|
||
|
|
||
|
|
||
|
usb_write_rxcsr:
|
||
|
11047c: 74 04 [--sp] = {rets, r4} ## usb_phy.c:245:0
|
||
|
11047e: 14 16 r4 = r1 ## usb_phy.c:245:0
|
||
|
110480: 01 16 r1 = r0 ## usb_phy.c:245:0
|
||
|
110482: bf ea 6b ff call -0x12a <os_code_begin : 11035c > ## usb_phy.c:246:5
|
||
|
110486: 10 17 r0 = r1.b0 (u) ## usb_phy.c:247:5
|
||
|
110488: 71 86 call -0x34 <musb_write_index : 110456 > ## usb_phy.c:247:5
|
||
|
11048a: 41 17 r1 = r4.b0 (u) ## usb_phy.c:248:5
|
||
|
11048c: 40 34 r0 = 0x14 ## usb_phy.c:248:5
|
||
|
11048e: 41 86 call -0xf4 <usb_code_begin : 11039c > ## usb_phy.c:248:5
|
||
|
110490: b1 e1 20 44 r1 = uextra(r4, p:0x8, l:0x8) ## usb_phy.c:249:5
|
||
|
110494: 40 35 r0 = 0x15 ## usb_phy.c:249:5
|
||
|
110496: 41 82 call -0xfc <usb_code_begin : 11039c > ## usb_phy.c:249:5
|
||
|
110498: 34 04 {rets, r4} = [sp++] ## usb_phy.c:250:5
|
||
|
11049a: ff ea 66 ff goto -0x134 <local_irq_enable : 11036a > ## usb_phy.c:250:5
|
||
|
|
||
|
|
||
|
usb_g_bulk_read:
|
||
|
11049e: 7a 04 [--sp] = {rets, r10-r4} ## usb_phy.c:432:0
|
||
|
1104a0: 14 16 r4 = r1 ## usb_phy.c:432:0
|
||
|
1104a2: 05 16 r5 = r0 ## usb_phy.c:432:0
|
||
|
1104a4: 14 5a if (r4 == 0) goto 0x74 <usb_g_bulk_read+0x7C : 11051a > ## usb_phy.c:432:0
|
||
|
1104a6: c0 ff ac 13 01 00 r0 = 0x113ac <ep_raddr : 113ac > ## usb_phy.c:432:0
|
||
|
1104ac: d0 ec 00 80 r8 = [r0+0x0] ## usb_phy.c:432:0
|
||
|
1104b0: 4a e0 01 00 r10 = 0x1 ## usb_phy.c:432:0
|
||
|
1104b4: 32 e8 00 00 if (r2 == 0x0) { ## usb_phy.c:432:0
|
||
|
1104b8: 2a 16 r10 = r2
|
||
|
} ## usb_phy.c:432:0
|
||
|
1104ba: c1 14 r9 = 0 ## usb_phy.c:432:0
|
||
|
1104bc: bf ea 4e ff call -0x164 <os_code_begin : 11035c > ## usb_phy.c:337:5
|
||
|
1104c0: 40 21 r0 = 0x1 ## usb_phy.c:339:5
|
||
|
1104c2: 61 89 call -0x6e <musb_write_index : 110456 > ## usb_phy.c:339:5
|
||
|
1104c4: 40 34 r0 = 0x14 ## usb_phy.c:340:9
|
||
|
1104c6: bf ea 77 ff call -0x112 <musb_read_usb : 1103b8 > ## usb_phy.c:340:9
|
||
|
1104ca: 50 e8 03 02 if ((r0 & 0x1) != 0) goto 0x6 <usb_g_bulk_read+0x36 : 1104d4 > ## usb_phy.c:340:9
|
||
|
1104ce: bf ea 4c ff call -0x168 <local_irq_enable : 11036a > ## usb_phy.c:343:5
|
||
|
1104d2: 04 9f goto 0x3e <usb_g_bulk_read+0x74 : 110512 > ## usb_phy.c:343:5
|
||
|
1104d4: 40 36 r0 = 0x16 ## usb_phy.c:341:19
|
||
|
1104d6: bf ea 6f ff call -0x122 <musb_read_usb : 1103b8 > ## usb_phy.c:341:19
|
||
|
1104da: 06 16 r6 = r0 ## usb_phy.c:341:19
|
||
|
1104dc: 40 37 r0 = 0x17 ## usb_phy.c:341:51
|
||
|
1104de: bf ea 6b ff call -0x12a <musb_read_usb : 1103b8 > ## usb_phy.c:341:51
|
||
|
1104e2: a6 e1 20 04 r6 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:341:48
|
||
|
1104e6: bf ea 40 ff call -0x180 <local_irq_enable : 11036a > ## usb_phy.c:343:5
|
||
|
1104ea: 06 53 if (r6 == 0) goto 0x26 <usb_g_bulk_read+0x74 : 110512 > ## usb_phy.c:343:5
|
||
|
1104ec: 51 97 call -0x92 <usb_read_rxcsr : 11045c > ## usb_phy.c:361:21
|
||
|
1104ee: 77 e1 ba 0f r7 = r0 & 0xFFFFFE8B ## usb_phy.c:372:19
|
||
|
1104f2: b5 e8 00 c0 if (r5 != 0x0) {
|
||
|
1104f6: 50 16 r0 = r5 ## usb_phy.c:375:13
|
||
|
1104f8: 81 16 r1 = r8 ## usb_phy.c:375:13
|
||
|
1104fa: 62 16 r2 = r6 ## usb_phy.c:375:13
|
||
|
1104fc: bf ea af fd call -0x4a2
|
||
|
} <memmove : 11005e > ## usb_phy.c:375:13
|
||
|
110500: 41 e1 10 70 r1 = r7 | 0x10 ## usb_phy.c:377:46
|
||
|
110504: 40 21 r0 = 0x1 ## usb_phy.c:377:9
|
||
|
110506: 47 21 r7 = 0x1 ## usb_phy.c:377:9
|
||
|
110508: 51 99 call -0x8e <usb_write_rxcsr : 11047c > ## usb_phy.c:377:9
|
||
|
11050a: 65 18 r5 += r6 ## usb_phy.c:380:13
|
||
|
11050c: 69 18 r9 += r6 ## usb_phy.c:379:14
|
||
|
11050e: c4 1f r4 = r4 - r6 ## usb_phy.c:378:13
|
||
|
110510: 04 81 goto 0x2 <usb_g_bulk_read+0x76 : 110514 >
|
||
|
110512: a7 16 r7 = r10
|
||
|
110514: 04 43 if (r4 == 0) goto 0x6 <usb_g_bulk_read+0x7E : 11051c >
|
||
|
110516: e7 52 if (r7 != 0) goto -0x5c <usb_g_bulk_read+0x1E : 1104bc >
|
||
|
110518: 04 81 goto 0x2 <usb_g_bulk_read+0x7E : 11051c >
|
||
|
11051a: c1 14 r9 = 0
|
||
|
11051c: 90 16 r0 = r9 ## usb_phy.c:433:5
|
||
|
11051e: 5a 04 {pc, r10-r4} = [sp++] ## usb_phy.c:433:5
|
||
|
|
||
|
|
||
|
rbc_get_length:
|
||
|
110520: c0 ff 50 13 01 00 r0 = 0x11350 <cbw : 11350 > ## msd_upgrade.c:51:0
|
||
|
110526: 50 ee 05 11 r1 = b[r0+0x15] (u) ## msd_upgrade.c:63:12
|
||
|
11052a: 50 ee 06 01 r0 = b[r0+0x16] (u) ## msd_upgrade.c:63:12
|
||
|
11052e: a0 e1 20 14 r0 <= insert(r1, p:0x8, l:0x8) ## msd_upgrade.c:63:12
|
||
|
110532: 80 00 rts ## msd_upgrade.c:63:5
|
||
|
|
||
|
|
||
|
msd_usb2mcu:
|
||
|
110534: 42 21 r2 = 0x1 ## msd.c:132:0
|
||
|
110536: d7 93 goto -0x9a <usb_g_bulk_read : 11049e > ## msd.c:133:12
|
||
|
|
||
|
|
||
|
usb_read_txcsr:
|
||
|
110538: 74 04 [--sp] = {rets, r4} ## usb_phy.c:237:0
|
||
|
11053a: bf ea 0f ff call -0x1e2 <os_code_begin : 11035c > ## usb_phy.c:238:5
|
||
|
11053e: 40 21 r0 = 0x1 ## usb_phy.c:239:5
|
||
|
110540: 41 8a call -0xec <musb_write_index : 110456 > ## usb_phy.c:239:5
|
||
|
110542: 40 31 r0 = 0x11 ## usb_phy.c:240:17
|
||
|
110544: bf ea 38 ff call -0x190 <musb_read_usb : 1103b8 > ## usb_phy.c:240:17
|
||
|
110548: 04 16 r4 = r0 ## usb_phy.c:240:17
|
||
|
11054a: 40 32 r0 = 0x12 ## usb_phy.c:240:47
|
||
|
11054c: bf ea 34 ff call -0x198 <musb_read_usb : 1103b8 > ## usb_phy.c:240:47
|
||
|
110550: a4 e1 20 04 r4 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:240:44
|
||
|
110554: bf ea 09 ff call -0x1ee <local_irq_enable : 11036a > ## usb_phy.c:241:5
|
||
|
110558: 40 16 r0 = r4 ## usb_phy.c:242:5
|
||
|
11055a: 54 04 {pc, r4} = [sp++] ## usb_phy.c:242:5
|
||
|
|
||
|
|
||
|
usb_write_txcsr:
|
||
|
11055c: 74 04 [--sp] = {rets, r4} ## usb_phy.c:229:0
|
||
|
11055e: 14 16 r4 = r1 ## usb_phy.c:229:0
|
||
|
110560: 01 16 r1 = r0 ## usb_phy.c:229:0
|
||
|
110562: bf ea fb fe call -0x20a <os_code_begin : 11035c > ## usb_phy.c:230:5
|
||
|
110566: 10 17 r0 = r1.b0 (u) ## usb_phy.c:231:5
|
||
|
110568: bf ea 75 ff call -0x116 <musb_write_index : 110456 > ## usb_phy.c:231:5
|
||
|
11056c: 41 17 r1 = r4.b0 (u) ## usb_phy.c:232:5
|
||
|
11056e: 40 31 r0 = 0x11 ## usb_phy.c:232:5
|
||
|
110570: bf ea 14 ff call -0x1d8 <usb_code_begin : 11039c > ## usb_phy.c:232:5
|
||
|
110574: b1 e1 20 44 r1 = uextra(r4, p:0x8, l:0x8) ## usb_phy.c:233:5
|
||
|
110578: 40 32 r0 = 0x12 ## usb_phy.c:233:5
|
||
|
11057a: bf ea 0f ff call -0x1e2 <usb_code_begin : 11039c > ## usb_phy.c:233:5
|
||
|
11057e: 34 04 {rets, r4} = [sp++] ## usb_phy.c:234:5
|
||
|
110580: ff ea f3 fe goto -0x21a <local_irq_enable : 11036a > ## usb_phy.c:234:5
|
||
|
|
||
|
|
||
|
msd_mcu2usb:
|
||
|
110584: 79 04 [--sp] = {rets, r9-r4} ## msd.c:136:0
|
||
|
110586: c2 ff 9c 13 01 00 r2 = 0x1139c <ep_taddr : 1139c > ## msd.c:136:0
|
||
|
11058c: 18 d6 r8 = r1 # ## msd.c:136:0
|
||
|
11058e: 25 60 r5 = [r2+0x0] ## msd.c:136:0
|
||
|
110590: 06 16 r6 = r0 ## msd.c:136:0
|
||
|
110592: c9 ff 0c 18 1e 00 r9 = 0x1e180c <__stub_doe+0xCF010 : 1e180c > ## msd.c:136:0
|
||
|
110598: 84 16 r4 = r8 ## msd.c:136:0
|
||
|
11059a: 04 87 goto 0xe <msd_mcu2usb+0x26 : 1105aa > ## msd.c:136:0
|
||
|
11059c: 71 e1 05 00 r1 = r0 & 0xFFFFFFFA ## usb_phy.c:407:23
|
||
|
1105a0: 04 82 goto 0x4 <msd_mcu2usb+0x22 : 1105a6 > ## usb_phy.c:407:23
|
||
|
1105a2: 71 e1 03 00 r1 = r0 & 0xFFFFFFFC ## usb_phy.c:412:23
|
||
|
1105a6: 40 21 r0 = 0x1
|
||
|
1105a8: 61 99 call -0x4e <usb_write_txcsr : 11055c >
|
||
|
1105aa: 61 86 call -0x74 <usb_read_txcsr : 110538 > ## usb_phy.c:402:21
|
||
|
1105ac: 50 e8 06 72 if ((r0 & 0x4000) != 0) goto 0xc <msd_mcu2usb+0x38 : 1105bc >
|
||
|
1105b0: 50 e8 f4 13 if ((r0 & 0x4) != 0) goto -0x18 <msd_mcu2usb+0x18 : 11059c >
|
||
|
1105b4: 50 e8 f5 0b if ((r0 & 0x2) != 0) goto -0x16 <msd_mcu2usb+0x1E : 1105a2 >
|
||
|
1105b8: 50 e8 f7 03 if ((r0 & 0x1) != 0) goto -0x12 <msd_mcu2usb+0x26 : 1105aa >
|
||
|
1105bc: 47 16 r7 = r4 ## usb_phy.c:421:24
|
||
|
1105be: 34 e9 40 00 if (r4 >= 0x40) { ## usb_phy.c:421:24
|
||
|
1105c2: 57 20 r7 = 0x40
|
||
|
} ## usb_phy.c:421:24
|
||
|
1105c4: b6 e8 00 c0 if (r6 != 0x0) {
|
||
|
1105c8: 50 16 r0 = r5 ## usb_phy.c:423:13
|
||
|
1105ca: 61 16 r1 = r6 ## usb_phy.c:423:13
|
||
|
1105cc: 72 16 r2 = r7 ## usb_phy.c:423:13
|
||
|
1105ce: bf ea 46 fd call -0x574
|
||
|
} <memmove : 11005e > ## usb_phy.c:423:13
|
||
|
1105d2: d0 ec 91 70 [r9+0x0] = r7 ## usb_phy.c:389:11
|
||
|
1105d6: 51 90 call -0xa0 <usb_read_txcsr : 110538 > ## usb_phy.c:390:17
|
||
|
1105d8: 41 e1 01 00 r1 = r0 | 0x1 ## usb_phy.c:392:11
|
||
|
1105dc: 40 21 r0 = 0x1 ## usb_phy.c:393:5
|
||
|
1105de: 51 9e call -0x84 <usb_write_txcsr : 11055c > ## usb_phy.c:393:5
|
||
|
1105e0: cc 1f r4 = r4 - r7 ## usb_phy.c:426:13
|
||
|
1105e2: 76 18 r6 += r7 ## usb_phy.c:427:13
|
||
|
1105e4: f4 42 if (r4 != 0) goto -0x3c <msd_mcu2usb+0x26 : 1105aa >
|
||
|
1105e6: 80 16 r0 = r8 ## msd.c:137:5
|
||
|
1105e8: 59 04 {pc, r9-r4} = [sp++] ## msd.c:137:5
|
||
|
|
||
|
|
||
|
stall_inep:
|
||
|
1105ea: 10 04 [--sp] = rets ## msd.c:171:0
|
||
|
1105ec: 40 21 r0 = 0x1 ## msd.c:173:5
|
||
|
1105ee: 41 30 r1 = 0x10 ## msd.c:173:5
|
||
|
1105f0: 51 95 call -0x96 <usb_write_txcsr : 11055c > ## msd.c:173:5
|
||
|
1105f2: 51 82 call -0xbc <usb_read_txcsr : 110538 > ## msd.c:180:14
|
||
|
1105f4: 50 e8 fd 23 if ((r0 & 0x10) != 0) goto -0x6 <stall_inep+0x8 : 1105f2 > ## msd.c:180:13
|
||
|
1105f8: 00 04 pc = [sp++] ## msd.c:184:1
|
||
|
|
||
|
|
||
|
unknow:
|
||
|
1105fa: 10 04 [--sp] = rets ## msd.c:199:0
|
||
|
1105fc: 00 49 if (r0 == 0) goto 0x12 <unknow+0x16 : 110610 > ## msd.c:200:9
|
||
|
1105fe: 40 21 r0 = 0x1 ## msd.c:188:5
|
||
|
110600: 49 20 r1 = 0x20 ## msd.c:188:5
|
||
|
110602: bf ea 3b ff call -0x18a <usb_write_rxcsr : 11047c > ## msd.c:188:5
|
||
|
110606: bf ea 29 ff call -0x1ae <usb_read_rxcsr : 11045c > ## msd.c:193:14
|
||
|
11060a: 50 e8 fc 2b if ((r0 & 0x20) != 0) goto -0x8 <unknow+0xC : 110606 > ## msd.c:193:14
|
||
|
11060e: 04 81 goto 0x2 <unknow+0x18 : 110612 > ## msd.c:193:14
|
||
|
110610: 71 8c call -0x28 <stall_inep : 1105ea > ## msd.c:203:9
|
||
|
110612: c0 ff 6f 13 01 00 r0 = 0x1136f <cbw+0x1E : 1136e > ## msd.c:207:20
|
||
|
110618: 41 20 r1 = 0x0 ## msd.c:207:20
|
||
|
11061a: 89 4b b[r0+0xb] = r1 ## msd.c:206:25
|
||
|
11061c: 89 4a b[r0+0xa] = r1 ## msd.c:206:25
|
||
|
11061e: 89 49 b[r0+0x9] = r1 ## msd.c:206:25
|
||
|
110620: 89 48 b[r0+0x8] = r1 ## msd.c:206:25
|
||
|
110622: 41 21 r1 = 0x1 ## msd.c:206:25
|
||
|
110624: 89 4c b[r0+0xc] = r1 ## msd.c:207:20
|
||
|
110626: c0 ff 7c 13 01 00 r0 = 0x1137c <msd_status.0 : 1137c > ## msd.c:208:23
|
||
|
11062c: 41 22 r1 = 0x2 ## msd.c:208:23
|
||
|
11062e: 89 40 b[r0+0x0] = r1 ## msd.c:208:23
|
||
|
110630: 00 04 pc = [sp++] ## msd.c:209:1
|
||
|
|
||
|
|
||
|
usb_slave_mode:
|
||
|
110632: e2 94 sp += -0x30 ## usb_device.c:12:0
|
||
|
110634: c0 ff 08 14 01 00 r0 = 0x11408 <usb_interrupt_rx : 11408 > ## usb_onchip.c:83:5
|
||
|
11063a: c5 14 r13 = 0 ## usb_onchip.c:83:5
|
||
|
11063c: d0 ec 09 d1 [r0+0x18] = r13 ## usb_onchip.c:83:5
|
||
|
110640: 42 20 r2 = 0x0 ## usb_onchip.c:83:5
|
||
|
110642: 43 20 r3 = 0x0 ## usb_onchip.c:83:5
|
||
|
110644: 50 ec 01 21 d[r0+0x10] = r3_r2 ## usb_onchip.c:83:5
|
||
|
110648: 50 ec 09 20 d[r0+0x8] = r3_r2 ## usb_onchip.c:83:5
|
||
|
11064c: 50 ec 01 20 d[r0+0x0] = r3_r2 ## usb_onchip.c:83:5
|
||
|
110650: c0 ff ec 13 01 00 r0 = 0x113ec <usb_interrupt_tx : 113ec > ## usb_onchip.c:83:5
|
||
|
110656: d0 ec 09 d1 [r0+0x18] = r13 ## usb_onchip.c:84:5
|
||
|
11065a: 50 ec 01 21 d[r0+0x10] = r3_r2 ## usb_onchip.c:84:5
|
||
|
11065e: 50 ec 09 20 d[r0+0x8] = r3_r2 ## usb_onchip.c:84:5
|
||
|
110662: 50 ec 01 20 d[r0+0x0] = r3_r2 ## usb_onchip.c:84:5
|
||
|
110666: c1 ff 0e 0c 11 00 r1 = 0x110c0e <usb_device_isr : 110c0e > ## usb_onchip.c:86:5
|
||
|
11066c: 40 29 r0 = 0x9 ## usb_onchip.c:86:5
|
||
|
11066e: 42 21 r2 = 0x1 ## usb_onchip.c:86:5
|
||
|
110670: 80 ea 78 05 call 0xaf0 <HWI_Install : 111164 > ## usb_onchip.c:86:5
|
||
|
110674: c0 ff 00 51 1e 00 r0 = 0x1e5100 <__stub_doe+0xD2904 : 1e5100 > ## usb_onchip.c:86:5
|
||
|
11067a: c0 ef 00 0e [r0+0x0] &= 0xFFFFF7FF ## usb_onchip.c:88:21
|
||
|
11067e: 00 ef 80 0d [r0+0x0] |= 0x1000 ## usb_onchip.c:89:21
|
||
|
110682: 41 e0 ca bf r1 = -0x4036 ## usb_onchip.c:90:18
|
||
|
110686: c4 ff 00 18 1e 00 r4 = 0x1e1800 <__stub_doe+0xCF004 : 1e1800 > ## usb_onchip.c:90:18
|
||
|
11068c: 64 e8 02 41 [r4+0x0] &= r1 ## usb_onchip.c:90:18
|
||
|
110690: d0 ec 45 d0 [r4+0x4] = r13 ## usb_onchip.c:91:18
|
||
|
110694: 00 ef 01 40 [r4+0x0] |= 0x1 ## usb_onchip.c:93:18
|
||
|
110698: c0 ef 30 00 [r0+0x0] &= 0xFFFFFFCF ## usb_onchip.c:95:21
|
||
|
11069c: c0 ef c0 00 [r0+0x0] &= 0xFFFFFF3F ## usb_onchip.c:96:21
|
||
|
1106a0: 00 ef 40 00 [r0+0x0] |= 0x40 ## usb_onchip.c:98:21
|
||
|
1106a4: 00 ef 20 00 [r0+0x0] |= 0x20 ## usb_onchip.c:99:21
|
||
|
1106a8: 00 ef 34 40 [r4+0x0] |= 0x34 ## usb_onchip.c:101:18
|
||
|
1106ac: bf ea 56 fe call -0x354 <os_code_begin : 11035c > ## usb_phy.c:173:5
|
||
|
1106b0: 40 2b r0 = 0xb ## usb_phy.c:174:5
|
||
|
1106b2: 41 24 r1 = 0x4 ## usb_phy.c:174:5
|
||
|
1106b4: bf ea 72 fe call -0x31c <usb_code_begin : 11039c > ## usb_phy.c:174:5
|
||
|
1106b8: bf ea 57 fe call -0x352 <local_irq_enable : 11036a > ## usb_phy.c:175:5
|
||
|
1106bc: 10 3f r0 = -0x1 ## usb_onchip.c:104:5
|
||
|
1106be: bf ea 8c fe call -0x2e8 <usb_clr_intr_rxe : 1103da > ## usb_onchip.c:104:5
|
||
|
1106c2: 10 3f r0 = -0x1 ## usb_onchip.c:105:5
|
||
|
1106c4: bf ea a8 fe call -0x2b0 <usb_clr_intr_txe : 110418 > ## usb_onchip.c:105:5
|
||
|
1106c8: bf ea 48 fe call -0x370 <os_code_begin : 11035c > ## usb_phy.c:73:5
|
||
|
1106cc: 40 21 r0 = 0x1 ## usb_phy.c:74:5
|
||
|
1106ce: 51 20 r1 = 0x40 ## usb_phy.c:74:5
|
||
|
1106d0: bf ea 64 fe call -0x338 <usb_code_begin : 11039c > ## usb_phy.c:74:5
|
||
|
1106d4: bf ea 49 fe call -0x36e <local_irq_enable : 11036a > ## usb_phy.c:75:5
|
||
|
1106d8: 00 ef 00 4e [r4+0x0] |= 0x800 ## usb_onchip.c:114:18
|
||
|
1106dc: c0 ff 40 10 01 00 r0 = 0x11040 <ep0_dma_buffer : 11040 > ## usb_phy.c:321:25
|
||
|
1106e2: c0 67 [r4+0x1c] = r0 ## usb_phy.c:321:25
|
||
|
1106e4: c1 ff 98 13 01 00 r1 = 0x11398 <ep0_addr : 11398 > ## usb_phy.c:322:18
|
||
|
1106ea: 90 60 [r1+0x0] = r0 ## usb_phy.c:322:18
|
||
|
1106ec: c0 ff 80 10 01 00 r0 = 0x11080 <ep1_dma_buffer : 11080 >
|
||
|
1106f2: c0 68 [r4+0x20] = r0 ## usb_phy.c:308:12
|
||
|
1106f4: c1 ff 9c 13 01 00 r1 = 0x1139c <ep_taddr : 1139c > ## usb_phy.c:309:22
|
||
|
1106fa: 90 60 [r1+0x0] = r0 ## usb_phy.c:309:22
|
||
|
1106fc: d0 20 r0 += 0x40 ## usb_phy.c:309:22
|
||
|
1106fe: 4b f0 53 00 r11 = 0x53 #
|
||
|
110702: c0 69 [r4+0x24] = r0 ## usb_phy.c:327:12
|
||
|
110704: c1 ff ac 13 01 00 r1 = 0x113ac <ep_raddr : 113ac > ## usb_phy.c:328:22
|
||
|
11070a: 4f f0 42 00 r15 = 0x42 # ## usb_phy.c:328:22
|
||
|
11070e: 90 60 [r1+0x0] = r0 ## usb_phy.c:328:22
|
||
|
110710: a8 80 r0 = sp + 32 ## usb_phy.c:328:22
|
||
|
110712: 80 22 [sp+8] = r0
|
||
|
110714: 88 8e r0 = sp + 14
|
||
|
110716: 80 21 [sp+4] = r0
|
||
|
110718: c0 21 r0 += 0x1
|
||
|
11071a: 80 20 [sp] = r0
|
||
|
11071c: c5 ff 50 13 01 00 r5 = 0x11350 <cbw : 11350 >
|
||
|
110722: c9 ff 55 53 42 43 r9 = 0x43425355 <__stub_doe+0x43312B58 : 43425354 >
|
||
|
110728: c6 ff 6f 13 01 00 r6 = 0x1136f <cbw+0x1E : 1136e >
|
||
|
11072e: ca ff 80 13 01 00 r10 = 0x11380 <hook_usb_scsi : 11380 >
|
||
|
110734: ce ff 7c 13 01 00 r14 = 0x1137c <msd_status.0 : 1137c >
|
||
|
11073a: cc ff 7d 13 01 00 r12 = 0x1137d <msd_status.0 : 1137c >
|
||
|
110740: c8 ff 7e 13 01 00 r8 = 0x1137e <msd_status.2 : 1137e >
|
||
|
110746: 57 35 r7 = 0x55
|
||
|
110748: 80 ea 96 06 call 0xd2c <wdt_clr : 111478 > ## usb_device.c:18:9
|
||
|
11074c: 52 ee 53 d0 b[r5+0x3] = r13 ## msd.c:141:23
|
||
|
110750: 52 ee 52 d0 b[r5+0x2] = r13 ## msd.c:141:23
|
||
|
110754: 52 ee 51 d0 b[r5+0x1] = r13 ## msd.c:141:23
|
||
|
110758: 52 ee 50 d0 b[r5+0x0] = r13 ## msd.c:141:23
|
||
|
11075c: 41 3f r1 = 0x1f ## msd.c:142:18
|
||
|
11075e: 42 20 r2 = 0x0 ## msd.c:142:18
|
||
|
110760: 50 16 r0 = r5 ## msd.c:142:18
|
||
|
110762: bf ea 9c fe call -0x2c8 <usb_g_bulk_read : 11049e > ## msd.c:142:18
|
||
|
110766: 5a 43 r2 = b[r5+0x3] (u) ## msd.c:146:13
|
||
|
110768: 5b 42 r3 = b[r5+0x2] (u) ## msd.c:146:13
|
||
|
11076a: a3 f1 20 24 r3 <= insert(r2, p:0x8, l:0x8) # ## msd.c:146:13
|
||
|
11076e: 5c 41 r4 = b[r5+0x1] (u) ## msd.c:146:13
|
||
|
110770: 59 40 r1 = b[r5+0x0] (u) ## msd.c:146:13
|
||
|
110772: a1 e1 20 44 r1 <= insert(r4, p:0x8, l:0x8) ## msd.c:146:13
|
||
|
110776: a1 e1 40 38 r1 <= insert(r3, p:0x10, l:0x10) ## msd.c:146:13
|
||
|
11077a: 70 46 if (r0 == 0) goto -0x34 <usb_slave_mode+0x116 : 110748 > ## msd.c:143:9
|
||
|
11077c: 89 e8 e4 11 if (r1 != r9) goto -0x38 <usb_slave_mode+0x116 : 110748 >
|
||
|
110780: 58 47 r0 = b[r5+0x7] (u) ## msd.c:152:23
|
||
|
110782: 59 45 r1 = b[r5+0x5] (u) ## msd.c:152:23
|
||
|
110784: 5a 44 r2 = b[r5+0x4] (u) ## msd.c:152:23
|
||
|
110786: 5b 46 r3 = b[r5+0x6] (u) ## msd.c:152:23
|
||
|
110788: a3 f1 20 04 r3 <= insert(r0, p:0x8, l:0x8) # ## msd.c:152:23
|
||
|
11078c: e8 47 b[r6+0x7] = r0 ## msd.c:152:17
|
||
|
11078e: e9 45 b[r6+0x5] = r1 ## msd.c:152:17
|
||
|
110790: a2 f1 40 38 r2 <= insert(r3, p:0x10, l:0x10) # ## msd.c:152:23
|
||
|
110794: ea 44 b[r6+0x4] = r2 ## msd.c:152:17
|
||
|
110796: a0 b0 r0 = r2 >> 0x10 ## msd.c:152:17
|
||
|
110798: e8 46 b[r6+0x6] = r0 ## msd.c:152:17
|
||
|
11079a: 58 4b r0 = b[r5+0xb] (u) ## msd.c:153:31
|
||
|
11079c: 59 49 r1 = b[r5+0x9] (u) ## msd.c:153:31
|
||
|
11079e: 5b 48 r3 = b[r5+0x8] (u) ## msd.c:153:31
|
||
|
1107a0: 5c 4a r4 = b[r5+0xa] (u) ## msd.c:153:31
|
||
|
1107a2: a4 f1 20 04 r4 <= insert(r0, p:0x8, l:0x8) # ## msd.c:153:31
|
||
|
1107a6: e8 4b b[r6+0xb] = r0 ## msd.c:153:25
|
||
|
1107a8: e9 49 b[r6+0x9] = r1 ## msd.c:153:25
|
||
|
1107aa: a3 f1 40 48 r3 <= insert(r4, p:0x10, l:0x10) # ## msd.c:153:31
|
||
|
1107ae: eb 48 b[r6+0x8] = r3 ## msd.c:153:25
|
||
|
1107b0: d0 ec a0 20 r2 = [r10+0x0] ## msd_upgrade.c:134:9
|
||
|
1107b4: b0 b0 r0 = r3 >> 0x10 ## msd.c:153:25
|
||
|
1107b6: e8 4a b[r6+0xa] = r0 ## msd.c:153:25
|
||
|
1107b8: 02 45 if (r2 == 0) goto 0xa <usb_slave_mode+0x192 : 1107c4 > ## msd.c:153:25
|
||
|
1107ba: a9 80 r1 = sp + 32
|
||
|
1107bc: 50 16 r0 = r5 ## msd_upgrade.c:134:26
|
||
|
1107be: c2 00 call r2 ## msd_upgrade.c:134:26
|
||
|
1107c0: 80 f8 bf 00 if (r0 != 0x0) goto 0x17e <usb_slave_mode+0x310 : 110942 > ## msd_upgrade.c:134:26
|
||
|
1107c4: 58 4f r0 = b[r5+0xf] (u) ## msd_upgrade.c:138:18
|
||
|
1107c6: 10 f8 24 fa if (r0 == 0xfd) goto 0x48 <usb_slave_mode+0x1E0 : 110812 > ## msd_upgrade.c:138:5
|
||
|
1107ca: 90 f8 4c f6 if (r0 != 0xfb) goto 0x98 <usb_slave_mode+0x234 : 110866 >
|
||
|
1107ce: 50 ee 50 01 r0 = b[r5+0x10] (u) ## msd_upgrade.c:142:22
|
||
|
1107d2: 00 f8 87 10 if (r0 == 0x8) goto 0x10e <usb_slave_mode+0x2B2 : 1108e4 > ## msd_upgrade.c:142:9
|
||
|
1107d6: 80 f8 7f 0c if (r0 != 0x6) goto 0xfe <usb_slave_mode+0x2A6 : 1108d8 >
|
||
|
1107da: 58 91 r0 = r5 + 0x11
|
||
|
1107dc: 09 43 r1 = b[r0+0x3] (u) ## msd_upgrade.c:43:5
|
||
|
1107de: 0a 42 r2 = b[r0+0x2] (u) ## msd_upgrade.c:43:5
|
||
|
1107e0: a2 f1 20 14 r2 <= insert(r1, p:0x8, l:0x8) # ## msd_upgrade.c:43:5
|
||
|
1107e4: 0b 41 r3 = b[r0+0x1] (u) ## msd_upgrade.c:43:5
|
||
|
1107e6: 08 40 r0 = b[r0+0x0] (u) ## msd_upgrade.c:43:5
|
||
|
1107e8: a0 e1 20 34 r0 <= insert(r3, p:0x8, l:0x8) ## msd_upgrade.c:43:5
|
||
|
1107ec: a0 e1 40 28 r0 <= insert(r2, p:0x10, l:0x10) ## msd_upgrade.c:43:5
|
||
|
1107f0: 70 e0 00 40 r4 = rev8(r0) ## msd_upgrade.c:46:12
|
||
|
1107f4: bf ea 94 fe call -0x2d8 <rbc_get_length : 110520 > ## msd_upgrade.c:82:11
|
||
|
1107f8: 07 16 r7 = r0 ## msd_upgrade.c:82:11
|
||
|
1107fa: 40 16 r0 = r4 ## msd_upgrade.c:85:5
|
||
|
1107fc: 71 16 r1 = r7 ## msd_upgrade.c:85:5
|
||
|
1107fe: bf ea 99 fe call -0x2ce <msd_usb2mcu : 110534 > ## msd_upgrade.c:85:5
|
||
|
110802: f1 17 r1 = r7.l (u) ## msd_upgrade.c:86:5
|
||
|
110804: 57 35 r7 = 0x55 ## msd_upgrade.c:86:5
|
||
|
110806: 40 16 r0 = r4 ## msd_upgrade.c:86:5
|
||
|
110808: 80 ea 96 06 call 0xd2c <CrcDecode : 111538 > ## msd_upgrade.c:86:5
|
||
|
11080c: d0 ec a1 d0 [r10+0x0] = r13 ## msd_upgrade.c:145:27
|
||
|
110810: 44 98 goto 0x130 <usb_slave_mode+0x310 : 110942 > ## msd_upgrade.c:145:27
|
||
|
110812: 50 ee 50 01 r0 = b[r5+0x10] (u) ## msd_upgrade.c:157:22
|
||
|
110816: 80 f8 5f 0e if (r0 != 0x7) goto 0xbe <usb_slave_mode+0x2A6 : 1108d8 > ## msd_upgrade.c:157:22
|
||
|
11081a: 58 91 r0 = r5 + 0x11
|
||
|
11081c: 09 43 r1 = b[r0+0x3] (u) ## msd_upgrade.c:43:5
|
||
|
11081e: 0a 42 r2 = b[r0+0x2] (u) ## msd_upgrade.c:43:5
|
||
|
110820: a2 f1 20 14 r2 <= insert(r1, p:0x8, l:0x8) # ## msd_upgrade.c:43:5
|
||
|
110824: 0b 41 r3 = b[r0+0x1] (u) ## msd_upgrade.c:43:5
|
||
|
110826: 08 40 r0 = b[r0+0x0] (u) ## msd_upgrade.c:43:5
|
||
|
110828: a0 e1 20 34 r0 <= insert(r3, p:0x8, l:0x8) ## msd_upgrade.c:43:5
|
||
|
11082c: a0 e1 40 28 r0 <= insert(r2, p:0x10, l:0x10) ## msd_upgrade.c:43:5
|
||
|
110830: 70 e0 00 40 r4 = rev8(r0) ## msd_upgrade.c:46:12
|
||
|
110834: bf ea 74 fe call -0x318 <rbc_get_length : 110520 > ## msd_upgrade.c:94:11
|
||
|
110838: 07 16 r7 = r0 ## msd_upgrade.c:94:11
|
||
|
11083a: 8f 16 r15 = r8
|
||
|
11083c: c8 16 r8 = r12
|
||
|
11083e: bc e1 40 70 r12 = uextra(r7, p:0x0, l:0x10) ## msd_upgrade.c:96:5
|
||
|
110842: 40 16 r0 = r4 ## msd_upgrade.c:96:5
|
||
|
110844: c1 16 r1 = r12 ## msd_upgrade.c:96:5
|
||
|
110846: 80 ea 77 06 call 0xcee <CrcDecode : 111538 > ## msd_upgrade.c:96:5
|
||
|
11084a: 40 16 r0 = r4 ## msd_upgrade.c:97:5
|
||
|
11084c: 71 16 r1 = r7 ## msd_upgrade.c:97:5
|
||
|
11084e: 57 35 r7 = 0x55 ## msd_upgrade.c:97:5
|
||
|
110850: bf ea 98 fe call -0x2d0 <msd_mcu2usb : 110584 > ## msd_upgrade.c:97:5
|
||
|
110854: 40 16 r0 = r4 ## msd_upgrade.c:98:5
|
||
|
110856: c1 16 r1 = r12 ## msd_upgrade.c:98:5
|
||
|
110858: 8c 16 r12 = r8 ## msd_upgrade.c:98:5
|
||
|
11085a: f8 16 r8 = r15 ## msd_upgrade.c:98:5
|
||
|
11085c: 4f e0 42 00 r15 = 0x42 ## msd_upgrade.c:98:5
|
||
|
110860: 80 ea 6a 06 call 0xcd4 <CrcDecode : 111538 > ## msd_upgrade.c:98:5
|
||
|
110864: 34 8e goto 0xdc <usb_slave_mode+0x310 : 110942 > ## msd_upgrade.c:98:5
|
||
|
110866: 30 59 if (r0 == 0) goto 0xf2 <usb_slave_mode+0x328 : 11095a > ## msd.c:283:9
|
||
|
110868: 00 f8 7d 06 if (r0 == 0x3) goto 0xfa <usb_slave_mode+0x334 : 110966 >
|
||
|
11086c: 00 f8 b3 5e if (r0 == 0x2f) goto 0x166 <usb_slave_mode+0x3A4 : 1109d6 >
|
||
|
110870: 00 f8 ab 34 if (r0 == 0x1a) goto 0x156 <usb_slave_mode+0x398 : 1109ca >
|
||
|
110874: 00 f8 ba 3c if (r0 == 0x1e) goto 0x174 <usb_slave_mode+0x3BA : 1109ec >
|
||
|
110878: 00 f8 66 46 if (r0 == 0x23) goto 0xcc <usb_slave_mode+0x316 : 110948 >
|
||
|
11087c: 00 f8 64 4a if (r0 == 0x25) goto 0xc8 <usb_slave_mode+0x316 : 110948 >
|
||
|
110880: 00 f8 62 50 if (r0 == 0x28) goto 0xc4 <usb_slave_mode+0x316 : 110948 >
|
||
|
110884: 80 f8 28 24 if (r0 != 0x12) goto 0x50 <usb_slave_mode+0x2A6 : 1108d8 >
|
||
|
110888: 68 4b r0 = b[r6+0xb] (u) ## msd.c:159:15
|
||
|
11088a: 69 4a r1 = b[r6+0xa] (u) ## msd.c:159:15
|
||
|
11088c: a1 f1 20 04 r1 <= insert(r0, p:0x8, l:0x8) # ## msd.c:159:15
|
||
|
110890: 6a 49 r2 = b[r6+0x9] (u) ## msd.c:159:15
|
||
|
110892: 6c 48 r4 = b[r6+0x8] (u) ## msd.c:159:15
|
||
|
110894: a4 e1 20 24 r4 <= insert(r2, p:0x8, l:0x8) ## msd.c:159:15
|
||
|
110898: a4 e1 40 18 r4 <= insert(r1, p:0x10, l:0x10) ## msd.c:159:15
|
||
|
11089c: 34 e9 24 00 if (r4 >= 0x24) { ## msd.c:159:15
|
||
|
1108a0: 4c 24 r4 = 0x24
|
||
|
} ## msd.c:159:15
|
||
|
1108a2: c0 ff 57 0f 11 00 r0 = 0x110f57 <sMassDescriptor+0x16 : 110f56 > ## msd.c:161:5
|
||
|
1108a8: 41 16 r1 = r4 ## msd.c:161:5
|
||
|
1108aa: bf ea 6b fe call -0x32a <msd_mcu2usb : 110584 > ## msd.c:161:5
|
||
|
1108ae: 68 4b r0 = b[r6+0xb] (u) ## msd.c:162:25
|
||
|
1108b0: 69 4a r1 = b[r6+0xa] (u) ## msd.c:162:25
|
||
|
1108b2: a1 f1 20 04 r1 <= insert(r0, p:0x8, l:0x8) # ## msd.c:162:25
|
||
|
1108b6: 6a 49 r2 = b[r6+0x9] (u) ## msd.c:162:25
|
||
|
1108b8: 6b 48 r3 = b[r6+0x8] (u) ## msd.c:162:25
|
||
|
1108ba: a3 e1 20 24 r3 <= insert(r2, p:0x8, l:0x8) ## msd.c:162:25
|
||
|
1108be: a3 e1 40 18 r3 <= insert(r1, p:0x10, l:0x10) ## msd.c:162:25
|
||
|
1108c2: 30 1f r0 = r3 - r4 ## msd.c:162:25
|
||
|
1108c4: e8 48 b[r6+0x8] = r0 ## msd.c:162:25
|
||
|
1108c6: 81 b8 r1 = r0 >> 0x18 ## msd.c:162:25
|
||
|
1108c8: e9 4b b[r6+0xb] = r1 ## msd.c:162:25
|
||
|
1108ca: 81 b0 r1 = r0 >> 0x10 ## msd.c:162:25
|
||
|
1108cc: e9 4a b[r6+0xa] = r1 ## msd.c:162:25
|
||
|
1108ce: 80 a8 r0 = r0 >> 0x8 ## msd.c:162:25
|
||
|
1108d0: e8 49 b[r6+0x9] = r0 ## msd.c:162:25
|
||
|
1108d2: 52 ee 6c d0 b[r6+0xc] = r13 ## msd.c:163:20
|
||
|
1108d6: 54 8e goto 0x15c <usb_slave_mode+0x402 : 110a34 > ## msd.c:163:20
|
||
|
1108d8: 58 4c r0 = b[r5+0xc] (u) ## msd.c:308:26
|
||
|
1108da: 80 a7 r0 = r0 >> 0x7 ## msd.c:308:20
|
||
|
1108dc: 38 20 r0 ^= 0x1 ## msd.c:308:20
|
||
|
1108de: bf ea 8c fe call -0x2e8 <unknow : 1105fa > ## msd.c:308:13
|
||
|
1108e2: 54 88 goto 0x150 <usb_slave_mode+0x402 : 110a34 > ## msd.c:308:13
|
||
|
1108e4: 58 91 r0 = r5 + 0x11
|
||
|
1108e6: 50 ee 01 f0 r15 = b[r0+0x1] (u) ## msd_upgrade.c:43:5
|
||
|
1108ea: 0b 40 r3 = b[r0+0x0] (u) ## msd_upgrade.c:43:5
|
||
|
1108ec: 0c 43 r4 = b[r0+0x3] (u) ## msd_upgrade.c:43:5
|
||
|
1108ee: 0f 42 r7 = b[r0+0x2] (u) ## msd_upgrade.c:43:5
|
||
|
1108f0: bf ea 16 fe call -0x3d4 <rbc_get_length : 110520 > ## msd_upgrade.c:108:15
|
||
|
1108f4: c2 ff 84 13 01 00 r2 = 0x11384 <arg_list : 11384 >
|
||
|
1108fa: c1 ff 84 05 11 00 r1 = 0x110584 <msd_mcu2usb : 110584 > ## msd_upgrade.c:109:26
|
||
|
110900: a7 f1 20 44 r7 <= insert(r4, p:0x8, l:0x8) # ## msd_upgrade.c:43:5
|
||
|
110904: a1 60 [r2+0x0] = r1 ## msd_upgrade.c:109:26
|
||
|
110906: c1 ff 34 05 11 00 r1 = 0x110534 <msd_usb2mcu : 110534 > ## msd_upgrade.c:110:26
|
||
|
11090c: a3 f1 20 f4 r3 <= insert(r15, p:0x8, l:0x8) # ## msd_upgrade.c:43:5
|
||
|
110910: a1 61 [r2+0x4] = r1 ## msd_upgrade.c:110:26
|
||
|
110912: d0 ec 29 a0 [r2+0x8] = r10 ## msd_upgrade.c:111:20
|
||
|
110916: 4f f0 42 00 r15 = 0x42 # ## msd_upgrade.c:111:20
|
||
|
11091a: a0 63 [r2+0xc] = r0 ## msd_upgrade.c:112:21
|
||
|
11091c: d0 ec 21 d1 [r2+0x10] = r13 ## msd_upgrade.c:113:23
|
||
|
110920: a3 e1 40 78 r3 <= insert(r7, p:0x10, l:0x10) ## msd_upgrade.c:43:5
|
||
|
110924: 57 35 r7 = 0x55
|
||
|
110926: 70 e0 00 13 r1 = rev8(r3) ## msd_upgrade.c:46:12
|
||
|
11092a: 20 16 r0 = r2 ## msd_upgrade.c:118:5
|
||
|
11092c: c1 00 call r1 ## msd_upgrade.c:118:5
|
||
|
11092e: 78 3b r0 = 0xfb ## msd_upgrade.c:120:12
|
||
|
110930: de e9 20 00 b[sp+32] = r0 ## msd_upgrade.c:120:12
|
||
|
110934: 00 22 r0 = [sp+8] ## msd_upgrade.c:121:12
|
||
|
110936: 41 28 r1 = 0x8 ## msd_upgrade.c:121:12
|
||
|
110938: 89 41 b[r0+0x1] = r1 ## msd_upgrade.c:121:12
|
||
|
11093a: a8 80 r0 = sp + 32 ## msd_upgrade.c:121:12
|
||
|
11093c: 41 30 r1 = 0x10 ## msd_upgrade.c:123:5
|
||
|
11093e: bf ea 21 fe call -0x3be <msd_mcu2usb : 110584 > ## msd_upgrade.c:123:5
|
||
|
110942: 52 ee e0 d0 b[r14+0x0] = r13 ## msd.c:280:27
|
||
|
110946: 44 93 goto 0x126 <.GJTIE61_0_0_+0x24 : 110a6e > ## msd.c:280:27
|
||
|
110948: 40 20 r0 = 0x0 ## msd.c:212:5
|
||
|
11094a: bf ea 56 fe call -0x354 <unknow : 1105fa > ## msd.c:212:5
|
||
|
11094e: 40 25 r0 = 0x5 ## msd.c:213:23
|
||
|
110950: 52 ee e0 00 b[r14+0x0] = r0 ## msd.c:213:23
|
||
|
110954: 40 21 r0 = 0x1 ## msd.c:214:20
|
||
|
110956: e8 4c b[r6+0xc] = r0 ## msd.c:214:20
|
||
|
110958: 34 8d goto 0xda <usb_slave_mode+0x402 : 110a34 > ## msd.c:214:20
|
||
|
11095a: 40 21 r0 = 0x1 ## msd.c:218:20
|
||
|
11095c: e8 4c b[r6+0xc] = r0 ## msd.c:218:20
|
||
|
11095e: 40 25 r0 = 0x5 ## msd.c:219:23
|
||
|
110960: 52 ee e0 00 b[r14+0x0] = r0 ## msd.c:219:23
|
||
|
110964: 44 8b goto 0x116 <.GJTIE61_0_0_+0x32 : 110a7c > ## msd.c:219:23
|
||
|
110966: 59 4b r1 = b[r5+0xb] (u) ## msd.c:234:11
|
||
|
110968: 5a 4a r2 = b[r5+0xa] (u) ## msd.c:234:11
|
||
|
11096a: a2 f1 20 14 r2 <= insert(r1, p:0x8, l:0x8) # ## msd.c:234:11
|
||
|
11096e: 5b 49 r3 = b[r5+0x9] (u) ## msd.c:234:11
|
||
|
110970: 58 48 r0 = b[r5+0x8] (u) ## msd.c:234:11
|
||
|
110972: a0 e1 20 34 r0 <= insert(r3, p:0x8, l:0x8) ## msd.c:234:11
|
||
|
110976: a0 e1 40 28 r0 <= insert(r2, p:0x10, l:0x10) ## msd.c:234:11
|
||
|
11097a: 04 16 r4 = r0 ## msd.c:234:11
|
||
|
11097c: 30 e9 12 00 if (r0 >= 0x12) { ## msd.c:234:11
|
||
|
110980: 44 32 r4 = 0x12
|
||
|
} ## msd.c:234:11
|
||
|
110982: 20 48 if (r0 == 0) goto 0x90 <usb_slave_mode+0x3E2 : 110a14 >
|
||
|
110984: 41 20 r1 = 0x0 ## msd.c:242:9
|
||
|
110986: 42 31 r2 = 0x11 ## msd.c:242:9
|
||
|
110988: 47 20 r7 = 0x0 ## msd.c:242:9
|
||
|
11098a: 00 20 r0 = [sp] ## msd.c:242:9
|
||
|
11098c: bf ea c8 fb call -0x870 <memset : 110120 > ## msd.c:242:9
|
||
|
110990: 50 ee c0 00 r0 = b[r12+0x0] (u) ## msd.c:243:36
|
||
|
110994: 50 ee 80 10 r1 = b[r8+0x0] (u) ## msd.c:244:37
|
||
|
110998: 02 21 r2 = [sp+4] ## msd.c:244:37
|
||
|
11099a: a8 42 b[r2+0x2] = r0 ## msd.c:243:23
|
||
|
11099c: 41 d6 r1 = r4 # ## msd.c:250:9
|
||
|
11099e: a9 4c b[r2+0xc] = r1 ## msd.c:244:24
|
||
|
1109a0: af 4d b[r2+0xd] = r7 ## msd.c:245:24
|
||
|
1109a2: 58 30 r0 = 0x70 ## msd.c:246:23
|
||
|
1109a4: de e9 0e 00 b[sp+14] = r0 ## msd.c:246:23
|
||
|
1109a8: 40 2a r0 = 0xa ## msd.c:247:23
|
||
|
1109aa: a8 47 b[r2+0x7] = r0 ## msd.c:247:23
|
||
|
1109ac: 88 8e r0 = sp + 14 ## msd.c:247:23
|
||
|
1109ae: bf ea e9 fd call -0x42e <msd_mcu2usb : 110584 > ## msd.c:250:9
|
||
|
1109b2: 68 4b r0 = b[r6+0xb] (u) ## msd.c:253:25
|
||
|
1109b4: 69 4a r1 = b[r6+0xa] (u) ## msd.c:253:25
|
||
|
1109b6: a1 f1 20 04 r1 <= insert(r0, p:0x8, l:0x8) # ## msd.c:253:25
|
||
|
1109ba: 6a 49 r2 = b[r6+0x9] (u) ## msd.c:253:25
|
||
|
1109bc: 6b 48 r3 = b[r6+0x8] (u) ## msd.c:253:25
|
||
|
1109be: a3 e1 20 24 r3 <= insert(r2, p:0x8, l:0x8) ## msd.c:253:25
|
||
|
1109c2: a3 e1 40 18 r3 <= insert(r1, p:0x10, l:0x10) ## msd.c:253:25
|
||
|
1109c6: 30 1f r0 = r3 - r4 ## msd.c:253:25
|
||
|
1109c8: 14 8c goto 0x58 <usb_slave_mode+0x3F0 : 110a22 > ## msd.c:253:25
|
||
|
1109ca: 41 24 r1 = 0x4 ## msd.c:261:5
|
||
|
1109cc: c0 ff 7b 0f 11 00 r0 = 0x110f7b <SCSIInquiryData+0x23 : 110f7a > ## msd.c:261:5
|
||
|
1109d2: bf ea d7 fd call -0x452 <msd_mcu2usb : 110584 > ## msd.c:261:5
|
||
|
1109d6: 52 ee 6b d0 b[r6+0xb] = r13
|
||
|
1109da: 52 ee 6a d0 b[r6+0xa] = r13
|
||
|
1109de: 52 ee 69 d0 b[r6+0x9] = r13
|
||
|
1109e2: 52 ee 68 d0 b[r6+0x8] = r13
|
||
|
1109e6: 52 ee 6c d0 b[r6+0xc] = r13
|
||
|
1109ea: 14 84 goto 0x48 <usb_slave_mode+0x402 : 110a34 >
|
||
|
1109ec: 52 ee 6c d0 b[r6+0xc] = r13 ## msd.c:223:20
|
||
|
1109f0: 50 ee 53 01 r0 = b[r5+0x13] (u) ## msd.c:224:9
|
||
|
1109f4: b0 e8 00 c0 if (r0 != 0x0) { ## msd.c:224:9
|
||
|
1109f8: 40 22 r0 = 0x2 ## msd.c:225:27
|
||
|
1109fa: 52 ee e0 00 b[r14+0x0] = r0 ## msd.c:225:27
|
||
|
1109fe: 40 21 r0 = 0x1 ## msd.c:226:24
|
||
|
110a00: e8 4c b[r6+0xc] = r0
|
||
|
} ## msd.c:226:24
|
||
|
110a02: 52 ee 6b d0 b[r6+0xb] = r13 ## msd.c:228:25
|
||
|
110a06: 52 ee 6a d0 b[r6+0xa] = r13 ## msd.c:228:25
|
||
|
110a0a: 52 ee 69 d0 b[r6+0x9] = r13 ## msd.c:228:25
|
||
|
110a0e: 52 ee 68 d0 b[r6+0x8] = r13 ## msd.c:228:25
|
||
|
110a12: 04 90 goto 0x20 <usb_slave_mode+0x402 : 110a34 > ## msd.c:228:25
|
||
|
110a14: bf ea e9 fd call -0x42e <stall_inep : 1105ea > ## msd.c:236:9
|
||
|
110a18: 40 22 r0 = 0x2 ## msd.c:237:27
|
||
|
110a1a: 52 ee e0 00 b[r14+0x0] = r0 ## msd.c:237:27
|
||
|
110a1e: 47 21 r7 = 0x1 ## msd.c:237:27
|
||
|
110a20: 40 20 r0 = 0x0 ## msd.c:237:27
|
||
|
110a22: e8 48 b[r6+0x8] = r0
|
||
|
110a24: 81 b8 r1 = r0 >> 0x18
|
||
|
110a26: e9 4b b[r6+0xb] = r1
|
||
|
110a28: 81 b0 r1 = r0 >> 0x10
|
||
|
110a2a: e9 4a b[r6+0xa] = r1
|
||
|
110a2c: 80 a8 r0 = r0 >> 0x8
|
||
|
110a2e: e8 49 b[r6+0x9] = r0
|
||
|
110a30: ef 4c b[r6+0xc] = r7
|
||
|
110a32: 57 35 r7 = 0x55
|
||
|
110a34: 50 ee e0 20 r2 = b[r14+0x0] (u) ## msd.c:312:24
|
||
|
110a38: 02 fc 1e 0c if (r2 > 0x6) goto 0x3c <.GJTIE61_0_0_+0x2E : 110a78 > ## msd.c:312:24
|
||
|
110a3c: 48 24 r0 = 0x24
|
||
|
110a3e: 41 25 r1 = 0x5
|
||
|
110a40: 02 01 tbb [r2]
|
||
|
|
||
|
|
||
|
.GJTIS61_0_0_:
|
||
|
110a42: 16 < 22 : 0x16 >
|
||
|
110a43: 04 < 4 : 0x4 >
|
||
|
110a44: 11 < 17 : 0x11 >
|
||
|
110a45: 04 < 4 : 0x4 >
|
||
|
110a46: 04 < 4 : 0x4 >
|
||
|
110a47: 1d < 29 : 0x1D >
|
||
|
110a48: 18 < 24 : 0x18 >
|
||
|
110a49: 00 < 0 : 0x0 >
|
||
|
110a4a: 04 80 goto 0x0 <.GJTIE61_0_0_+0x2 : 110a4c >
|
||
|
110a4c: 52 ee 63 b0 b[r6+0x3] = r11 ## msd.c:167:23
|
||
|
110a50: 52 ee 62 f0 b[r6+0x2] = r15 ## msd.c:167:23
|
||
|
110a54: 52 ee 61 b0 b[r6+0x1] = r11 ## msd.c:167:23
|
||
|
110a58: 60 d6 r0 = r6 # ## msd.c:168:5
|
||
|
110a5a: ef 40 b[r6+0x0] = r7 ## msd.c:167:23
|
||
|
110a5c: 41 2d r1 = 0xd ## msd.c:168:5
|
||
|
110a5e: bf ea 91 fd call -0x4de <msd_mcu2usb : 110584 > ## msd.c:168:5
|
||
|
110a62: 37 92 goto -0x31c <usb_slave_mode+0x116 : 110748 > ## msd.c:168:5
|
||
|
110a64: 52 ee c0 10 b[r12+0x0] = r1
|
||
|
110a68: 52 ee 80 00 b[r8+0x0] = r0
|
||
|
110a6c: f7 8f goto -0x22 <.GJTIE61_0_0_+0x2 : 110a4c >
|
||
|
110a6e: 80 14 r1_r0 = 0
|
||
|
110a70: f7 99 goto -0xe <.GJTIE61_0_0_+0x1A : 110a64 >
|
||
|
110a72: 48 20 r0 = 0x20
|
||
|
110a74: 41 2b r1 = 0xb
|
||
|
110a76: f7 96 goto -0x14 <.GJTIE61_0_0_+0x1A : 110a64 >
|
||
|
110a78: 82 f8 e8 1f if (r2 != 0xf) goto -0x30 <.GJTIE61_0_0_+0x2 : 110a4c >
|
||
|
110a7c: 48 3a r0 = 0x3a
|
||
|
110a7e: 41 22 r1 = 0x2
|
||
|
110a80: f7 91 goto -0x1e <.GJTIE61_0_0_+0x1A : 110a64 >
|
||
|
|
||
|
|
||
|
usb_g_ep_config:
|
||
|
110a82: 75 04 [--sp] = {rets, r5, r4} ## usb_phy.c:456:0
|
||
|
110a84: 04 16 r4 = r0 ## usb_phy.c:456:0
|
||
|
110a86: c0 ff 98 13 01 00 r0 = 0x11398 <ep0_addr : 11398 > ## usb_phy.c:456:0
|
||
|
110a8c: c2 ff 1c 18 1e 00 r2 = 0x1e181c <__stub_doe+0xCF020 : 1e181c > ## usb_phy.c:456:0
|
||
|
110a92: 54 e8 0f 3a if ((r4 & 0x80) != 0) goto 0x1e <usb_g_ep_config+0x32 : 110ab4 > ## usb_phy.c:456:0
|
||
|
110a96: 14 41 if (r4 == 0) goto 0x42 <usb_g_ep_config+0x58 : 110ada > ## usb_phy.c:456:0
|
||
|
110a98: 30 e1 ff 4f r0 = r4 + -0x1 ## usb_phy.c:326:22
|
||
|
110a9c: 02 a3 r2 = r0 << 0x3 ## usb_phy.c:326:11
|
||
|
110a9e: c3 ff 09 86 07 00 r3 = 0x78609 <_IRQ_MEM_ADDR+0x4C708 : 78608 > ## usb_phy.c:326:11
|
||
|
110aa4: d8 ec 2b 13 [r2+r3<<2] = r1 ## usb_phy.c:327:12
|
||
|
110aa8: c2 ff ac 13 01 00 r2 = 0x113ac <ep_raddr : 113ac > ## usb_phy.c:328:5
|
||
|
110aae: d8 ec 2b 10 [r2+r0<<2] = r1 ## usb_phy.c:328:22
|
||
|
110ab2: 04 95 goto 0x2a <usb_g_ep_config+0x5C : 110ade >
|
||
|
110ab4: 65 e1 0f 40 r5 = r4 & 0xF ## usb_phy.c:459:12
|
||
|
110ab8: 60 ff 0f 40 22 00 if ((r4 & 0xF) == 0) goto 0x44 <usb_g_ep_config+0x80 : 110b02 >
|
||
|
110abe: 30 e1 ff 5f r0 = r5 + -0x1 ## usb_phy.c:307:22
|
||
|
110ac2: 02 a3 r2 = r0 << 0x3 ## usb_phy.c:307:11
|
||
|
110ac4: c3 ff 08 86 07 00 r3 = 0x78608 <_IRQ_MEM_ADDR+0x4C708 : 78608 > ## usb_phy.c:307:11
|
||
|
110aca: d8 ec 2b 13 [r2+r3<<2] = r1 ## usb_phy.c:308:12
|
||
|
110ace: c2 ff 9c 13 01 00 r2 = 0x1139c <ep_taddr : 1139c > ## usb_phy.c:309:5
|
||
|
110ad4: d8 ec 2b 10 [r2+r0<<2] = r1 ## usb_phy.c:309:22
|
||
|
110ad8: 04 96 goto 0x2c <usb_g_ep_config+0x84 : 110b06 > ## usb_phy.c:309:22
|
||
|
110ada: a1 60 [r2+0x0] = r1 ## usb_phy.c:321:25
|
||
|
110adc: 81 60 [r0+0x0] = r1 ## usb_phy.c:322:18
|
||
|
110ade: bf ea 3d fc call -0x786 <os_code_begin : 11035c > ## usb_phy.c:262:5
|
||
|
110ae2: 40 17 r0 = r4.b0 (u) ## usb_phy.c:263:5
|
||
|
110ae4: bf ea b7 fc call -0x692 <musb_write_index : 110456 > ## usb_phy.c:263:5
|
||
|
110ae8: 40 33 r0 = 0x13 ## usb_phy.c:264:5
|
||
|
110aea: 79 3f r1 = 0xff ## usb_phy.c:264:5
|
||
|
110aec: bf ea 56 fc call -0x754 <usb_code_begin : 11039c > ## usb_phy.c:264:5
|
||
|
110af0: bf ea 3b fc call -0x78a <local_irq_enable : 11036a > ## usb_phy.c:265:5
|
||
|
110af4: 61 30 r1 = 0x90 ## usb_phy.c:476:9
|
||
|
110af6: 40 16 r0 = r4 ## usb_phy.c:476:9
|
||
|
110af8: bf ea c0 fc call -0x680 <usb_write_rxcsr : 11047c > ## usb_phy.c:476:9
|
||
|
110afc: 40 16 r0 = r4 ## usb_phy.c:483:13
|
||
|
110afe: 35 04 {rets, r5, r4} = [sp++] ## usb_phy.c:483:13
|
||
|
110b00: 36 8c goto -0x728 <usb_clr_intr_rxe : 1103da > ## usb_phy.c:483:13
|
||
|
110b02: a1 60 [r2+0x0] = r1 ## usb_phy.c:302:25
|
||
|
110b04: 81 60 [r0+0x0] = r1 ## usb_phy.c:303:18
|
||
|
110b06: bf ea 29 fc call -0x7ae <os_code_begin : 11035c > ## usb_phy.c:269:5
|
||
|
110b0a: 50 16 r0 = r5 ## usb_phy.c:270:5
|
||
|
110b0c: bf ea a3 fc call -0x6ba <musb_write_index : 110456 > ## usb_phy.c:270:5
|
||
|
110b10: 40 30 r0 = 0x10 ## usb_phy.c:271:5
|
||
|
110b12: 79 3f r1 = 0xff ## usb_phy.c:271:5
|
||
|
110b14: bf ea 42 fc call -0x77c <usb_code_begin : 11039c > ## usb_phy.c:271:5
|
||
|
110b18: bf ea 27 fc call -0x7b2 <local_irq_enable : 11036a > ## usb_phy.c:272:5
|
||
|
110b1c: 51 28 r1 = 0x48 ## usb_phy.c:463:9
|
||
|
110b1e: 50 16 r0 = r5 ## usb_phy.c:463:9
|
||
|
110b20: bf ea 1c fd call -0x5c8 <usb_write_txcsr : 11055c > ## usb_phy.c:463:9
|
||
|
110b24: 50 16 r0 = r5 ## usb_phy.c:470:13
|
||
|
110b26: 35 04 {rets, r5, r4} = [sp++] ## usb_phy.c:470:13
|
||
|
110b28: 36 97 goto -0x712 <usb_clr_intr_txe : 110418 > ## usb_phy.c:470:13
|
||
|
|
||
|
|
||
|
msd_itf_hander:
|
||
|
110b2a: 76 04 [--sp] = {rets, r6-r4} ## msd.c:93:0
|
||
|
110b2c: c2 ff 80 13 01 00 r2 = 0x11380 <hook_usb_scsi : 11380 > ## msd_upgrade.c:127:19
|
||
|
110b32: 40 ea 00 20 [r2+0x0] = 0x0 ## msd_upgrade.c:127:19
|
||
|
110b36: 04 15 r5_r4 = r1_r0 ## msd_upgrade.c:127:19
|
||
|
110b38: c6 ff 80 10 01 00 r6 = 0x11080 <ep1_dma_buffer : 11080 > ## msd.c:87:5
|
||
|
110b3e: 60 21 r0 = 0x81 ## msd.c:86:5
|
||
|
110b40: 61 16 r1 = r6 ## msd.c:86:5
|
||
|
110b42: 41 9f call -0xc2 <usb_g_ep_config : 110a82 > ## msd.c:86:5
|
||
|
110b44: 01 e1 40 60 r1 = r6 + 0x40 ## msd.c:87:5
|
||
|
110b48: 40 21 r0 = 0x1 ## msd.c:87:5
|
||
|
110b4a: 41 9b call -0xca <usb_g_ep_config : 110a82 > ## msd.c:87:5
|
||
|
110b4c: 58 40 r0 = b[r5+0x0] (u) ## msd.c:95:15
|
||
|
110b4e: 41 23 r1 = 0x3 ## msd.c:95:15
|
||
|
110b50: 10 f8 08 42 if (r0 == 0xa1) goto 0x10 <msd_itf_hander+0x3A : 110b64 > ## msd.c:95:37
|
||
|
110b54: 80 f8 10 42 if (r0 != 0x21) goto 0x20 <msd_itf_hander+0x4E : 110b78 >
|
||
|
110b58: 58 41 r0 = b[r5+0x1] (u) ## msd.c:96:15
|
||
|
110b5a: 41 20 r1 = 0x0 ## msd.c:95:9
|
||
|
110b5c: b0 e8 ff 00 if (r0 != 0xff) { ## msd.c:95:9
|
||
|
110b60: 41 23 r1 = 0x3
|
||
|
} ## msd.c:95:9
|
||
|
110b62: 04 8a goto 0x14 <msd_itf_hander+0x4E : 110b78 > ## msd.c:95:9
|
||
|
110b64: 58 41 r0 = b[r5+0x1] (u) ## msd.c:101:22
|
||
|
110b66: 90 f8 07 fc if (r0 != 0xfe) goto 0xe <msd_itf_hander+0x4E : 110b78 > ## msd.c:101:22
|
||
|
110b6a: 40 62 r0 = [r4+0x8] ## msd.c:104:21
|
||
|
110b6c: 41 20 r1 = 0x0 ## msd.c:104:37
|
||
|
110b6e: 89 40 b[r0+0x0] = r1 ## msd.c:104:37
|
||
|
110b70: 40 62 r0 = [r4+0x8] ## msd.c:105:45
|
||
|
110b72: c0 63 [r4+0xc] = r0 ## msd.c:105:31
|
||
|
110b74: 41 21 r1 = 0x1 ## msd.c:105:31
|
||
|
110b76: c9 61 h[r4+0x2] = r1 ## msd.c:106:33
|
||
|
110b78: 40 20 r0 = 0x0 ## msd.c:111:5
|
||
|
110b7a: c9 41 b[r4+0x1] = r1 ## msd.c:111:5
|
||
|
110b7c: 56 04 {pc, r6-r4} = [sp++] ## msd.c:111:5
|
||
|
|
||
|
|
||
|
usb_read_csr0:
|
||
|
110b7e: 10 04 [--sp] = rets ## usb_phy.c:98:0
|
||
|
110b80: bf ea ec fb call -0x828 <os_code_begin : 11035c > ## usb_phy.c:99:5
|
||
|
110b84: 40 20 r0 = 0x0 ## usb_phy.c:100:5
|
||
|
110b86: bf ea 66 fc call -0x734 <musb_write_index : 110456 > ## usb_phy.c:100:5
|
||
|
110b8a: 40 31 r0 = 0x11 ## usb_phy.c:101:16
|
||
|
110b8c: bf ea 14 fc call -0x7d8 <musb_read_usb : 1103b8 > ## usb_phy.c:101:16
|
||
|
110b90: 02 16 r2 = r0 ## usb_phy.c:101:16
|
||
|
110b92: bf ea ea fb call -0x82c <local_irq_enable : 11036a > ## usb_phy.c:102:5
|
||
|
110b96: 20 16 r0 = r2 ## usb_phy.c:103:5
|
||
|
110b98: 00 04 pc = [sp++] ## usb_phy.c:103:5
|
||
|
|
||
|
|
||
|
usb_write_csr0:
|
||
|
110b9a: 74 04 [--sp] = {rets, r4} ## usb_phy.c:107:0
|
||
|
110b9c: 04 16 r4 = r0 ## usb_phy.c:107:0
|
||
|
110b9e: bf ea dd fb call -0x846 <os_code_begin : 11035c > ## usb_phy.c:108:5
|
||
|
110ba2: 40 20 r0 = 0x0 ## usb_phy.c:109:5
|
||
|
110ba4: bf ea 57 fc call -0x752 <musb_write_index : 110456 > ## usb_phy.c:109:5
|
||
|
110ba8: 41 17 r1 = r4.b0 (u) ## usb_phy.c:110:5
|
||
|
110baa: 40 31 r0 = 0x11 ## usb_phy.c:110:5
|
||
|
110bac: bf ea f6 fb call -0x814 <usb_code_begin : 11039c > ## usb_phy.c:110:5
|
||
|
110bb0: 34 04 {rets, r4} = [sp++] ## usb_phy.c:111:5
|
||
|
110bb2: ff ea da fb goto -0x84c <local_irq_enable : 11036a > ## usb_phy.c:111:5
|
||
|
|
||
|
|
||
|
usb_ep0_RxPktEnd:
|
||
|
110bb6: 50 28 r0 = 0x48 ## usb_phy.c:125:0
|
||
|
110bb8: f7 90 goto -0x20 <usb_write_csr0 : 110b9a > ## usb_phy.c:126:5
|
||
|
|
||
|
|
||
|
usb_ep0_TxPktEnd:
|
||
|
110bba: 40 2a r0 = 0xa ## usb_phy.c:120:0
|
||
|
110bbc: f7 8e goto -0x24 <usb_write_csr0 : 110b9a > ## usb_phy.c:121:5
|
||
|
|
||
|
|
||
|
ep0_stage_tx:
|
||
|
110bbe: 75 04 [--sp] = {rets, r5, r4} ## usb_setup.c:15:0
|
||
|
110bc0: 61 9e call -0x44 <usb_read_csr0 : 110b7e > ## usb_setup.c:17:11
|
||
|
110bc2: 50 e8 20 0a if ((r0 & 0x2) != 0) goto 0x40 <ep0_stage_tx+0x48 : 110c06 >
|
||
|
110bc6: c5 ff d8 13 01 00 r5 = 0x113d8 <usb_device : 113d8 >
|
||
|
110bcc: 5c 61 r4 = h[r5+0x2] (u) ## usb_setup.c:20:16
|
||
|
110bce: 04 58 if (r4 == 0) goto 0x30 <ep0_stage_tx+0x42 : 110c00 > ## usb_setup.c:20:16
|
||
|
110bd0: 34 e9 40 00 if (r4 >= 0x40) {
|
||
|
110bd4: 54 20 r4 = 0x40
|
||
|
} ## usb_setup.c:24:19
|
||
|
110bd6: c0 ff 98 13 01 00 r0 = 0x11398 <ep0_addr : 11398 > ## usb_phy.c:136:20
|
||
|
110bdc: 42 d6 r2 = r4 # ## usb_phy.c:136:5
|
||
|
110bde: 00 60 r0 = [r0+0x0] ## usb_phy.c:136:20
|
||
|
110be0: 51 63 r1 = [r5+0xc] ## usb_setup.c:25:34
|
||
|
110be2: bf ea 3c fa call -0xb88 <memmove : 11005e > ## usb_phy.c:136:5
|
||
|
110be6: c0 ff 08 18 1e 00 r0 = 0x1e1808 <__stub_doe+0xCF00C : 1e1808 > ## usb_phy.c:137:21
|
||
|
110bec: 84 60 [r0+0x0] = r4 ## usb_phy.c:137:21
|
||
|
110bee: 68 e8 0c 54 [r5+0xc] += r4 ## usb_setup.c:26:30
|
||
|
110bf2: 58 61 r0 = h[r5+0x2] (u) ## usb_setup.c:27:32
|
||
|
110bf4: 00 1f r0 = r0 - r4 ## usb_setup.c:27:32
|
||
|
110bf6: d8 61 h[r5+0x2] = r0 ## usb_setup.c:27:32
|
||
|
110bf8: 59 46 r1 = b[r5+0x6] (u) ## usb_setup.c:28:50
|
||
|
110bfa: 81 46 if (r1 != 0) goto 0xc <ep0_stage_tx+0x4A : 110c08 > ## usb_setup.c:28:50
|
||
|
110bfc: 80 17 r0 = r0.l (u) ## usb_setup.c:28:13
|
||
|
110bfe: 80 44 if (r0 != 0) goto 0x8 <ep0_stage_tx+0x4A : 110c08 > ## usb_setup.c:28:13
|
||
|
110c00: 61 9c call -0x48 <usb_ep0_TxPktEnd : 110bba >
|
||
|
110c02: 40 20 r0 = 0x0
|
||
|
110c04: d8 41 b[r5+0x1] = r0
|
||
|
110c06: 55 04 {pc, r5, r4} = [sp++] ## usb_setup.c:35:1
|
||
|
110c08: 40 22 r0 = 0x2 ## usb_setup.c:29:13
|
||
|
110c0a: 35 04 {rets, r5, r4} = [sp++] ## usb_setup.c:29:13
|
||
|
110c0c: e7 86 goto -0x74 <usb_write_csr0 : 110b9a > ## usb_setup.c:29:13
|
||
|
|
||
|
|
||
|
usb_device_isr:
|
||
|
110c0e: e9 04 [--sp] = {psr, rets, reti} ## usb_onchip.c:30:0
|
||
|
110c10: d8 e8 ff 3f [--sp] = {r13-r0} ## usb_phy.c:155:5
|
||
|
110c14: e2 9e sp += -0x8 ## usb_phy.c:155:5
|
||
|
110c16: bf ea a1 fb call -0x8be <os_code_begin : 11035c > ## usb_phy.c:155:5
|
||
|
110c1a: 40 26 r0 = 0x6 ## usb_phy.c:156:17
|
||
|
110c1c: bf ea cc fb call -0x868 <musb_read_usb : 1103b8 > ## usb_phy.c:156:17
|
||
|
110c20: 40 22 r0 = 0x2 ## usb_phy.c:157:16
|
||
|
110c22: bf ea c9 fb call -0x86e <musb_read_usb : 1103b8 > ## usb_phy.c:157:16
|
||
|
110c26: 05 16 r5 = r0 ## usb_phy.c:157:16
|
||
|
110c28: 40 23 r0 = 0x3 ## usb_phy.c:157:46
|
||
|
110c2a: bf ea c5 fb call -0x876 <musb_read_usb : 1103b8 > ## usb_phy.c:157:46
|
||
|
110c2e: 06 16 r6 = r0 ## usb_phy.c:157:46
|
||
|
110c30: 40 24 r0 = 0x4 ## usb_phy.c:158:16
|
||
|
110c32: bf ea c1 fb call -0x87e <musb_read_usb : 1103b8 > ## usb_phy.c:158:16
|
||
|
110c36: 04 16 r4 = r0 ## usb_phy.c:158:16
|
||
|
110c38: 40 25 r0 = 0x5 ## usb_phy.c:158:46
|
||
|
110c3a: bf ea bd fb call -0x886 <musb_read_usb : 1103b8 > ## usb_phy.c:158:46
|
||
|
110c3e: 07 16 r7 = r0 ## usb_phy.c:158:46
|
||
|
110c40: bf ea 93 fb call -0x8da <local_irq_enable : 11036a > ## usb_phy.c:159:5
|
||
|
110c44: bf ea 8a fb call -0x8ec <os_code_begin : 11035c > ## usb_phy.c:165:5
|
||
|
110c48: 40 2b r0 = 0xb ## usb_phy.c:166:18
|
||
|
110c4a: bf ea b5 fb call -0x896 <musb_read_usb : 1103b8 > ## usb_phy.c:166:18
|
||
|
110c4e: a5 e1 20 64 r5 <= insert(r6, p:0x8, l:0x8) ## usb_phy.c:157:44
|
||
|
110c52: 40 27 r0 = 0x7 ## usb_phy.c:167:17
|
||
|
110c54: bf ea b0 fb call -0x8a0 <musb_read_usb : 1103b8 > ## usb_phy.c:167:17
|
||
|
110c58: 06 16 r6 = r0 ## usb_phy.c:167:17
|
||
|
110c5a: 40 28 r0 = 0x8 ## usb_phy.c:167:48
|
||
|
110c5c: bf ea ac fb call -0x8a8 <musb_read_usb : 1103b8 > ## usb_phy.c:167:48
|
||
|
110c60: a6 e1 20 04 r6 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:167:46
|
||
|
110c64: d6 19 r6 &= r5 ## usb_onchip.c:39:13
|
||
|
110c66: a4 e1 20 74 r4 <= insert(r7, p:0x8, l:0x8) ## usb_phy.c:158:44
|
||
|
110c6a: 40 29 r0 = 0x9 ## usb_phy.c:168:17
|
||
|
110c6c: bf ea a4 fb call -0x8b8 <musb_read_usb : 1103b8 > ## usb_phy.c:168:17
|
||
|
110c70: 05 16 r5 = r0 ## usb_phy.c:168:17
|
||
|
110c72: 40 2a r0 = 0xa ## usb_phy.c:168:48
|
||
|
110c74: bf ea a0 fb call -0x8c0 <musb_read_usb : 1103b8 > ## usb_phy.c:168:48
|
||
|
110c78: a5 e1 20 04 r5 <= insert(r0, p:0x8, l:0x8) ## usb_phy.c:168:46
|
||
|
110c7c: bf ea 75 fb call -0x916 <local_irq_enable : 11036a > ## usb_phy.c:169:5
|
||
|
110c80: 60 ff 01 60 35 01 if ((r6 & 0x1) == 0) goto 0x26a <.GJTIE87_0_0_+0x18A : 110ef0 > ## usb_phy.c:169:5
|
||
|
110c86: c8 ff d8 13 01 00 r8 = 0x113d8 <usb_device : 113d8 >
|
||
|
110c8c: 50 ee 80 10 r1 = b[r8+0x0] (u) ## usb_setup.c:220:20
|
||
|
110c90: 01 4a if (r1 == 0) goto 0x14 <usb_device_isr+0x98 : 110ca6 > ## usb_setup.c:220:20
|
||
|
110c92: bf ea 63 fb call -0x93a <os_code_begin : 11035c > ## usb_phy.c:224:5
|
||
|
110c96: 40 20 r0 = 0x0 ## usb_phy.c:225:5
|
||
|
110c98: 47 20 r7 = 0x0 ## usb_phy.c:225:5
|
||
|
110c9a: bf ea 7f fb call -0x902 <usb_code_begin : 11039c > ## usb_phy.c:225:5
|
||
|
110c9e: bf ea 64 fb call -0x938 <local_irq_enable : 11036a > ## usb_phy.c:226:5
|
||
|
110ca2: 52 ee 80 70 b[r8+0x0] = r7 ## usb_setup.c:222:26
|
||
|
110ca6: bf ea 6a ff call -0x12c <usb_read_csr0 : 110b7e > ## usb_setup.c:224:11
|
||
|
110caa: 07 16 r7 = r0 ## usb_setup.c:224:11
|
||
|
110cac: 57 e8 0b 2a if ((r7 & 0x20) != 0) goto 0x16 <usb_device_isr+0xB8 : 110cc6 >
|
||
|
110cb0: 57 e8 10 22 if ((r7 & 0x10) != 0) goto 0x20 <usb_device_isr+0xC6 : 110cd4 >
|
||
|
110cb4: 50 ee 81 00 r0 = b[r8+0x1] (u) ## usb_setup.c:236:24
|
||
|
110cb8: 00 f8 5d 04 if (r0 == 0x2) goto 0xba <.GJTIE87_0_0_+0x10 : 110d76 > ## usb_setup.c:236:5
|
||
|
110cbc: 00 ff 01 00 15 01 if (r0 == 0x1) goto 0x22a <.GJTIE87_0_0_+0x186 : 110eec >
|
||
|
110cc2: 00 4e if (r0 == 0) goto 0x1c <usb_device_isr+0xD2 : 110ce0 >
|
||
|
110cc4: 84 95 goto 0x22a <.GJTIE87_0_0_+0x18A : 110ef0 >
|
||
|
110cc6: 40 20 r0 = 0x0 ## usb_setup.c:226:9
|
||
|
110cc8: 47 20 r7 = 0x0 ## usb_setup.c:226:9
|
||
|
110cca: bf ea 66 ff call -0x134 <usb_write_csr0 : 110b9a > ## usb_setup.c:226:9
|
||
|
110cce: 52 ee 81 70 b[r8+0x1] = r7 ## usb_setup.c:227:27
|
||
|
110cd2: 84 8e goto 0x21c <.GJTIE87_0_0_+0x18A : 110ef0 > ## usb_setup.c:227:27
|
||
|
110cd4: 60 20 r0 = 0x80 ## usb_setup.c:232:9
|
||
|
110cd6: bf ea 60 ff call -0x140 <usb_write_csr0 : 110b9a > ## usb_setup.c:232:9
|
||
|
110cda: 40 20 r0 = 0x0 ## usb_setup.c:233:27
|
||
|
110cdc: 52 ee 81 00 b[r8+0x1] = r0 ## usb_setup.c:233:27
|
||
|
110ce0: 60 ff 01 70 05 01 if ((r7 & 0x1) == 0) goto 0x20a <.GJTIE87_0_0_+0x18A : 110ef0 >
|
||
|
110ce6: c0 ff 98 13 01 00 r0 = 0x11398 <ep0_addr : 11398 > ## usb_phy.c:149:25
|
||
|
110cec: 00 60 r0 = [r0+0x0] ## usb_phy.c:149:25
|
||
|
110cee: 09 47 r1 = b[r0+0x7] (u) ## usb_phy.c:149:5
|
||
|
110cf0: 0a 46 r2 = b[r0+0x6] (u) ## usb_phy.c:149:5
|
||
|
110cf2: a2 f1 20 14 r2 <= insert(r1, p:0x8, l:0x8) # ## usb_phy.c:149:5
|
||
|
110cf6: 0b 45 r3 = b[r0+0x5] (u) ## usb_phy.c:149:5
|
||
|
110cf8: 50 ee 04 b0 r11 = b[r0+0x4] (u) ## usb_phy.c:149:5
|
||
|
110cfc: ab f1 20 34 r11 <= insert(r3, p:0x8, l:0x8) # ## usb_phy.c:149:5
|
||
|
110d00: 09 43 r1 = b[r0+0x3] (u) ## usb_phy.c:149:5
|
||
|
110d02: ab f1 40 28 r11 <= insert(r2, p:0x10, l:0x10) # ## usb_phy.c:149:5
|
||
|
110d06: 0a 42 r2 = b[r0+0x2] (u) ## usb_phy.c:149:5
|
||
|
110d08: a2 f1 20 14 r2 <= insert(r1, p:0x8, l:0x8) # ## usb_phy.c:149:5
|
||
|
110d0c: 0b 41 r3 = b[r0+0x1] (u) ## usb_phy.c:149:5
|
||
|
110d0e: 50 ee 00 a0 r10 = b[r0+0x0] (u) ## usb_phy.c:149:5
|
||
|
110d12: aa e1 20 34 r10 <= insert(r3, p:0x8, l:0x8) ## usb_phy.c:149:5
|
||
|
110d16: aa e1 40 28 r10 <= insert(r2, p:0x10, l:0x10) ## usb_phy.c:149:5
|
||
|
110d1a: d0 e9 01 a0 d[sp] = r11_r10 ## usb_phy.c:149:5
|
||
|
110d1e: 40 21 r0 = 0x1 ## usb_phy.c:149:5
|
||
|
110d20: 52 ee 81 00 b[r8+0x1] = r0 ## usb_setup.c:187:23
|
||
|
110d24: c7 ff 40 11 01 00 r7 = 0x11140 <ep2_dma_buffer : 11140 > ## usb_setup.c:187:23
|
||
|
110d2a: d0 ec 89 70 [r8+0x8] = r7 ## usb_setup.c:188:29
|
||
|
110d2e: a2 15 r3_r2 = r11_r10 ## usb_setup.c:190:5
|
||
|
110d30: d0 e1 00 29 r3_r2 >>= 0x10 ## usb_setup.c:190:5
|
||
|
110d34: ac 15 r13_r12 = r11_r10 ## usb_setup.c:190:5
|
||
|
110d36: 61 e1 1f a0 r1 = r10 & 0x1F ## usb_setup.c:190:5
|
||
|
110d3a: d0 e1 08 c8 r13_r12 >>= 0x8 ## usb_setup.c:190:5
|
||
|
110d3e: 01 f8 1d 04 if (r1 == 0x2) goto 0x3a <.GJTIE87_0_0_+0x16 : 110d7c > ## usb_setup.c:190:5
|
||
|
110d42: c9 ff bc 13 01 00 r9 = 0x113bc <interface_hander : 113bc >
|
||
|
110d48: 01 f8 31 02 if (r1 == 0x1) goto 0x62 <.GJTIE87_0_0_+0x48 : 110dae >
|
||
|
110d4c: 81 f8 c7 00 if (r1 != 0x0) goto 0x18e <.GJTIE87_0_0_+0x178 : 110ede >
|
||
|
110d50: b0 e1 20 c0 r0 = uextra(r12, p:0x0, l:0x8)
|
||
|
110d54: 00 fc 36 16 if (r0 > 0xb) goto 0x6c <.GJTIE87_0_0_+0x5E : 110dc4 >
|
||
|
110d58: 00 01 tbb [r0]
|
||
|
|
||
|
|
||
|
.GJTIS87_0_0_:
|
||
|
110d5a: 06 < 6 : 0x6 >
|
||
|
110d5b: 74 < 116 : 0x74 >
|
||
|
110d5c: 35 < 53 : 0x35 >
|
||
|
110d5d: 35 < 53 : 0x35 >
|
||
|
110d5e: 35 < 53 : 0x35 >
|
||
|
110d5f: 53 < 83 : 0x53 >
|
||
|
110d60: 56 < 86 : 0x56 >
|
||
|
110d61: 35 < 53 : 0x35 >
|
||
|
110d62: 67 < 103 : 0x67 >
|
||
|
110d63: 72 < 114 : 0x72 >
|
||
|
110d64: 35 < 53 : 0x35 >
|
||
|
110d65: 74 < 116 : 0x74 >
|
||
|
110d66: 40 21 r0 = 0x1
|
||
|
110d68: f8 40 b[r7+0x0] = r0 ## usb_setup.c:105:36
|
||
|
110d6a: 40 20 r0 = 0x0 ## usb_setup.c:106:36
|
||
|
110d6c: f8 41 b[r7+0x1] = r0 ## usb_setup.c:106:36
|
||
|
110d6e: 40 22 r0 = 0x2 ## usb_setup.c:107:32
|
||
|
110d70: 50 ed 83 00 h[r8+0x2] = r0 ## usb_setup.c:107:32
|
||
|
110d74: 54 94 goto 0x168 <.GJTIE87_0_0_+0x178 : 110ede > ## usb_setup.c:107:32
|
||
|
110d76: bf ea 1e ff call -0x1c4 <usb_ep0_RxPktEnd : 110bb6 > ## usb_setup.c:38:5
|
||
|
110d7a: 14 8a goto 0x54 <.GJTIE87_0_0_+0x6A : 110dd0 > ## usb_setup.c:38:5
|
||
|
110d7c: 60 ff ff c0 2b 00 if ((r12 & 0xFF) == 0) goto 0x56 <.GJTIE87_0_0_+0x72 : 110dd8 > ## usb_setup.c:150:5
|
||
|
110d82: b1 e1 20 c0 r1 = uextra(r12, p:0x0, l:0x8)
|
||
|
110d86: 01 f8 31 06 if (r1 == 0x3) goto 0x62 <.GJTIE87_0_0_+0x86 : 110dec >
|
||
|
110d8a: 81 f8 2e 02 if (r1 != 0x1) goto 0x5c <.GJTIE87_0_0_+0x84 : 110dea >
|
||
|
110d8e: 40 23 r0 = 0x3
|
||
|
110d90: 61 ff ff 20 2b 00 if ((r2 & 0xFF) != 0) goto 0x56 <.GJTIE87_0_0_+0x86 : 110dec >
|
||
|
110d96: a2 15 r3_r2 = r11_r10 ## usb_phy.c:149:5
|
||
|
110d98: d0 e1 00 2a r3_r2 >>= 0x20 ## usb_phy.c:149:5
|
||
|
110d9c: 60 e1 03 b0 r0 = r11 & 0x3 ## usb_setup.c:149:34
|
||
|
110da0: 52 e8 58 3a if ((r2 & 0x80) != 0) goto 0xb0 <.GJTIE87_0_0_+0xEE : 110e54 >
|
||
|
110da4: 61 20 r1 = 0x80 ## usb_setup.c:156:17
|
||
|
110da6: bf ea 69 fb call -0x92e <usb_write_rxcsr : 11047c > ## usb_setup.c:156:17
|
||
|
110daa: 40 20 r0 = 0x0
|
||
|
110dac: 04 9f goto 0x3e <.GJTIE87_0_0_+0x86 : 110dec >
|
||
|
110dae: b0 e1 20 b0 r0 = uextra(r11, p:0x0, l:0x8) ## usb_setup.c:127:19
|
||
|
110db2: 00 fc 07 0c if (r0 > 0x6) goto 0xe <.GJTIE87_0_0_+0x5E : 110dc4 > ## usb_setup.c:127:19
|
||
|
110db6: d8 ec 9a 20 r2 = [r9+r0<<2] ## usb_setup.c:130:9
|
||
|
110dba: 02 44 if (r2 == 0) goto 0x8 <.GJTIE87_0_0_+0x5E : 110dc4 > ## usb_setup.c:130:9
|
||
|
110dbc: 89 80 r1 = sp + 0
|
||
|
110dbe: 80 16 r0 = r8 ## usb_setup.c:131:10
|
||
|
110dc0: c2 00 call r2 ## usb_setup.c:131:10
|
||
|
110dc2: 20 45 if (r0 == 0) goto 0x8a <.GJTIE87_0_0_+0xE8 : 110e4e > ## usb_setup.c:131:10
|
||
|
110dc4: 40 23 r0 = 0x3
|
||
|
110dc6: 52 ee 81 00 b[r8+0x1] = r0
|
||
|
110dca: 58 20 r0 = 0x60 ## usb_phy.c:131:5
|
||
|
110dcc: bf ea e5 fe call -0x236 <usb_write_csr0 : 110b9a > ## usb_phy.c:131:5
|
||
|
110dd0: 40 20 r0 = 0x0
|
||
|
110dd2: 52 ee 81 00 b[r8+0x1] = r0
|
||
|
110dd6: 44 8c goto 0x118 <.GJTIE87_0_0_+0x18A : 110ef0 >
|
||
|
110dd8: 41 20 r1 = 0x0 ## usb_setup.c:164:36
|
||
|
110dda: f9 40 b[r7+0x0] = r1 ## usb_setup.c:164:36
|
||
|
110ddc: f9 41 b[r7+0x1] = r1 ## usb_setup.c:165:36
|
||
|
110dde: d0 ec 8d 70 [r8+0xc] = r7 ## usb_setup.c:166:30
|
||
|
110de2: 41 22 r1 = 0x2 ## usb_setup.c:167:32
|
||
|
110de4: 50 ed 83 10 h[r8+0x2] = r1 ## usb_setup.c:167:32
|
||
|
110de8: 04 81 goto 0x2 <.GJTIE87_0_0_+0x86 : 110dec > ## usb_setup.c:167:32
|
||
|
110dea: 40 23 r0 = 0x3
|
||
|
110dec: 52 ee 81 00 b[r8+0x1] = r0
|
||
|
110df0: 31 e1 ff 0f r1 = r0 + -0x1 ## usb_setup.c:203:9
|
||
|
110df4: 81 f9 73 04 if (r1 < 0x2) goto 0xe6 <.GJTIE87_0_0_+0x178 : 110ede > ## usb_setup.c:203:9
|
||
|
110df8: 10 47 if (r0 == 0) goto 0x4e <.GJTIE87_0_0_+0xE2 : 110e48 >
|
||
|
110dfa: 00 f8 e6 07 if (r0 == 0x3) goto -0x34 <.GJTIE87_0_0_+0x64 : 110dca >
|
||
|
110dfe: 34 92 goto 0xe4 <.GJTIE87_0_0_+0x17E : 110ee4 >
|
||
|
110e00: 52 ee 80 20 b[r8+0x0] = r2 ## usb_setup.c:47:26
|
||
|
110e04: 04 9e goto 0x3c <.GJTIE87_0_0_+0xDC : 110e42 > ## usb_setup.c:47:26
|
||
|
110e06: a0 15 r1_r0 = r11_r10 ## usb_setup.c:64:17
|
||
|
110e08: d0 e1 08 09 r1_r0 >>= 0x18 ## usb_setup.c:64:17
|
||
|
110e0c: 00 17 r0 = r0.b0 (u) ## usb_setup.c:64:9
|
||
|
110e0e: 00 f8 26 06 if (r0 == 0x3) goto 0x4c <.GJTIE87_0_0_+0xF8 : 110e5e > ## usb_setup.c:64:9
|
||
|
110e12: 00 f8 31 04 if (r0 == 0x2) goto 0x62 <.GJTIE87_0_0_+0x112 : 110e78 >
|
||
|
110e16: 80 f8 d5 03 if (r0 != 0x1) goto -0x56 <.GJTIE87_0_0_+0x5E : 110dc4 >
|
||
|
110e1a: c1 ff 7f 0f 11 00 r1 = 0x110f7f <scsi_mode_sense+0x3 : 110f7e > ## descriptor.c:71:5
|
||
|
110e20: 42 32 r2 = 0x12 ## descriptor.c:71:5
|
||
|
110e22: 49 e0 12 00 r9 = 0x12 ## descriptor.c:71:5
|
||
|
110e26: 14 84 goto 0x48 <.GJTIE87_0_0_+0x10A : 110e70 > ## descriptor.c:71:5
|
||
|
110e28: 50 ee 85 00 r0 = b[r8+0x5] (u) ## usb_setup.c:57:49
|
||
|
110e2c: f8 40 b[r7+0x0] = r0 ## usb_setup.c:57:36
|
||
|
110e2e: d0 ec 8d 70 [r8+0xc] = r7 ## usb_setup.c:58:30
|
||
|
110e32: 40 21 r0 = 0x1 ## usb_setup.c:58:30
|
||
|
110e34: 50 ed 83 00 h[r8+0x2] = r0 ## usb_setup.c:59:32
|
||
|
110e38: 52 ee 81 00 b[r8+0x1] = r0 ## usb_setup.c:60:27
|
||
|
110e3c: 24 90 goto 0xa0 <.GJTIE87_0_0_+0x178 : 110ede > ## usb_setup.c:60:27
|
||
|
110e3e: 52 ee 85 20 b[r8+0x5] = r2 ## usb_setup.c:100:31
|
||
|
110e42: 40 20 r0 = 0x0
|
||
|
110e44: 52 ee 81 00 b[r8+0x1] = r0
|
||
|
110e48: bf ea b5 fe call -0x296 <usb_ep0_RxPktEnd : 110bb6 > ## usb_setup.c:204:9
|
||
|
110e4c: 24 8b goto 0x96 <.GJTIE87_0_0_+0x17E : 110ee4 > ## usb_setup.c:204:9
|
||
|
110e4e: 50 ee 81 00 r0 = b[r8+0x1] (u)
|
||
|
110e52: e7 8e goto -0x64 <.GJTIE87_0_0_+0x8A : 110df0 >
|
||
|
110e54: 51 20 r1 = 0x40 ## usb_setup.c:154:17
|
||
|
110e56: bf ea 81 fb call -0x8fe <usb_write_txcsr : 11055c > ## usb_setup.c:154:17
|
||
|
110e5a: 40 20 r0 = 0x0
|
||
|
110e5c: e7 87 goto -0x72 <.GJTIE87_0_0_+0x86 : 110dec >
|
||
|
110e5e: 60 ff ff 20 27 00 if ((r2 & 0xFF) == 0) goto 0x4e <.GJTIE87_0_0_+0x14C : 110eb2 >
|
||
|
110e64: c1 ff 91 0f 11 00 r1 = 0x110f91 <sDeviceDescriptor+0x11 : 110f90 > ## descriptor.c:79:5
|
||
|
110e6a: 42 3c r2 = 0x1c ## descriptor.c:79:5
|
||
|
110e6c: 49 e0 1c 00 r9 = 0x1c ## descriptor.c:79:5
|
||
|
110e70: 70 16 r0 = r7
|
||
|
110e72: bf ea f4 f8 call -0xe18 <memmove : 11005e >
|
||
|
110e76: 14 83 goto 0x46 <.GJTIE87_0_0_+0x158 : 110ebe >
|
||
|
110e78: c1 ff ad 0f 11 00 r1 = 0x110fad <MANUFACTURE_STR+0x1B : 110fac > ## descriptor.c:85:5
|
||
|
110e7e: 42 29 r2 = 0x9 ## descriptor.c:85:5
|
||
|
110e80: 70 16 r0 = r7 ## descriptor.c:85:5
|
||
|
110e82: bf ea ec f8 call -0xe28 <memmove : 11005e > ## descriptor.c:85:5
|
||
|
110e86: 78 89 r0 = r7 + 0x9 ## descriptor.c:85:5
|
||
|
110e88: c1 ff 40 0f 11 00 r1 = 0x110f40 <sMassDescriptor : 110f40 > ## msd.c:119:5
|
||
|
110e8e: 42 37 r2 = 0x17 ## msd.c:119:5
|
||
|
110e90: bf ea e5 f8 call -0xe36 <memmove : 11005e > ## msd.c:119:5
|
||
|
110e94: 40 20 r0 = 0x0 ## msd.c:120:12
|
||
|
110e96: f8 4b b[r7+0xb] = r0 ## msd.c:120:12
|
||
|
110e98: c1 ff 2a 0b 11 00 r1 = 0x110b2a <msd_itf_hander : 110b2a > ## usb_setup.c:143:31
|
||
|
110e9e: d0 ec 91 10 [r9+0x0] = r1 ## usb_setup.c:143:31
|
||
|
110ea2: 49 e0 20 00 r9 = 0x20 ## usb_setup.c:143:31
|
||
|
110ea6: 52 ee 72 90 b[r7+0x2] = r9 ## descriptor.c:99:10
|
||
|
110eaa: f8 43 b[r7+0x3] = r0 ## descriptor.c:100:10
|
||
|
110eac: 40 21 r0 = 0x1 ## descriptor.c:101:10
|
||
|
110eae: f8 44 b[r7+0x4] = r0 ## descriptor.c:101:10
|
||
|
110eb0: 04 86 goto 0xc <.GJTIE87_0_0_+0x158 : 110ebe > ## descriptor.c:101:10
|
||
|
110eb2: c0 ff 04 03 09 04 r0 = 0x4090304 <__stub_doe+0x3F7DB08 : 4090304 > ## descriptor.c:75:5
|
||
|
110eb8: 49 f0 04 00 r9 = 0x4 # ## descriptor.c:75:5
|
||
|
110ebc: f0 60 [r7+0x0] = r0 ## descriptor.c:75:5
|
||
|
110ebe: d0 ec 8d 70 [r8+0xc] = r7
|
||
|
110ec2: d0 e1 00 ab r11_r10 >>= 0x30 ## usb_setup.c:190:5
|
||
|
110ec6: 90 16 r0 = r9 ## usb_setup.c:90:13
|
||
|
110ec8: 9a ec 00 00 if (r10 <= r0) { ## usb_setup.c:90:13
|
||
|
110ecc: a0 16 r0 = r10
|
||
|
} ## usb_setup.c:90:13
|
||
|
110ece: 50 ed 83 00 h[r8+0x2] = r0 ## usb_setup.c:89:32
|
||
|
110ed2: 40 21 r0 = 0x1 ## usb_setup.c:90:36
|
||
|
110ed4: 9a ec 00 09 if (r10 <= r9) { ## usb_setup.c:90:36
|
||
|
110ed8: 40 20 r0 = 0x0
|
||
|
} ## usb_setup.c:90:36
|
||
|
110eda: 52 ee 86 00 b[r8+0x6] = r0 ## usb_setup.c:90:36
|
||
|
110ede: 50 20 r0 = 0x40 ## usb_phy.c:116:5
|
||
|
110ee0: bf ea 5b fe call -0x34a <usb_write_csr0 : 110b9a > ## usb_phy.c:116:5
|
||
|
110ee4: 50 ee 81 00 r0 = b[r8+0x1] (u) ## usb_setup.c:213:40
|
||
|
110ee8: 80 f8 02 02 if (r0 != 0x1) goto 0x4 <.GJTIE87_0_0_+0x18A : 110ef0 > ## usb_setup.c:213:40
|
||
|
110eec: bf ea 67 fe call -0x332 <ep0_stage_tx : 110bbe >
|
||
|
110ef0: c5 19 r5 &= r4 ## usb_onchip.c:40:13
|
||
|
110ef2: 44 21 r4 = 0x1 ## usb_onchip.c:40:13
|
||
|
110ef4: c7 ff ec 13 01 00 r7 = 0x113ec <usb_interrupt_tx : 113ec > ## usb_onchip.c:40:13
|
||
|
110efa: 04 8a goto 0x14 <.GJTIE87_0_0_+0x1AA : 110f10 > ## usb_onchip.c:40:13
|
||
|
110efc: 94 e1 62 04 r0 = r6 & (1 << r4) ## usb_onchip.c:57:13
|
||
|
110f00: 00 46 if (r0 == 0) goto 0xc <.GJTIE87_0_0_+0x1A8 : 110f0e > ## usb_onchip.c:57:13
|
||
|
110f02: d8 ec 7a 14 r1 = [r7+r4<<2] ## usb_onchip.c:58:17
|
||
|
110f06: b1 e8 00 40 if (r1 != 0x0) { ## usb_onchip.c:58:17
|
||
|
110f0a: 40 16 r0 = r4 ## usb_onchip.c:59:17
|
||
|
110f0c: c1 00 call r1
|
||
|
} ## usb_onchip.c:59:17
|
||
|
110f0e: c4 21 r4 += 0x1 ## usb_onchip.c:56:37
|
||
|
110f10: 84 f8 f4 0f if (r4 != 0x7) goto -0x18 <.GJTIE87_0_0_+0x196 : 110efc > ## usb_onchip.c:56:5
|
||
|
110f14: 44 21 r4 = 0x1
|
||
|
110f16: c6 ff 08 14 01 00 r6 = 0x11408 <usb_interrupt_rx : 11408 >
|
||
|
110f1c: 04 8a goto 0x14 <.GJTIE87_0_0_+0x1CC : 110f32 >
|
||
|
110f1e: 94 e1 52 04 r0 = r5 & (1 << r4) ## usb_onchip.c:64:13
|
||
|
110f22: 00 46 if (r0 == 0) goto 0xc <.GJTIE87_0_0_+0x1CA : 110f30 > ## usb_onchip.c:64:13
|
||
|
110f24: d8 ec 6a 14 r1 = [r6+r4<<2] ## usb_onchip.c:65:17
|
||
|
110f28: b1 e8 00 40 if (r1 != 0x0) { ## usb_onchip.c:65:17
|
||
|
110f2c: 40 16 r0 = r4 ## usb_onchip.c:66:17
|
||
|
110f2e: c1 00 call r1
|
||
|
} ## usb_onchip.c:66:17
|
||
|
110f30: c4 21 r4 += 0x1 ## usb_onchip.c:63:37
|
||
|
110f32: 84 f8 f4 0f if (r4 != 0x7) goto -0x18 <.GJTIE87_0_0_+0x1B8 : 110f1e >
|
||
|
110f36: 02 82 sp += 0x8
|
||
|
110f38: d4 e8 ff 3f {r13-r0} = [sp++] ## usb_onchip.c:71:1
|
||
|
110f3c: a9 04 {psr, rets, reti} = [sp++] ## usb_onchip.c:71:1
|
||
|
110f3e: 81 00 rti ## usb_onchip.c:71:1
|
||
|
|
||
|
|
||
|
sMassDescriptor:
|
||
|
110f40: 09 04 00 00 02 08 06 50 .......P
|
||
|
110f48: 00 07 05 81 02 40 00 01 .....@..
|
||
|
110f50: 07 05 01 02 40 00 01 .
|
||
|
|
||
|
|
||
|
SCSIInquiryData:
|
||
|
110f57: 00 80 02 02 20 00 00 00 .... ...
|
||
|
110f5f: 42 52 32 33 20 20 20 20 BR23
|
||
|
110f67: 55 42 4f 4f 54 31 2e 30 UBOOT1.0
|
||
|
110f6f: 30 20 20 20 20 20 20 20 0
|
||
|
110f77: 31 2e 30 30 1.00
|
||
|
|
||
|
|
||
|
scsi_mode_sense:
|
||
|
110f7b: 03 00 00 00 ....
|
||
|
|
||
|
|
||
|
sDeviceDescriptor:
|
||
|
110f7f: 12 01 10 01 00 00 00 40 .......@
|
||
|
110f87: 4a 4c 42 23 00 03 01 02 JLB#....
|
||
|
110f8f: 00 01 ..B#..
|
||
|
|
||
|
|
||
|
MANUFACTURE_STR:
|
||
|
110f91: 1c 03 42 00 52 00 32 00 ..B.R.2.
|
||
|
110f99: 33 00 55 00 42 00 4f 00 3.U.B.O.
|
||
|
110fa1: 4f 00 54 00 31 00 2e 00 O.T.1...
|
||
|
110fa9: 30 00 30 00 0.0.
|
||
|
|
||
|
|
||
|
sConfigDescriptor:
|
||
|
110fad: 09 02 20 00 01 01 00 80 .. .....
|
||
|
110fb5: c8 .. ....
|
||
|
|
||
|
|
||
|
usb_code_end:
|
||
|
110fb6: ed ff 20 0c 01 00 ssp = 0x10c20 ## startup.S:38:0
|
||
|
110fbc: 41 14 sp = ssp ## startup.S:39:0
|
||
|
110fbe: ec ff 20 10 01 00 usp = 0x11020 ## startup.S:40:0
|
||
|
110fc4: 80 14 r1_r0 = 0 ## startup.S:42:0
|
||
|
110fc6: 82 14 r3_r2 = 0 ## startup.S:43:0
|
||
|
110fc8: 84 14 r5_r4 = 0 ## startup.S:44:0
|
||
|
110fca: 86 14 r7_r6 = 0 ## startup.S:45:0
|
||
|
110fcc: 88 14 r9_r8 = 0 ## startup.S:46:0
|
||
|
110fce: 8a 14 r11_r10 = 0 ## startup.S:47:0
|
||
|
110fd0: 8c 14 r13_r12 = 0 ## startup.S:48:0
|
||
|
110fd2: 8e 14 r15_r14 = 0 ## startup.S:49:0
|
||
|
110fd4: 64 e0 80 05 psr = r0 ## startup.S:51:0
|
||
|
110fd8: 64 e0 80 01 rete = r0 ## startup.S:52:0
|
||
|
110fdc: 64 e0 80 02 retx = r0 ## startup.S:53:0
|
||
|
110fe0: 64 e0 80 03 rets = r0 ## startup.S:54:0
|
||
|
110fe4: 64 e0 80 00 reti = r0 ## startup.S:55:0
|
||
|
110fe8: 80 ea b1 09 call 0x1362 <switch_to_hrc_asm : 11234e > ## startup.S:56:0
|
||
|
110fec: e0 ff f4 0f 11 00 reti = 0x110ff4 ## startup.S:58:0
|
||
|
110ff2: 81 00 rti ## startup.S:59:0
|
||
|
|
||
|
|
||
|
_user_mode:
|
||
|
110ff4: 80 ea 6d 01 call 0x2da <startup_init1 : 1112d2 > ## startup.S:63:0
|
||
|
110ff8: 40 20 r0 = 0x0 ## startup.S:65:0
|
||
|
110ffa: c1 ff 20 08 01 00 r1 = 0x10820 <stack_bss_begin : 10820 > ## startup.S:66:0
|
||
|
111000: c2 ff 00 08 00 00 r2 = 0x800 <stack_bss_size : 800 > ## startup.S:67:0
|
||
|
111006: a2 a2 r2 = r2 >> 0x2 ## startup.S:68:0
|
||
|
111008: 02 03 rep 0x2 r2 { ## startup.S:70:0
|
||
|
11100a: 90 05 [r1++=0x4] = r0
|
||
|
} ## startup.S:71:0
|
||
|
11100c: 02 fc fc 01 if (r2 > 0x0) goto -0x8 <_user_mode+0x14 : 111008 > ## startup.S:72:0
|
||
|
111010: 40 20 r0 = 0x0 ## startup.S:75:0
|
||
|
111012: c1 ff 40 13 01 00 r1 = 0x11340 <var_bss_begin : 11340 > ## startup.S:76:0
|
||
|
111018: c2 ff e4 00 00 00 r2 = 0xe4 <var_bss_size : e4 > ## startup.S:77:0
|
||
|
11101e: a2 a2 r2 = r2 >> 0x2 ## startup.S:78:0
|
||
|
111020: 02 03 rep 0x2 r2 { ## startup.S:80:0
|
||
|
111022: 90 05 [r1++=0x4] = r0
|
||
|
} ## startup.S:81:0
|
||
|
111024: 02 fc fc 01 if (r2 > 0x0) goto -0x8 <_user_mode+0x2C : 111020 > ## startup.S:82:0
|
||
|
111028: c0 ea 96 07 goto 0xf2c <main : 111f58 > ## startup.S:85:0
|
||
|
11102c: 00 00 nop
|
||
|
11102e: 00 00 nop
|
||
|
|
||
|
|
||
|
norflash_check_in.spi0_porta_config:
|
||
|
111030: 00 00 00 00 ....
|
||
|
|
||
|
|
||
|
norflash_check_in.spi0_portb_config:
|
||
|
111034: 08 00 00 00 00 00 00 00 ........
|
||
|
11103c: 00 00 00 00 73 79 73 00 ....sys.
|
||
|
111044: 6f 73 63 00 osc.
|
||
|
|
||
|
|
||
|
ack_cmd:
|
||
|
111048: 55 aa 01 20 22 75 61 72 U.. "uar
|
||
|
111050: 74 00 73 70 69 20 70 6f t.spi po
|
||
|
111058: 72 74 20 25 78 20 0a 00
|
||
|
|
||
|
|
||
|
spi_flash_io_nor:
|
||
|
111060: c4 be 02 00 00 00 00 00 ........
|
||
|
111068: 00 00 00 00 78 24 11 00
|
||
|
|
||
|
|
||
|
nor_flash_boot_table:
|
||
|
111070: 00 10 00 00 00 00 01 00 ........
|
||
|
111078: 00 00 08 00 00 00 10 00 ........
|
||
|
111080: 72 65 6c 65 61 73 65 20 release
|
||
|
111088: 73 70 69 20 70 6f 72 74 spi port
|
||
|
111090: 20 25 78 20 0a 00 00 00 %x ....
|
||
|
111098: 28 6e 75 6c 6c 29 00 (
|
||
|
|
||
|
|
||
|
CrcDecode.keylcode:
|
||
|
11109f: c3 cf c0 e8 ce d2 b0 ae ........
|
||
|
1110a7: c4 e3 a3 ac d3 f1 c1 d6 ........
|
||
|
1110af: 00 .......
|
||
|
|
||
|
|
||
|
p33_buf:
|
||
|
1110b0: c1 ff 08 3e 1e 00 r1 = 0x1e3e08 <__stub_doe+0xD160C : 1e3e08 > ## p33.c:8:0
|
||
|
1110b6: 90 61 [r1+0x4] = r0 ## p33.c:9:21
|
||
|
1110b8: 00 ef 10 10 [r1+0x0] |= 0x10 ## p33.c:10:21
|
||
|
1110bc: 10 60 r0 = [r1+0x0] ## p33.c:12:20
|
||
|
1110be: 50 e8 fd 0b if ((r0 & 0x2) != 0) goto -0x6 <p33_buf+0xC : 1110bc > ## p33.c:12:5
|
||
|
1110c2: 10 61 r0 = [r1+0x4] ## p33.c:13:20
|
||
|
1110c4: 00 17 r0 = r0.b0 (u) ## p33.c:13:5
|
||
|
1110c6: 80 00 rts ## p33.c:13:5
|
||
|
|
||
|
|
||
|
p33_tx_1byte:
|
||
|
1110c8: 74 04 [--sp] = {rets, r4} ## p33.c:44:0
|
||
|
1110ca: 12 16 r2 = r1 ## p33.c:44:0
|
||
|
1110cc: 03 16 r3 = r0 ## p33.c:44:0
|
||
|
1110ce: b9 17 r1 = r3.l (s) ## p33.c:44:0
|
||
|
1110d0: bf ea 44 f9 call -0xd78 <os_code_begin : 11035c > ## p33.c:45:5
|
||
|
1110d4: c4 ff 08 3e 1e 00 r4 = 0x1e3e08 <__stub_doe+0xD160C : 1e3e08 > ## p33.c:45:5
|
||
|
1110da: 31 ed 00 50 ifs (r1 >= 0x0) { ## p33.c:45:5
|
||
|
1110de: c0 ef 80 4f [r4+0x0] &= 0xFFFFFEFF ## p33.c:45:5
|
||
|
1110e2: 40 21 r0 = 0x1
|
||
|
} else { ## p33.c:45:5
|
||
|
1110e4: 40 e0 01 01 r0 = 0x101
|
||
|
} ## p33.c:45:5
|
||
|
1110e8: 64 e8 00 40 [r4+0x0] |= r0 ## p33.c:45:5
|
||
|
1110ec: b0 e1 08 34 r0 = uextra(r3, p:0x8, l:0x2) ## p33.c:46:5
|
||
|
1110f0: 61 9f call -0x42 <p33_buf : 1110b0 > ## p33.c:46:5
|
||
|
1110f2: 70 e1 7f 3c r0 = r3 & 0xFFFF00FF ## p33.c:47:5
|
||
|
1110f6: 61 9c call -0x48 <p33_buf : 1110b0 > ## p33.c:47:5
|
||
|
1110f8: 20 16 r0 = r2 ## p33.c:48:5
|
||
|
1110fa: 61 9a call -0x4c <p33_buf : 1110b0 > ## p33.c:48:5
|
||
|
1110fc: 40 e0 fe fe r0 = -0x102 ## p33.c:49:5
|
||
|
111100: 64 e8 02 40 [r4+0x0] &= r0 ## p33.c:49:5
|
||
|
111104: 34 04 {rets, r4} = [sp++] ## p33.c:49:5
|
||
|
111106: ff ea 30 f9 goto -0xda0 <local_irq_enable : 11036a > ## p33.c:49:5
|
||
|
|
||
|
|
||
|
exception_analyze:
|
||
|
11110a: c1 ff c0 be 02 00 r1 = 0x2bec0 <exception_irq_hook : 2bec0 > ## boot_init.c:38:0
|
||
|
111110: 11 60 r1 = [r1+0x0] ## boot_init.c:39:9
|
||
|
111112: b1 e8 00 00 if (r1 != 0x0) { ## boot_init.c:39:9
|
||
|
111116: c1 00 call r1
|
||
|
} ## boot_init.c:40:9
|
||
|
111118: bf ea e1 f8 call -0xe3e <chip_reset : 1102de > ## boot_init.c:43:5
|
||
|
|
||
|
|
||
|
p33_rx_1byte:
|
||
|
11111c: 10 04 [--sp] = rets ## p33.c:53:0
|
||
|
11111e: 02 16 r2 = r0 ## p33.c:53:0
|
||
|
111120: a9 17 r1 = r2.l (s) ## p33.c:53:0
|
||
|
111122: bf ea 1b f9 call -0xdca <os_code_begin : 11035c > ## p33.c:56:5
|
||
|
111126: c3 ff 08 3e 1e 00 r3 = 0x1e3e08 <__stub_doe+0xD160C : 1e3e08 > ## p33.c:56:5
|
||
|
11112c: 31 ed 00 50 ifs (r1 >= 0x0) { ## p33.c:56:5
|
||
|
111130: c0 ef 80 3f [r3+0x0] &= 0xFFFFFEFF ## p33.c:56:5
|
||
|
111134: 40 21 r0 = 0x1
|
||
|
} else { ## p33.c:56:5
|
||
|
111136: 40 e0 01 01 r0 = 0x101
|
||
|
} ## p33.c:56:5
|
||
|
11113a: 64 e8 00 30 [r3+0x0] |= r0 ## p33.c:56:5
|
||
|
11113e: a0 a8 r0 = r2 >> 0x8 ## p33.c:57:22
|
||
|
111140: 30 27 r0 |= 0x80 ## p33.c:57:13
|
||
|
111142: 60 e1 83 00 r0 = r0 & 0x83 ## p33.c:57:5
|
||
|
111146: 51 94 call -0x98 <p33_buf : 1110b0 > ## p33.c:57:5
|
||
|
111148: 70 e1 7f 2c r0 = r2 & 0xFFFF00FF ## p33.c:58:5
|
||
|
11114c: 51 91 call -0x9e <p33_buf : 1110b0 > ## p33.c:58:5
|
||
|
11114e: 50 3e r0 = 0x5e ## p33.c:59:12
|
||
|
111150: 51 8f call -0xa2 <p33_buf : 1110b0 > ## p33.c:59:12
|
||
|
111152: 41 e0 fe fe r1 = -0x102 ## p33.c:60:5
|
||
|
111156: 64 e8 02 31 [r3+0x0] &= r1 ## p33.c:60:5
|
||
|
11115a: 02 16 r2 = r0 ## p33.c:59:12
|
||
|
11115c: bf ea 05 f9 call -0xdf6 <local_irq_enable : 11036a > ## p33.c:60:5
|
||
|
111160: 20 16 r0 = r2 ## p33.c:61:5
|
||
|
111162: 00 04 pc = [sp++] ## p33.c:61:5
|
||
|
|
||
|
|
||
|
HWI_Install:
|
||
|
111164: 74 04 [--sp] = {rets, r4} ## irq.c:15:0
|
||
|
111166: c3 ff 00 bf 02 00 r3 = 0x2bf00 <_IRQ_MEM_ADDR : 2bf00 > ## irq.c:19:5
|
||
|
11116c: d8 ec 3b 10 [r3+r0<<2] = r1 ## irq.c:19:20
|
||
|
111170: 01 a2 r1 = r0 << 0x2 ## irq.c:17:41
|
||
|
111172: 61 e1 1c 10 r1 = r1 & 0x1C ## irq.c:17:41
|
||
|
111176: 43 2f r3 = 0xf ## irq.c:17:41
|
||
|
111178: 13 1a r3 <<= r1 ## irq.c:24:35
|
||
|
11117a: 80 a3 r0 = r0 >> 0x3 ## irq.c:16:36
|
||
|
11117c: c4 ff 00 f1 10 00 r4 = 0x10f100 <_IRQ_MEM_ADDR+0xE3200 : 10f100 > ## irq.c:28:27
|
||
|
111182: a4 e1 14 01 r4 <= insert(r0, p:0x2, l:0x5) ## irq.c:28:27
|
||
|
111186: bf ea e9 f8 call -0xe2e <os_code_begin : 11035c > ## irq.c:22:5
|
||
|
11118a: 40 60 r0 = [r4+0x0] ## irq.c:28:27
|
||
|
11118c: 90 e1 03 03 r0 = r0 & ~r3 ## irq.c:28:46
|
||
|
111190: 22 a1 r2 = r2 << 0x1 ## irq.c:23:49
|
||
|
111192: 62 e1 0e 20 r2 = r2 & 0xE ## irq.c:23:49
|
||
|
111196: 32 20 r2 |= 0x1 ## irq.c:23:55
|
||
|
111198: c8 e1 20 11 r1 = r2 << r1 ## irq.c:25:39
|
||
|
11119c: 10 19 r0 |= r1 ## irq.c:28:58
|
||
|
11119e: c0 60 [r4+0x0] = r0 ## irq.c:28:24
|
||
|
1111a0: bf ea e3 f8 call -0xe3a <local_irq_enable : 11036a > ## irq.c:30:5
|
||
|
1111a4: 54 04 {pc, r4} = [sp++] ## irq.c:31:1
|
||
|
|
||
|
|
||
|
p33_or_1byte:
|
||
|
1111a6: 74 04 [--sp] = {rets, r4} ## p33.c:35:0
|
||
|
1111a8: 12 16 r2 = r1 ## p33.c:35:0
|
||
|
1111aa: 03 16 r3 = r0 ## p33.c:35:0
|
||
|
1111ac: b9 17 r1 = r3.l (s) ## p33.c:35:0
|
||
|
1111ae: bf ea d5 f8 call -0xe56 <os_code_begin : 11035c > ## p33.c:36:5
|
||
|
1111b2: c4 ff 08 3e 1e 00 r4 = 0x1e3e08 <__stub_doe+0xD160C : 1e3e08 > ## p33.c:36:5
|
||
|
1111b8: 31 ed 00 50 ifs (r1 >= 0x0) { ## p33.c:36:5
|
||
|
1111bc: c0 ef 80 4f [r4+0x0] &= 0xFFFFFEFF ## p33.c:36:5
|
||
|
1111c0: 40 21 r0 = 0x1
|
||
|
} else { ## p33.c:36:5
|
||
|
1111c2: 40 e0 01 01 r0 = 0x101
|
||
|
} ## p33.c:36:5
|
||
|
1111c6: 64 e8 00 40 [r4+0x0] |= r0 ## p33.c:36:5
|
||
|
1111ca: b0 e1 08 34 r0 = uextra(r3, p:0x8, l:0x2) ## p33.c:37:13
|
||
|
1111ce: 30 25 r0 |= 0x20 ## p33.c:37:13
|
||
|
1111d0: bf ea 6e ff call -0x124 <p33_buf : 1110b0 > ## p33.c:37:5
|
||
|
1111d4: 70 e1 7f 3c r0 = r3 & 0xFFFF00FF ## p33.c:38:5
|
||
|
1111d8: bf ea 6a ff call -0x12c <p33_buf : 1110b0 > ## p33.c:38:5
|
||
|
1111dc: 20 16 r0 = r2 ## p33.c:39:5
|
||
|
1111de: bf ea 67 ff call -0x132 <p33_buf : 1110b0 > ## p33.c:39:5
|
||
|
1111e2: 40 e0 fe fe r0 = -0x102 ## p33.c:40:5
|
||
|
1111e6: 64 e8 02 40 [r4+0x0] &= r0 ## p33.c:40:5
|
||
|
1111ea: 34 04 {rets, r4} = [sp++] ## p33.c:40:5
|
||
|
1111ec: ff ea bd f8 goto -0xe86 <local_irq_enable : 11036a > ## p33.c:40:5
|
||
|
|
||
|
|
||
|
p33_and_1byte:
|
||
|
1111f0: 74 04 [--sp] = {rets, r4} ## p33.c:26:0
|
||
|
1111f2: 12 16 r2 = r1 ## p33.c:26:0
|
||
|
1111f4: 03 16 r3 = r0 ## p33.c:26:0
|
||
|
1111f6: b9 17 r1 = r3.l (s) ## p33.c:26:0
|
||
|
1111f8: bf ea b0 f8 call -0xea0 <os_code_begin : 11035c > ## p33.c:27:5
|
||
|
1111fc: c4 ff 08 3e 1e 00 r4 = 0x1e3e08 <__stub_doe+0xD160C : 1e3e08 > ## p33.c:27:5
|
||
|
111202: 31 ed 00 50 ifs (r1 >= 0x0) { ## p33.c:27:5
|
||
|
111206: c0 ef 80 4f [r4+0x0] &= 0xFFFFFEFF ## p33.c:27:5
|
||
|
11120a: 40 21 r0 = 0x1
|
||
|
} else { ## p33.c:27:5
|
||
|
11120c: 40 e0 01 01 r0 = 0x101
|
||
|
} ## p33.c:27:5
|
||
|
111210: 64 e8 00 40 [r4+0x0] |= r0 ## p33.c:27:5
|
||
|
111214: b0 e1 08 34 r0 = uextra(r3, p:0x8, l:0x2) ## p33.c:28:13
|
||
|
111218: 30 26 r0 |= 0x40 ## p33.c:28:13
|
||
|
11121a: bf ea 49 ff call -0x16e <p33_buf : 1110b0 > ## p33.c:28:5
|
||
|
11121e: 70 e1 7f 3c r0 = r3 & 0xFFFF00FF ## p33.c:29:5
|
||
|
111222: bf ea 45 ff call -0x176 <p33_buf : 1110b0 > ## p33.c:29:5
|
||
|
111226: 20 16 r0 = r2 ## p33.c:30:5
|
||
|
111228: bf ea 42 ff call -0x17c <p33_buf : 1110b0 > ## p33.c:30:5
|
||
|
11122c: 40 e0 fe fe r0 = -0x102 ## p33.c:31:5
|
||
|
111230: 64 e8 02 40 [r4+0x0] &= r0 ## p33.c:31:5
|
||
|
111234: 34 04 {rets, r4} = [sp++] ## p33.c:31:5
|
||
|
111236: ff ea 98 f8 goto -0xed0 <local_irq_enable : 11036a > ## p33.c:31:5
|
||
|
|
||
|
|
||
|
spi_cs_pu:
|
||
|
11123a: 74 04 [--sp] = {rets, r4} ## spi0.c:192:0
|
||
|
11123c: c1 ff de be 02 00 r1 = 0x2bede <g_spi_boot_port : 2bede > ## boot_init.c:92:12
|
||
|
111242: 1a 40 r2 = b[r1+0x0] (u) ## boot_init.c:92:12
|
||
|
111244: c1 ff 10 50 1e 00 r1 = 0x1e5010 <__stub_doe+0xD2814 : 1e5010 >
|
||
|
11124a: 52 e8 0a 10 if ((r2 & 0x4) == 0) goto 0x14 <spi_cs_pu+0x28 : 111262 >
|
||
|
11124e: d0 ec 10 3c r3 = [r1+0xc0]
|
||
|
111252: 74 e1 08 30 r4 = r3 & 0xFFFFFFF7 ## spi0.c:198:26
|
||
|
111256: 33 23 r3 |= 0x8 ## spi0.c:196:26
|
||
|
111258: 30 e8 00 00 if (r0 == 0x0) { ## spi0.c:196:26
|
||
|
11125c: 43 16 r3 = r4
|
||
|
} ## spi0.c:195:13
|
||
|
11125e: d0 ec 11 3c [r1+0xc0] = r3 ## spi0.c:195:13
|
||
|
111262: 52 e8 08 18 if ((r2 & 0x8) == 0) goto 0x10 <spi_cs_pu+0x3C : 111276 >
|
||
|
111266: 12 60 r2 = [r1+0x0]
|
||
|
111268: 73 e1 00 2d r3 = r2 & 0xFFFFDFFF ## spi0.c:206:26
|
||
|
11126c: 32 2d r2 |= 0x2000 ## spi0.c:204:26
|
||
|
11126e: 30 e8 00 00 if (r0 == 0x0) { ## spi0.c:204:26
|
||
|
111272: 32 16 r2 = r3
|
||
|
} ## spi0.c:203:13
|
||
|
111274: 92 60 [r1+0x0] = r2 ## spi0.c:203:13
|
||
|
111276: 54 04 {pc, r4} = [sp++] ## spi0.c:210:1
|
||
|
|
||
|
|
||
|
udelay:
|
||
|
111278: c1 ff 00 04 1e 00 r1 = 0x1e0400 <__stub_doe+0xCDC04 : 1e0400 > ## timer.c:58:0
|
||
|
11127e: 40 ea 80 1c [r1+0x0] = 0x4000 ## timer.c:64:20
|
||
|
111282: 41 ea 00 10 [r1+0x4] = 0x0 ## timer.c:65:20
|
||
|
111286: e0 e1 14 00 r0 = r0 * 0x14 ## timer.c:66:40
|
||
|
11128a: 90 62 [r1+0x8] = r0 ## timer.c:66:20
|
||
|
11128c: 40 ea 0d 10 [r1+0x0] = 0xD ## timer.c:67:20
|
||
|
111290: 10 60 r0 = [r1+0x0] ## timer.c:68:24
|
||
|
111292: 50 e8 fd 79 if ((r0 & 0x8000) == 0) goto -0x6 <udelay+0x18 : 111290 > ## timer.c:68:5
|
||
|
111296: 40 ea 80 1c [r1+0x0] = 0x4000 ## timer.c:69:20
|
||
|
11129a: 80 00 rts ## timer.c:71:1
|
||
|
|
||
|
|
||
|
flash_poweron:
|
||
|
11129c: 10 04 [--sp] = rets ## norflash.c:386:0
|
||
|
11129e: 40 21 r0 = 0x1 ## norflash.c:389:5
|
||
|
1112a0: 61 8c call -0x68 <spi_cs_pu : 11123a > ## norflash.c:389:5
|
||
|
1112a2: c2 ff c0 50 1e 00 r2 = 0x1e50c0 <__stub_doe+0xD28C4 : 1e50c0 > ## norflash.c:389:5
|
||
|
1112a8: c5 ef 10 20 [r2+0x14] &= 0xFFFFFFEF ## norflash.c:392:19
|
||
|
1112ac: 04 ef 10 20 [r2+0x10] |= 0x10 ## norflash.c:393:19
|
||
|
1112b0: 02 ef 10 20 [r2+0x8] |= 0x10 ## norflash.c:394:19
|
||
|
1112b4: c7 ef 10 20 [r2+0x1c] &= 0xFFFFFFEF ## norflash.c:396:19
|
||
|
1112b8: c6 ef 10 20 [r2+0x18] &= 0xFFFFFFEF ## norflash.c:397:19
|
||
|
1112bc: 00 ef 10 20 [r2+0x0] |= 0x10 ## norflash.c:398:19
|
||
|
1112c0: c2 ef 10 20 [r2+0x8] &= 0xFFFFFFEF ## norflash.c:399:19
|
||
|
1112c4: 40 34 r0 = 0x14 ## norflash.c:401:5
|
||
|
1112c6: 61 98 call -0x50 <udelay : 111278 > ## norflash.c:401:5
|
||
|
1112c8: 07 ef 10 20 [r2+0x1c] |= 0x10 ## norflash.c:403:19
|
||
|
1112cc: 06 ef 10 20 [r2+0x18] |= 0x10 ## norflash.c:404:19
|
||
|
1112d0: 00 04 pc = [sp++] ## norflash.c:405:1
|
||
|
|
||
|
|
||
|
startup_init1:
|
||
|
1112d2: 76 04 [--sp] = {rets, r6-r4} ## boot_init.c:95:0
|
||
|
1112d4: c5 ff dc be 02 00 r5 = 0x2bedc <g_soft_flag : 2bedc > ## boot_init.c:95:0
|
||
|
1112da: 40 20 r0 = 0x0 ## boot_init.c:96:17
|
||
|
1112dc: d8 40 b[r5+0x0] = r0 ## boot_init.c:96:17
|
||
|
1112de: c6 ff dd be 02 00 r6 = 0x2bedd <g_soft_flag : 2bedc > ## boot_init.c:96:17
|
||
|
1112e4: e8 40 b[r6+0x0] = r0 ## boot_init.c:97:18
|
||
|
1112e6: c0 ff e0 be 02 00 r0 = 0x2bee0 <boot_arg_list : 2bee0 > ## clock.c:219:28
|
||
|
1112ec: 41 23 r1 = 0x3 ## clock.c:215:28
|
||
|
1112ee: c2 ff 00 2d 31 01 r2 = 0x1312d00 <__stub_doe+0x1200504 : 1312d00 > ## clock.c:219:28
|
||
|
1112f4: 23 d6 r3 = r2 # ## clock.c:219:28
|
||
|
1112f6: 89 41 b[r0+0x1] = r1 ## clock.c:215:28
|
||
|
1112f8: 50 ec 05 20 d[r0+0x4] = r3_r2 ## clock.c:219:28
|
||
|
1112fc: 48 30 r0 = 0x30 ## p33.c:105:15
|
||
|
1112fe: bf ea 0d ff call -0x1e6 <p33_rx_1byte : 11111c > ## p33.c:105:15
|
||
|
111302: 50 e8 fb 39 if ((r0 & 0x80) == 0) goto -0xa <startup_init1+0x2A : 1112fc > ## p33.c:106:13
|
||
|
111306: c0 ff c0 be 02 00 r0 = 0x2bec0 <exception_irq_hook : 2bec0 > ## boot_init.c:49:24
|
||
|
11130c: 40 ea 00 00 [r0+0x0] = 0x0 ## boot_init.c:49:24
|
||
|
111310: c1 ff 04 00 11 00 r1 = 0x110004 <exception_irq_handler : 110004 > ## boot_init.c:51:5
|
||
|
111316: 40 21 r0 = 0x1 ## boot_init.c:51:5
|
||
|
111318: 42 27 r2 = 0x7 ## boot_init.c:51:5
|
||
|
11131a: bf ea 23 ff call -0x1ba <HWI_Install : 111164 > ## boot_init.c:51:5
|
||
|
11131e: 64 e0 00 0b r0 = icfg ## boot_init.c:108:5
|
||
|
111322: 30 29 r0 |= 0x200 ## boot_init.c:109:9
|
||
|
111324: 64 e0 80 0b icfg = r0 ## boot_init.c:110:5
|
||
|
111328: bf ea 28 f8 call -0xfb0 <irq_init : 11037c > ## boot_init.c:112:5
|
||
|
11132c: bf ea 16 f8 call -0xfd4 <os_code_begin : 11035c > ## boot_init.c:113:5
|
||
|
111330: bf ea 1b f8 call -0xfca <local_irq_enable : 11036a > ## boot_init.c:114:5
|
||
|
111334: 48 32 r0 = 0x32 ## p33_api.h:114:11
|
||
|
111336: bf ea f1 fe call -0x21e <p33_rx_1byte : 11111c > ## p33_api.h:114:11
|
||
|
11133a: d8 40 b[r5+0x0] = r0 ## boot_init.c:116:17
|
||
|
11133c: 48 33 r0 = 0x33 ## p33_api.h:114:11
|
||
|
11133e: bf ea ed fe call -0x226 <p33_rx_1byte : 11111c > ## p33_api.h:114:11
|
||
|
111342: 04 16 r4 = r0 ## p33_api.h:114:11
|
||
|
111344: ec 40 b[r6+0x0] = r4 ## boot_init.c:117:18
|
||
|
111346: 48 31 r0 = 0x31 ## p33_api.h:114:11
|
||
|
111348: bf ea e8 fe call -0x230 <p33_rx_1byte : 11111c > ## p33_api.h:114:11
|
||
|
11134c: 0a 17 r2 = r0.b0 (s) ## p33_api.h:114:11
|
||
|
11134e: 40 2c r0 = 0xc ## boot_init.c:80:9
|
||
|
111350: 41 2c r1 = 0xc ## boot_init.c:80:9
|
||
|
111352: 32 ed 00 00 ifs (r2 >= 0x0) { ## boot_init.c:80:9
|
||
|
111356: 59 40 r1 = b[r5+0x0] (u)
|
||
|
} ## boot_init.c:66:16
|
||
|
111358: 31 ea 0c 00 if ((r1 & 0xC) != 0) { ## boot_init.c:66:16
|
||
|
11135c: 10 16 r0 = r1
|
||
|
} ## boot_init.c:86:9
|
||
|
11135e: c1 ff de be 02 00 r1 = 0x2bede <g_spi_boot_port : 2bede > ## boot_init.c:87:25
|
||
|
111364: 98 40 b[r1+0x0] = r0 ## boot_init.c:87:25
|
||
|
111366: 54 e8 10 02 if ((r4 & 0x1) != 0) goto 0x20 <startup_init1+0xB8 : 11138a > ## boot_init.c:87:25
|
||
|
11136a: 60 20 r0 = 0x80 ## wdt.c:4:5
|
||
|
11136c: 79 2f r1 = 0xef ## wdt.c:4:5
|
||
|
11136e: bf ea 1a ff call -0x1cc <p33_or_1byte : 1111a6 > ## wdt.c:4:5
|
||
|
111372: 60 20 r0 = 0x80 ## wdt.c:5:5
|
||
|
111374: 41 2c r1 = 0xc ## wdt.c:5:5
|
||
|
111376: bf ea a7 fe call -0x2b2 <p33_tx_1byte : 1110c8 > ## wdt.c:5:5
|
||
|
11137a: 60 20 r0 = 0x80 ## wdt.c:6:5
|
||
|
11137c: 71 3f r1 = 0xdf ## wdt.c:6:5
|
||
|
11137e: bf ea 37 ff call -0x192 <p33_and_1byte : 1111f0 > ## wdt.c:6:5
|
||
|
111382: 60 20 r0 = 0x80 ## wdt.c:7:5
|
||
|
111384: 41 30 r1 = 0x10 ## wdt.c:7:5
|
||
|
111386: bf ea 0e ff call -0x1e4 <p33_or_1byte : 1111a6 > ## wdt.c:7:5
|
||
|
11138a: c0 ff 00 51 1e 00 r0 = 0x1e5100 <__stub_doe+0xD2904 : 1e5100 >
|
||
|
111390: 34 ea 02 00 if ((r4 & 0x2) != 0) {
|
||
|
111394: c0 ef 10 00 [r0+0x0] &= 0xFFFFFFEF
|
||
|
} ## boot_init.c:130:25
|
||
|
111398: 34 ea 08 00 if ((r4 & 0x8) != 0) { ## boot_init.c:130:25
|
||
|
11139c: c0 ef 20 00 [r0+0x0] &= 0xFFFFFFDF
|
||
|
} ## boot_init.c:134:25
|
||
|
1113a0: 34 ea 04 00 if ((r4 & 0x4) != 0) { ## boot_init.c:134:25
|
||
|
1113a4: 00 ef 40 00 [r0+0x0] |= 0x40
|
||
|
} ## boot_init.c:138:25
|
||
|
1113a8: 34 ea 10 00 if ((r4 & 0x10) != 0) { ## boot_init.c:138:25
|
||
|
1113ac: 00 ef 80 00 [r0+0x0] |= 0x80
|
||
|
} ## boot_init.c:142:25
|
||
|
1113b0: 68 2f r0 = 0xaf ## boot_init.c:164:5
|
||
|
1113b2: 79 3d r1 = 0xfd ## boot_init.c:164:5
|
||
|
1113b4: bf ea 1c ff call -0x1c8 <p33_and_1byte : 1111f0 > ## boot_init.c:164:5
|
||
|
1113b8: bf ea 70 ff call -0x120 <flash_poweron : 11129c > ## boot_init.c:165:5
|
||
|
1113bc: c0 ff 00 41 1e 00 r0 = 0x1e4100 <__stub_doe+0xD1904 : 1e4100 >
|
||
|
1113c2: 42 ea 00 00 [r0+0x8] = 0x0 ## boot_flash.c:60:24
|
||
|
1113c6: c1 ff ff ff 00 00 r1 = 0xffff <text_size+0xD7FE : fffe > ## boot_flash.c:61:24
|
||
|
1113cc: 81 61 [r0+0x4] = r1 ## boot_flash.c:61:24
|
||
|
1113ce: 40 ea 80 00 [r0+0x0] = 0x80 ## boot_flash.c:62:24
|
||
|
1113d2: 56 04 {pc, r6-r4} = [sp++] ## boot_init.c:169:1
|
||
|
|
||
|
|
||
|
set_timer3_captrue_dp:
|
||
|
1113d4: c1 ff 00 51 1e 00 r1 = 0x1e5100 <__stub_doe+0xD2904 : 1e5100 > ## clock.c:286:0
|
||
|
1113da: 00 ef 00 1e [r1+0x0] |= 0x800 ## clock.c:287:21
|
||
|
1113de: c2 ff 00 18 1e 00 r2 = 0x1e1800 <__stub_doe+0xCF004 : 1e1800 > ## clock.c:288:18
|
||
|
1113e4: 00 ef 01 20 [r2+0x0] |= 0x1 ## clock.c:288:18
|
||
|
1113e8: 00 4c if (r0 == 0) goto 0x18 <set_timer3_captrue_dp+0x2E : 111402 > ## clock.c:288:18
|
||
|
1113ea: 00 ef c0 1e [r1+0x0] |= 0x600 ## clock.c:291:25
|
||
|
1113ee: c0 ef 03 10 [r1+0x0] &= 0xFFFFFFFC ## clock.c:292:25
|
||
|
1113f2: 00 ef 0c 10 [r1+0x0] |= 0xC ## clock.c:293:25
|
||
|
1113f6: c0 ef 30 10 [r1+0x0] &= 0xFFFFFFCF ## clock.c:294:25
|
||
|
1113fa: c0 ef c0 10 [r1+0x0] &= 0xFFFFFF3F ## clock.c:295:25
|
||
|
1113fe: 00 ef 40 10 [r1+0x0] |= 0x40 ## clock.c:296:25
|
||
|
111402: c8 ef 7c 19 [r1+0x20] &= 0xFFC0FFFF ## clock.c:299:20
|
||
|
111406: 08 ef 74 19 [r1+0x20] |= 0x3D0000 ## clock.c:300:20
|
||
|
11140a: 07 ef 00 14 [r1+0x1c] |= 0x80000000 ## clock.c:302:20
|
||
|
11140e: 20 e1 00 2f r0 = r2 + -0x1100 ## clock.c:304:20
|
||
|
111412: 40 ea 80 0c [r0+0x0] = 0x4000 ## clock.c:304:20
|
||
|
111416: 80 00 rts ## clock.c:305:1
|
||
|
|
||
|
|
||
|
clk_get:
|
||
|
111418: 76 04 [--sp] = {rets, r6-r4} ## clock.c:226:0
|
||
|
11141a: 04 16 r4 = r0 ## clock.c:226:0
|
||
|
11141c: c5 ff 40 10 11 00 r5 = 0x111040 <norflash_check_in.spi0_portb_config+0xC : 111040 > ## clock.c:226:0
|
||
|
111422: 51 16 r1 = r5 ## clock.c:227:9
|
||
|
111424: bf ea c5 f6 call -0x1276 <strcmp : 1101b2 > ## clock.c:227:9
|
||
|
111428: c6 ff e0 be 02 00 r6 = 0x2bee0 <boot_arg_list : 2bee0 > ## clock.c:227:9
|
||
|
11142e: 00 50 if (r0 == 0) goto 0x20 <clk_get+0x38 : 111450 > ## clock.c:227:9
|
||
|
111430: 59 84 r1 = r5 + 0x4 ## clock.c:229:16
|
||
|
111432: 40 16 r0 = r4 ## clock.c:229:16
|
||
|
111434: bf ea bd f6 call -0x1286 <strcmp : 1101b2 > ## clock.c:229:16
|
||
|
111438: 00 4d if (r0 == 0) goto 0x1a <clk_get+0x3C : 111454 > ## clock.c:229:16
|
||
|
11143a: 59 8d r1 = r5 + 0xd ## clock.c:231:16
|
||
|
11143c: 40 16 r0 = r4 ## clock.c:231:16
|
||
|
11143e: bf ea b8 f6 call -0x1290 <strcmp : 1101b2 > ## clock.c:231:16
|
||
|
111442: b0 e8 00 10 if (r0 != 0x0) { ## clock.c:231:16
|
||
|
111446: 60 62 r0 = [r6+0x8]
|
||
|
} else { ## clock.c:237:26
|
||
|
111448: c0 ff 00 36 6e 01 r0 = 0x16e3600
|
||
|
} <__stub_doe+0x15D0E04 : 16e3600 > ## clock.c:231:16
|
||
|
11144e: 56 04 {pc, r6-r4} = [sp++] ## clock.c:231:16
|
||
|
111450: 68 88 r0 = r6 + 0x8
|
||
|
111452: 04 81 goto 0x2 <clk_get+0x3E : 111456 >
|
||
|
111454: 68 84 r0 = r6 + 0x4
|
||
|
111456: 00 60 r0 = [r0+0x0]
|
||
|
111458: 56 04 {pc, r6-r4} = [sp++] ## clock.c:238:1
|
||
|
|
||
|
|
||
|
set_timer3_captrue_dp_disable:
|
||
|
11145a: c1 ff 00 51 1e 00 r1 = 0x1e5100 <__stub_doe+0xD2904 : 1e5100 > ## clock.c:307:0
|
||
|
111460: b0 e8 00 00 if (r0 != 0x0) { ## clock.c:307:0
|
||
|
111464: c0 ef 40 10 [r1+0x0] &= 0xFFFFFFBF
|
||
|
} ## clock.c:309:25
|
||
|
111468: c0 ff 00 07 1e 00 r0 = 0x1e0700 <__stub_doe+0xCDF04 : 1e0700 > ## clock.c:312:20
|
||
|
11146e: 40 ea 80 0c [r0+0x0] = 0x4000 ## clock.c:312:20
|
||
|
111472: c7 ef 00 14 [r1+0x1c] &= 0x7FFFFFFF ## clock.c:313:20
|
||
|
111476: 80 00 rts ## clock.c:314:1
|
||
|
|
||
|
|
||
|
wdt_clr:
|
||
|
111478: 60 20 r0 = 0x80 ## wdt.c:11:0
|
||
|
11147a: 51 20 r1 = 0x40 ## wdt.c:12:5
|
||
|
11147c: 47 94 goto -0x2d8 <p33_or_1byte : 1111a6 > ## wdt.c:12:5
|
||
|
|
||
|
|
||
|
uart_set_dma_dir:
|
||
|
11147e: 00 49 if (r0 == 0) goto 0x12 <uart_set_dma_dir+0x14 : 111492 > ## uart_upgrade.c:23:0
|
||
|
111480: 10 2f r0 = -0x11 ## uart_upgrade.c:23:0
|
||
|
111482: c1 ff 04 20 1e 00 r1 = 0x1e2004 <__stub_doe+0xCF808 : 1e2004 > ## uart_upgrade.c:23:0
|
||
|
111488: 4a 20 r2 = 0x20 ## uart_upgrade.c:23:0
|
||
|
11148a: c3 ff 48 50 1e 00 r3 = 0x1e5048 <__stub_doe+0xD284C : 1e5048 > ## uart_upgrade.c:23:0
|
||
|
111490: 04 89 goto 0x12 <uart_set_dma_dir+0x26 : 1114a4 > ## uart_upgrade.c:23:0
|
||
|
111492: 40 e0 df ff r0 = -0x21 ## uart_upgrade.c:23:0
|
||
|
111496: c1 ff 48 50 1e 00 r1 = 0x1e5048 <__stub_doe+0xD284C : 1e5048 > ## uart_upgrade.c:23:0
|
||
|
11149c: 42 30 r2 = 0x10 ## uart_upgrade.c:23:0
|
||
|
11149e: c3 ff 04 20 1e 00 r3 = 0x1e2004 <__stub_doe+0xCF808 : 1e2004 > ## uart_upgrade.c:23:0
|
||
|
1114a4: 64 e8 00 32 [r3+0x0] |= r2 ## uart_upgrade.c:23:0
|
||
|
1114a8: 64 e8 02 10 [r1+0x0] &= r0 ## uart_upgrade.c:23:0
|
||
|
1114ac: 80 00 rts ## uart_upgrade.c:36:1
|
||
|
|
||
|
|
||
|
uart_rx_data:
|
||
|
1114ae: 75 04 [--sp] = {rets, r5, r4} ## uart_upgrade.c:56:0
|
||
|
1114b0: 14 16 r4 = r1 ## uart_upgrade.c:56:0
|
||
|
1114b2: 05 16 r5 = r0 ## uart_upgrade.c:56:0
|
||
|
1114b4: 71 81 call -0x3e <wdt_clr : 111478 > ## uart_upgrade.c:57:5
|
||
|
1114b6: 40 21 r0 = 0x1 ## uart_upgrade.c:58:5
|
||
|
1114b8: 71 82 call -0x3c <uart_set_dma_dir : 11147e > ## uart_upgrade.c:58:5
|
||
|
1114ba: 60 e0 f1 09 r0 = 0x1E2000 ## uart_upgrade.c:58:5
|
||
|
1114be: 51 dd r1 = r5 + r4 # ## uart_upgrade.c:61:33
|
||
|
1114c0: 85 67 [r0+0x1c] = r5 ## uart_upgrade.c:60:18
|
||
|
1114c2: c1 23 r1 += 0x3 ## uart_upgrade.c:61:40
|
||
|
1114c4: 71 e1 03 10 r1 = r1 & 0xFFFFFFFC ## uart_upgrade.c:61:49
|
||
|
1114c8: 81 68 [r0+0x20] = r1 ## uart_upgrade.c:61:18
|
||
|
1114ca: 84 69 [r0+0x24] = r4 ## uart_upgrade.c:63:17
|
||
|
1114cc: 20 00 csync ## uart_upgrade.c:64:5
|
||
|
1114ce: 01 60 r1 = [r0+0x0] ## uart_upgrade.c:68:19
|
||
|
1114d0: 51 e8 fd 71 if ((r1 & 0x4000) == 0) goto -0x6 <uart_rx_data+0x20 : 1114ce > ## uart_upgrade.c:68:13
|
||
|
1114d4: 00 ef a0 0d [r0+0x0] |= 0x1400 ## uart_upgrade.c:72:16
|
||
|
1114d8: 55 04 {pc, r5, r4} = [sp++] ## uart_upgrade.c:74:1
|
||
|
|
||
|
|
||
|
chip_crc16:
|
||
|
1114da: c2 ff 00 35 1e 00 r2 = 0x1e3500 <__stub_doe+0xD0D04 : 1e3500 > ## crc.c:3:0
|
||
|
1114e0: 41 ea 00 20 [r2+0x4] = 0x0 ## crc.c:5:17
|
||
|
1114e4: 04 84 goto 0x8 <chip_crc16+0x14 : 1114ee > ## crc.c:5:17
|
||
|
1114e6: 0b 40 r3 = b[r0+0x0] (u) ## crc.c:8:24
|
||
|
1114e8: a3 60 [r2+0x0] = r3 ## crc.c:8:22
|
||
|
1114ea: c0 21 r0 += 0x1 ## crc.c:8:26
|
||
|
1114ec: f9 3f r1 += -0x1 ## crc.c:7:15
|
||
|
1114ee: f1 5b if (r1 != 0) goto -0xa <chip_crc16+0xC : 1114e6 >
|
||
|
1114f0: 20 00 csync ## crc.c:10:5
|
||
|
1114f2: 20 61 r0 = [r2+0x4] ## crc.c:12:20
|
||
|
1114f4: 80 17 r0 = r0.l (u) ## crc.c:12:5
|
||
|
1114f6: 80 00 rts ## crc.c:12:5
|
||
|
|
||
|
|
||
|
uart_cmd_verify:
|
||
|
1114f8: 74 04 [--sp] = {rets, r4} ## uart_upgrade.c:109:0
|
||
|
1114fa: c0 ff c0 bd 02 00 r0 = 0x2bdc0 <ut_cmd : 2bdc0 > ## uart_upgrade.c:109:0
|
||
|
111500: 50 ee 00 11 r1 = b[r0+0x10] (u) ## uart_upgrade.c:110:18
|
||
|
111504: 0c 4f r4 = b[r0+0xf] (u) ## uart_upgrade.c:110:18
|
||
|
111506: a4 e1 20 14 r4 <= insert(r1, p:0x8, l:0x8) ## uart_upgrade.c:110:18
|
||
|
11150a: 34 e8 00 40 if (r4 == 0x0) { ## uart_upgrade.c:110:18
|
||
|
11150e: 40 20 r0 = 0x0 ## uart_upgrade.c:115:1
|
||
|
111510: 54 04 {pc, r4} = [sp++]
|
||
|
} ## uart_upgrade.c:115:1
|
||
|
111512: c0 25 r0 += 0x5 ## uart_upgrade.c:111:30
|
||
|
111514: 41 2a r1 = 0xa ## uart_upgrade.c:111:30
|
||
|
111516: 71 81 call -0x3e <chip_crc16 : 1114da > ## uart_upgrade.c:111:30
|
||
|
111518: 01 16 r1 = r0 ## uart_upgrade.c:111:30
|
||
|
11151a: 40 21 r0 = 0x1 ## uart_upgrade.c:111:27
|
||
|
11151c: 94 e8 00 01 if (r4 != r1) { ## uart_upgrade.c:111:27
|
||
|
111520: 40 20 r0 = 0x0
|
||
|
} ## uart_upgrade.c:111:27
|
||
|
111522: 54 04 {pc, r4} = [sp++] ## uart_upgrade.c:110:9
|
||
|
|
||
|
|
||
|
mdelay:
|
||
|
111524: 10 04 [--sp] = rets ## timer.c:74:0
|
||
|
111526: 02 16 r2 = r0 ## timer.c:74:0
|
||
|
111528: 04 85 goto 0xa <mdelay+0x10 : 111534 > ## timer.c:74:0
|
||
|
11152a: 40 e0 e8 03 r0 = 0x3e8 ## timer.c:76:9
|
||
|
11152e: bf ea a3 fe call -0x2ba <udelay : 111278 > ## timer.c:76:9
|
||
|
111532: fa 3f r2 += -0x1 ## timer.c:75:5
|
||
|
111534: f2 5a if (r2 != 0) goto -0xc <mdelay+0x6 : 11152a > ## timer.c:75:5
|
||
|
111536: 00 04 pc = [sp++] ## timer.c:78:1
|
||
|
|
||
|
|
||
|
CrcDecode:
|
||
|
111538: 77 04 [--sp] = {rets, r7-r4} ## crc.c:28:0
|
||
|
11153a: c3 ff ff ff 00 00 r3 = 0xffff <text_size+0xD7FE : fffe > ## crc.c:36:17
|
||
|
111540: c2 ff 00 35 1e 00 r2 = 0x1e3500 <__stub_doe+0xD0D04 : 1e3500 >
|
||
|
111546: a3 61 [r2+0x4] = r3 ## crc.c:36:17
|
||
|
111548: 7b 3f r3 = 0xff ## crc.c:38:18
|
||
|
11154a: a3 60 [r2+0x0] = r3 ## crc.c:38:18
|
||
|
11154c: a3 60 [r2+0x0] = r3 ## crc.c:39:18
|
||
|
11154e: 44 20 r4 = 0x0 ## crc.c:39:18
|
||
|
111550: c3 ff 9f 10 11 00 r3 = 0x11109f <nor_flash_boot_table+0x2E : 11109e > ## crc.c:39:18
|
||
|
111556: 04 90 goto 0x20 <CrcDecode+0x40 : 111578 > ## crc.c:39:18
|
||
|
111558: 46 17 r6 = r4.b0 (u) ## crc.c:43:24
|
||
|
11155a: d8 ee 60 53 r5 = b[r6+r3] (u) ## crc.c:43:24
|
||
|
11155e: a5 60 [r2+0x0] = r5 ## crc.c:43:22
|
||
|
111560: 20 00 csync ## crc.c:49:9
|
||
|
111562: 0d 40 r5 = b[r0+0x0] (u) ## crc.c:50:24
|
||
|
111564: 27 61 r7 = [r2+0x4] ## crc.c:50:51
|
||
|
111566: 7d 19 r5 ^= r7 ## crc.c:50:37
|
||
|
111568: 8d 40 b[r0+0x0] = r5 ## crc.c:50:22
|
||
|
11156a: 4d 81 r5 = r4 + 0x1 ## crc.c:45:14
|
||
|
11156c: 44 20 r4 = 0x0 ## crc.c:45:13
|
||
|
11156e: b6 ec 0e 00 if (r6 <= 0xe) { ## crc.c:45:13
|
||
|
111572: 54 16 r4 = r5
|
||
|
} ## crc.c:45:13
|
||
|
111574: c0 21 r0 += 0x1 ## crc.c:52:27
|
||
|
111576: f9 3f r1 += -0x1 ## crc.c:42:15
|
||
|
111578: 95 17 r5 = r1.l (u) ## crc.c:42:5
|
||
|
11157a: f5 4e if (r5 != 0) goto -0x24 <CrcDecode+0x20 : 111558 > ## crc.c:42:5
|
||
|
11157c: 57 04 {pc, r7-r4} = [sp++] ## crc.c:56:1
|
||
|
|
||
|
|
||
|
uart_recv_loader:
|
||
|
11157e: e2 9e sp += -0x8 ## uart_upgrade.c:138:0
|
||
|
111580: 40 25 r0 = 0x5 ## uart_upgrade.c:141:5
|
||
|
111582: 44 25 r4 = 0x5 ## uart_upgrade.c:141:5
|
||
|
111584: 61 8f call -0x62 <mdelay : 111524 > ## uart_upgrade.c:141:5
|
||
|
111586: c6 ff 40 10 11 00 r6 = 0x111040 <norflash_check_in.spi0_portb_config+0xC : 111040 > ## uart_upgrade.c:141:5
|
||
|
11158c: 68 4c r0 = b[r6+0xc] (u) ## uart_upgrade.c:52:5
|
||
|
11158e: 61 62 r1 = [r6+0x8] ## uart_upgrade.c:52:5
|
||
|
111590: de e9 04 00 b[sp+4] = r0 ## uart_upgrade.c:52:5
|
||
|
111594: 81 20 [sp] = r1 ## uart_upgrade.c:52:5
|
||
|
111596: 40 20 r0 = 0x0 ## uart_upgrade.c:40:5
|
||
|
111598: bf ea 71 ff call -0x11e <uart_set_dma_dir : 11147e > ## uart_upgrade.c:40:5
|
||
|
11159c: 88 80 r0 = sp + 0 ## uart_upgrade.c:40:5
|
||
|
11159e: 60 e0 f1 59 r5 = 0x1E2000 ## uart_upgrade.c:40:5
|
||
|
1115a2: d0 65 [r5+0x14] = r0 ## uart_upgrade.c:42:17
|
||
|
1115a4: d4 66 [r5+0x18] = r4 ## uart_upgrade.c:43:17
|
||
|
1115a6: 20 00 csync ## uart_upgrade.c:44:5
|
||
|
1115a8: 50 60 r0 = [r5+0x0] ## uart_upgrade.c:45:19
|
||
|
1115aa: 50 e8 fd 79 if ((r0 & 0x8000) == 0) goto -0x6 <uart_recv_loader+0x2A : 1115a8 > ## uart_upgrade.c:45:5
|
||
|
1115ae: 00 ef 00 5d [r5+0x0] |= 0x2000 ## uart_upgrade.c:47:16
|
||
|
1115b2: 40 22 r0 = 0x2 ## uart_upgrade.c:144:5
|
||
|
1115b4: 51 97 call -0x92 <mdelay : 111524 > ## uart_upgrade.c:144:5
|
||
|
1115b6: c4 ff c0 bd 02 00 r4 = 0x2bdc0 <ut_cmd : 2bdc0 > ## uart_upgrade.c:144:5
|
||
|
1115bc: 50 ee 42 01 r0 = b[r4+0x12] (u) ## uart_upgrade.c:146:16
|
||
|
1115c0: 30 e8 00 40 if (r0 == 0x0) { ## uart_upgrade.c:146:16
|
||
|
1115c4: 40 2a r0 = 0xa ## uart_upgrade.c:146:16
|
||
|
1115c6: 52 ee 42 01 b[r4+0x12] = r0
|
||
|
} ## uart_upgrade.c:147:21
|
||
|
1115ca: 41 e0 10 27 r1 = 0x2710 ## uart_upgrade.c:150:43
|
||
|
1115ce: f0 e1 00 71 r7 = r0 * r1 ## uart_upgrade.c:150:43
|
||
|
1115d2: 68 8d r0 = r6 + 0xd ## uart_upgrade.c:150:19
|
||
|
1115d4: bf ea 20 ff call -0x1c0 <clk_get : 111418 > ## uart_upgrade.c:150:19
|
||
|
1115d8: f4 e1 00 07 r0 = r0 / r7 (u) ## uart_upgrade.c:150:28
|
||
|
1115dc: 80 a2 r0 = r0 >> 0x2 ## uart_upgrade.c:150:53
|
||
|
1115de: f8 3f r0 += -0x1 ## uart_upgrade.c:150:57
|
||
|
1115e0: d0 62 [r5+0x8] = r0 ## uart_upgrade.c:150:16
|
||
|
1115e2: bf ea 49 ff call -0x16e <wdt_clr : 111478 > ## uart_upgrade.c:151:5
|
||
|
1115e6: 48 48 r0 = b[r4+0x8] (u) ## uart_upgrade.c:152:25
|
||
|
1115e8: 4a 47 r2 = b[r4+0x7] (u) ## uart_upgrade.c:152:25
|
||
|
1115ea: a2 f1 20 04 r2 <= insert(r0, p:0x8, l:0x8) # ## uart_upgrade.c:152:25
|
||
|
1115ee: 48 45 r0 = b[r4+0x5] (u) ## uart_upgrade.c:152:25
|
||
|
1115f0: 50 ee 46 80 r8 = b[r4+0x6] (u) ## uart_upgrade.c:152:25
|
||
|
1115f4: a0 f1 20 84 r0 <= insert(r8, p:0x8, l:0x8) # ## uart_upgrade.c:152:25
|
||
|
1115f8: 4e 4c r6 = b[r4+0xc] (u) ## uart_upgrade.c:152:38
|
||
|
1115fa: a0 f1 40 28 r0 <= insert(r2, p:0x10, l:0x10) # ## uart_upgrade.c:152:25
|
||
|
1115fe: 4f 4b r7 = b[r4+0xb] (u) ## uart_upgrade.c:152:38
|
||
|
111600: a7 f1 20 64 r7 <= insert(r6, p:0x8, l:0x8) # ## uart_upgrade.c:152:38
|
||
|
111604: 4b 4a r3 = b[r4+0xa] (u) ## uart_upgrade.c:152:38
|
||
|
111606: 49 49 r1 = b[r4+0x9] (u) ## uart_upgrade.c:152:38
|
||
|
111608: a1 e1 20 34 r1 <= insert(r3, p:0x8, l:0x8) ## uart_upgrade.c:152:38
|
||
|
11160c: a1 e1 40 78 r1 <= insert(r7, p:0x10, l:0x10) ## uart_upgrade.c:152:38
|
||
|
111610: bf ea 4d ff call -0x166 <uart_rx_data : 1114ae > ## uart_upgrade.c:152:5
|
||
|
111614: 40 ea 00 50 [r5+0x0] = 0x0 ## uart_upgrade.c:154:16
|
||
|
111618: 49 48 r1 = b[r4+0x8] (u) ## uart_upgrade.c:156:57
|
||
|
11161a: 4a 47 r2 = b[r4+0x7] (u) ## uart_upgrade.c:156:57
|
||
|
11161c: a2 f1 20 14 r2 <= insert(r1, p:0x8, l:0x8) # ## uart_upgrade.c:156:57
|
||
|
111620: 4b 46 r3 = b[r4+0x6] (u) ## uart_upgrade.c:156:57
|
||
|
111622: 48 45 r0 = b[r4+0x5] (u) ## uart_upgrade.c:156:57
|
||
|
111624: a0 f1 20 34 r0 <= insert(r3, p:0x8, l:0x8) # ## uart_upgrade.c:156:57
|
||
|
111628: 4b 4b r3 = b[r4+0xb] (u) ## uart_upgrade.c:156:70
|
||
|
11162a: a0 f1 40 28 r0 <= insert(r2, p:0x10, l:0x10) # ## uart_upgrade.c:156:57
|
||
|
11162e: 4a 4c r2 = b[r4+0xc] (u) ## uart_upgrade.c:156:70
|
||
|
111630: a3 f1 20 24 r3 <= insert(r2, p:0x8, l:0x8) # ## uart_upgrade.c:156:70
|
||
|
111634: 4d 4a r5 = b[r4+0xa] (u) ## uart_upgrade.c:156:70
|
||
|
111636: 49 49 r1 = b[r4+0x9] (u) ## uart_upgrade.c:156:70
|
||
|
111638: a1 f1 20 54 r1 <= insert(r5, p:0x8, l:0x8) # ## uart_upgrade.c:156:70
|
||
|
11163c: 4e 4e r6 = b[r4+0xe] (u) ## uart_upgrade.c:156:16
|
||
|
11163e: a1 f1 40 38 r1 <= insert(r3, p:0x10, l:0x10) # ## uart_upgrade.c:156:70
|
||
|
111642: 4f 4d r7 = b[r4+0xd] (u) ## uart_upgrade.c:156:16
|
||
|
111644: bf ea 49 ff call -0x16e <chip_crc16 : 1114da > ## uart_upgrade.c:156:31
|
||
|
111648: a7 e1 20 64 r7 <= insert(r6, p:0x8, l:0x8) ## uart_upgrade.c:156:16
|
||
|
11164c: 80 e8 20 70 if (r7 != r0) goto 0x40 <uart_recv_loader+0x112 : 111690 > ## uart_upgrade.c:156:16
|
||
|
111650: 50 ee 41 01 r0 = b[r4+0x11] (u) ## uart_upgrade.c:168:16
|
||
|
111654: 50 e8 10 08 if ((r0 & 0x2) == 0) goto 0x20 <uart_recv_loader+0xFA : 111678 > ## uart_upgrade.c:168:16
|
||
|
111658: 4a 48 r2 = b[r4+0x8] (u) ## uart_upgrade.c:169:34
|
||
|
11165a: 4b 47 r3 = b[r4+0x7] (u) ## uart_upgrade.c:169:34
|
||
|
11165c: a3 f1 20 24 r3 <= insert(r2, p:0x8, l:0x8) # ## uart_upgrade.c:169:34
|
||
|
111660: 4d 46 r5 = b[r4+0x6] (u) ## uart_upgrade.c:169:34
|
||
|
111662: 48 45 r0 = b[r4+0x5] (u) ## uart_upgrade.c:169:34
|
||
|
111664: a0 f1 20 54 r0 <= insert(r5, p:0x8, l:0x8) # ## uart_upgrade.c:169:34
|
||
|
111668: 4e 4a r6 = b[r4+0xa] (u) ## uart_upgrade.c:169:9
|
||
|
11166a: a0 f1 40 38 r0 <= insert(r3, p:0x10, l:0x10) # ## uart_upgrade.c:169:34
|
||
|
11166e: 49 49 r1 = b[r4+0x9] (u) ## uart_upgrade.c:169:9
|
||
|
111670: a1 e1 20 64 r1 <= insert(r6, p:0x8, l:0x8) ## uart_upgrade.c:169:9
|
||
|
111674: bf ea 60 ff call -0x140 <CrcDecode : 111538 > ## uart_upgrade.c:169:9
|
||
|
111678: 48 48 r0 = b[r4+0x8] (u) ## uart_upgrade.c:172:30
|
||
|
11167a: 49 47 r1 = b[r4+0x7] (u) ## uart_upgrade.c:172:30
|
||
|
11167c: a1 f1 20 04 r1 <= insert(r0, p:0x8, l:0x8) # ## uart_upgrade.c:172:30
|
||
|
111680: 4a 46 r2 = b[r4+0x6] (u) ## uart_upgrade.c:172:30
|
||
|
111682: 40 d6 r0 = r4 # ## uart_upgrade.c:172:5
|
||
|
111684: 4b 45 r3 = b[r4+0x5] (u) ## uart_upgrade.c:172:30
|
||
|
111686: a3 e1 20 24 r3 <= insert(r2, p:0x8, l:0x8) ## uart_upgrade.c:172:30
|
||
|
11168a: a3 e1 40 18 r3 <= insert(r1, p:0x10, l:0x10) ## uart_upgrade.c:172:30
|
||
|
11168e: c3 00 call r3 ## uart_upgrade.c:172:5
|
||
|
111690: bf ea 25 f6 call -0x13b6 <chip_reset : 1102de > ## uart_upgrade.c:175:5
|
||
|
|
||
|
|
||
|
uart_upgrade_init:
|
||
|
111694: 76 04 [--sp] = {rets, r6-r4} ## uart_upgrade.c:202:0
|
||
|
111696: c1 ff 18 51 1e 00 r1 = 0x1e5118 <__stub_doe+0xD291C : 1e5118 > ## uart_upgrade.c:202:0
|
||
|
11169c: c0 ef c0 10 [r1+0x0] &= 0xFFFFFF3F ## uart_upgrade.c:205:20
|
||
|
1116a0: 00 ef 80 10 [r1+0x0] |= 0x80 ## uart_upgrade.c:206:20
|
||
|
1116a4: 31 e1 30 1f r1 = r1 + -0xd0 ## uart_upgrade.c:206:20
|
||
|
1116a8: 05 ef 20 10 [r1+0x14] |= 0x20 ## uart_upgrade.c:208:18
|
||
|
1116ac: 02 ef 20 10 [r1+0x8] |= 0x20 ## uart_upgrade.c:209:18
|
||
|
1116b0: c3 ef 20 10 [r1+0xc] &= 0xFFFFFFDF ## uart_upgrade.c:210:18
|
||
|
1116b4: 00 ef 20 10 [r1+0x0] |= 0x20 ## uart_upgrade.c:211:19
|
||
|
1116b8: c1 ff 10 00 1e 00 r1 = 0x1e0010 <__stub_doe+0xCD814 : 1e0010 > ## uart_upgrade.c:211:19
|
||
|
1116be: c0 ef 40 1e [r1+0x0] &= 0xFFFFF3FF ## uart_upgrade.c:213:24
|
||
|
1116c2: 00 ef 80 1e [r1+0x0] |= 0x400 ## uart_upgrade.c:214:24
|
||
|
1116c6: 60 e0 f1 69 r6 = 0x1E2000 ## uart_upgrade.c:214:24
|
||
|
1116ca: 40 ea 50 6d [r6+0x0] = 0x3400 ## uart_upgrade.c:216:16
|
||
|
1116ce: 05 16 r5 = r0 ## uart_upgrade.c:216:16
|
||
|
1116d0: c4 ff 4d 10 11 00 r4 = 0x11104d <ack_cmd+0x4 : 11104c >
|
||
|
1116d6: 40 16 r0 = r4 ## uart_upgrade.c:218:19
|
||
|
1116d8: bf ea 9e fe call -0x2c4 <clk_get : 111418 > ## uart_upgrade.c:218:19
|
||
|
1116dc: 60 e0 16 1c r1 = 0x9600 ## uart_upgrade.c:218:36
|
||
|
1116e0: f4 e1 00 01 r0 = r0 / r1 (u) ## uart_upgrade.c:218:36
|
||
|
1116e4: f8 3f r0 += -0x1 ## uart_upgrade.c:218:40
|
||
|
1116e6: e0 62 [r6+0x8] = r0 ## uart_upgrade.c:218:16
|
||
|
1116e8: 40 ea 41 60 [r6+0x0] = 0x41 ## uart_upgrade.c:220:16
|
||
|
1116ec: 00 ef 50 6d [r6+0x0] |= 0x3400 ## uart_upgrade.c:221:16
|
||
|
1116f0: 15 41 if (r5 == 0) goto 0x42 <uart_upgrade_init+0xA0 : 111734 > ## uart_upgrade.c:221:16
|
||
|
1116f2: c1 ff e8 24 11 00 r1 = 0x1124e8 <uart_isr : 1124e8 > ## uart_upgrade.c:225:9
|
||
|
1116f8: 40 32 r0 = 0x12 ## uart_upgrade.c:225:9
|
||
|
1116fa: 42 23 r2 = 0x3 ## uart_upgrade.c:225:9
|
||
|
1116fc: bf ea 32 fd call -0x59c <HWI_Install : 111164 > ## uart_upgrade.c:225:9
|
||
|
111700: 40 16 r0 = r4 ## uart_upgrade.c:227:28
|
||
|
111702: bf ea 89 fe call -0x2ee <clk_get : 111418 > ## uart_upgrade.c:227:28
|
||
|
111706: 41 e0 e8 03 r1 = 0x3e8 ## uart_upgrade.c:227:37
|
||
|
11170a: f4 e1 00 01 r0 = r0 / r1 (u) ## uart_upgrade.c:227:37
|
||
|
11170e: e0 e1 05 00 r0 = r0 * 0x5 ## uart_upgrade.c:227:25
|
||
|
111712: e0 64 [r6+0x10] = r0 ## uart_upgrade.c:227:21
|
||
|
111714: 40 21 r0 = 0x1 ## uart_upgrade.c:229:9
|
||
|
111716: bf ea b2 fe call -0x29c <uart_set_dma_dir : 11147e > ## uart_upgrade.c:229:9
|
||
|
11171a: 00 ef 20 60 [r6+0x0] |= 0x20 ## uart_upgrade.c:231:20
|
||
|
11171e: c0 ff 00 be 02 00 r0 = 0x2be00 <uart_dma_buffer : 2be00 > ## uart_upgrade.c:105:18
|
||
|
111724: e0 67 [r6+0x1c] = r0 ## uart_upgrade.c:104:18
|
||
|
111726: d0 23 r0 += 0x43 ## uart_upgrade.c:105:18
|
||
|
111728: 70 e1 03 00 r0 = r0 & 0xFFFFFFFC ## uart_upgrade.c:105:18
|
||
|
11172c: e0 68 [r6+0x20] = r0 ## uart_upgrade.c:105:18
|
||
|
11172e: 49 ea 40 60 [r6+0x24] = 0x40 ## uart_upgrade.c:106:17
|
||
|
111732: 56 04 {pc, r6-r4} = [sp++] ## uart_upgrade.c:255:1
|
||
|
111734: c0 ff c0 bd 02 00 r0 = 0x2bdc0 <ut_cmd : 2bdc0 > ## uart_upgrade.c:241:5
|
||
|
11173a: 41 35 r1 = 0x15 ## uart_upgrade.c:241:5
|
||
|
11173c: bf ea b7 fe call -0x292 <uart_rx_data : 1114ae > ## uart_upgrade.c:241:5
|
||
|
111740: bf ea da fe call -0x24c <uart_cmd_verify : 1114f8 > ## uart_upgrade.c:243:9
|
||
|
111744: 80 42 if (r0 != 0) goto 0x4 <uart_upgrade_init+0xB6 : 11174a > ## uart_upgrade.c:243:9
|
||
|
111746: bf ea ca f5 call -0x146c <chip_reset : 1102de > ## uart_upgrade.c:254:5
|
||
|
11174a: bf ea 18 ff call -0x1d0 <uart_recv_loader : 11157e > ## uart_upgrade.c:252:5
|
||
|
|
||
|
|
||
|
check_usb_sof:
|
||
|
11174e: 7c 04 [--sp] = {rets, r12-r4} ## clock.c:317:0
|
||
|
111750: c6 ff 40 13 01 00 r6 = 0x11340 <var_bss_begin : 11340 > ## clock.c:317:0
|
||
|
111756: 47 20 r7 = 0x0 ## clock.c:317:0
|
||
|
111758: c8 ff 68 23 11 00 r8 = 0x112368 <tmr3_isr : 112368 > ## clock.c:317:0
|
||
|
11175e: c4 ff 00 07 1e 00 r4 = 0x1e0700 <__stub_doe+0xCDF04 : 1e0700 > ## clock.c:317:0
|
||
|
111764: c9 ff 40 10 11 00 r9 = 0x111040 <norflash_check_in.spi0_portb_config+0xC : 111040 > ## clock.c:317:0
|
||
|
11176a: 35 e1 00 4f r5 = r4 + -0x100 ## clock.c:317:0
|
||
|
11176e: 4a e0 01 40 r10 = 0x4001 ## clock.c:317:0
|
||
|
111772: eb e0 94 4c r11 = r4 + 0x4A00 ## clock.c:317:0
|
||
|
111776: 0c 16 r12 = r0 ## clock.c:317:0
|
||
|
111778: bf ea 7e fe call -0x304 <wdt_clr : 111478 > ## clock.c:320:9
|
||
|
11177c: e7 61 [r6+0x4] = r7 ## clock.c:324:25
|
||
|
11177e: 81 d6 r1 = r8 # ## clock.c:336:9
|
||
|
111780: e7 63 [r6+0xc] = r7 ## clock.c:325:22
|
||
|
111782: ef 60 h[r6+0x0] = r7 ## clock.c:326:18
|
||
|
111784: ef 61 h[r6+0x2] = r7 ## clock.c:327:18
|
||
|
111786: e7 62 [r6+0x8] = r7 ## clock.c:328:19
|
||
|
111788: 40 27 r0 = 0x7 ## clock.c:336:9
|
||
|
11178a: 42 20 r2 = 0x0 ## clock.c:336:9
|
||
|
11178c: bf ea ea fc call -0x62c <HWI_Install : 111164 > ## clock.c:336:9
|
||
|
111790: 40 21 r0 = 0x1 ## clock.c:337:9
|
||
|
111792: bf ea 1f fe call -0x3c2 <set_timer3_captrue_dp : 1113d4 > ## clock.c:337:9
|
||
|
111796: c7 61 [r4+0x4] = r7 ## clock.c:339:24
|
||
|
111798: c7 62 [r4+0x8] = r7 ## clock.c:340:24
|
||
|
11179a: 40 ea 1a 40 [r4+0x0] = 0x1A ## clock.c:341:24
|
||
|
11179e: 90 16 r0 = r9 ## clock.c:342:26
|
||
|
1117a0: bf ea 3a fe call -0x38c <clk_get : 111418 > ## clock.c:342:26
|
||
|
1117a4: 41 e0 e8 03 r1 = 0x3e8 ## clock.c:342:26
|
||
|
1117a8: f4 e1 00 01 r0 = r0 / r1 (u) ## clock.c:342:41
|
||
|
1117ac: d0 62 [r5+0x8] = r0 ## clock.c:342:24
|
||
|
1117ae: d7 61 [r5+0x4] = r7 ## clock.c:343:24
|
||
|
1117b0: d0 ec 51 a0 [r5+0x0] = r10 ## clock.c:344:24
|
||
|
1117b4: 90 17 r0 = r1.l (u) ## clock.c:347:9
|
||
|
1117b6: 00 4a if (r0 == 0) goto 0x14 <check_usb_sof+0x7E : 1117cc > ## clock.c:347:9
|
||
|
1117b8: 00 ef 80 5c [r5+0x0] |= 0x4000 ## clock.c:348:28
|
||
|
1117bc: f9 3f r1 += -0x1 ## clock.c:347:23
|
||
|
1117be: 50 60 r0 = [r5+0x0] ## clock.c:351:32
|
||
|
1117c0: 88 17 r0 = r0.l (s) ## clock.c:351:47
|
||
|
1117c2: 80 fd f7 01 ifs (r0 < 0x0) goto -0x12 <check_usb_sof+0x66 : 1117b4 > ## clock.c:351:47
|
||
|
1117c6: 60 63 r0 = [r6+0xc] ## clock.c:352:21
|
||
|
1117c8: 70 5a if (r0 == 0) goto -0xc <check_usb_sof+0x70 : 1117be > ## clock.c:352:21
|
||
|
1117ca: 04 8e goto 0x1c <check_usb_sof+0x9A : 1117e8 > ## clock.c:352:21
|
||
|
1117cc: c0 ef 40 b0 [r11+0x0] &= 0xFFFFFFBF ## clock.c:360:25
|
||
|
1117d0: 40 ea 80 4c [r4+0x0] = 0x4000 ## clock.c:361:24
|
||
|
1117d4: 70 28 r0 = 0xc8 ## clock.c:364:9
|
||
|
1117d6: bf ea a5 fe call -0x2b6 <mdelay : 111524 > ## clock.c:364:9
|
||
|
1117da: 30 e1 ff cf r0 = r12 + -0x1 ## clock.c:374:19
|
||
|
1117de: 61 ff ff c0 c9 ff if ((r12 & 0xFF) != 0) goto -0x6e <check_usb_sof+0x28 : 111776 > ## clock.c:374:19
|
||
|
1117e4: 42 20 r2 = 0x0
|
||
|
1117e6: 04 83 goto 0x6 <check_usb_sof+0xA0 : 1117ee >
|
||
|
1117e8: 40 ea 80 5c [r5+0x0] = 0x4000 ## clock.c:353:36
|
||
|
1117ec: 42 21 r2 = 0x1 ## clock.c:353:36
|
||
|
1117ee: 40 21 r0 = 0x1 ## clock.c:385:5
|
||
|
1117f0: bf ea 33 fe call -0x39a <set_timer3_captrue_dp_disable : 11145a > ## clock.c:385:5
|
||
|
1117f4: 20 16 r0 = r2 ## clock.c:387:1
|
||
|
1117f6: 5c 04 {pc, r12-r4} = [sp++] ## clock.c:387:1
|
||
|
|
||
|
|
||
|
spi_get_port:
|
||
|
1117f8: c0 ff 18 51 1e 00 r0 = 0x1e5118 <__stub_doe+0xD291C : 1e5118 > ## spi0.c:34:0
|
||
|
1117fe: 00 60 r0 = [r0+0x0] ## spi0.c:35:27
|
||
|
111800: b0 e1 08 08 r0 = uextra(r0, p:0x10, l:0x2) ## spi0.c:35:39
|
||
|
111804: 80 00 rts ## spi0.c:36:5
|
||
|
|
||
|
|
||
|
skip_atoi:
|
||
|
111806: 02 60 r2 = [r0+0x0] ## printf-stdarg.c:18:0
|
||
|
111808: 41 20 r1 = 0x0 ## printf-stdarg.c:18:0
|
||
|
11180a: 04 89 goto 0x12 <skip_atoi+0x18 : 11181e > ## printf-stdarg.c:18:0
|
||
|
11180c: 2b 81 r3 = r2 + 0x1 ## printf-stdarg.c:21:29
|
||
|
11180e: e1 f1 0a 10 r1 = r1 * 0xA # ## printf-stdarg.c:21:15
|
||
|
111812: 83 60 [r0+0x0] = r3 ## printf-stdarg.c:21:29
|
||
|
111814: 54 ee 20 20 r2 = b[r2+0x0] (s) ## printf-stdarg.c:21:22
|
||
|
111818: 21 18 r1 += r2 ## printf-stdarg.c:21:20
|
||
|
11181a: f1 30 r1 += -0x30 ## printf-stdarg.c:21:33
|
||
|
11181c: 32 16 r2 = r3 ## printf-stdarg.c:20:12
|
||
|
11181e: 2b 40 r3 = b[r2+0x0] (u) ## printf-stdarg.c:20:12
|
||
|
111820: f3 30 r3 += -0x30 ## printf-stdarg.c:20:12
|
||
|
111822: 33 17 r3 = r3.b0 (u) ## printf-stdarg.c:20:12
|
||
|
111824: 83 fc f2 13 if (r3 <= 0x9) goto -0x1c <skip_atoi+0x6 : 11180c > ## printf-stdarg.c:20:12
|
||
|
111828: 10 16 r0 = r1 ## printf-stdarg.c:23:5
|
||
|
11182a: 80 00 rts ## printf-stdarg.c:23:5
|
||
|
|
||
|
|
||
|
printchar:
|
||
|
11182c: b0 e8 00 80 if (r0 != 0x0) { ## printf-stdarg.c:29:0
|
||
|
111830: 02 60 r2 = [r0+0x0] ## printf-stdarg.c:29:0
|
||
|
111832: a9 40 b[r2+0x0] = r1 ## printf-stdarg.c:34:15
|
||
|
111834: c0 eb 01 00 [r0+0x0] += 0x1
|
||
|
} ## printf-stdarg.c:35:9
|
||
|
111838: 80 00 rts ## printf-stdarg.c:35:9
|
||
|
|
||
|
|
||
|
prints:
|
||
|
11183a: 78 04 [--sp] = {rets, r8-r4} ## printf-stdarg.c:57:0
|
||
|
11183c: 28 16 r8 = r2 ## printf-stdarg.c:57:0
|
||
|
11183e: 16 16 r6 = r1 ## printf-stdarg.c:57:0
|
||
|
111840: 82 fd 20 02 ifs (r2 < 0x1) goto 0x40 <prints+0x4A : 111884 > ## printf-stdarg.c:57:0
|
||
|
111844: c2 21 r2 += 0x1 ## printf-stdarg.c:62:30
|
||
|
111846: 41 20 r1 = 0x0 ## printf-stdarg.c:62:30
|
||
|
111848: 04 81 goto 0x2 <prints+0x12 : 11184c > ## printf-stdarg.c:62:30
|
||
|
11184a: c1 21 r1 += 0x1 ## printf-stdarg.c:64:13
|
||
|
11184c: d8 ee 60 41 r4 = b[r6+r1] (u) ## printf-stdarg.c:63:28
|
||
|
111850: f4 5c if (r4 != 0) goto -0x8 <prints+0x10 : 11184a > ## printf-stdarg.c:63:28
|
||
|
111852: 2c 1e r4 = r2 - r1 ## printf-stdarg.c:75:9
|
||
|
111854: 98 ee 00 01 ifs (r8 <= r1) { ## printf-stdarg.c:75:9
|
||
|
111858: 18 16 r8 = r1
|
||
|
} ## printf-stdarg.c:71:13
|
||
|
11185a: b4 e0 82 81 r8 = r8 - r1 ## printf-stdarg.c:71:13
|
||
|
11185e: 31 a3 r1 = r3 << 0x3 ## printf-stdarg.c:71:13
|
||
|
111860: 61 e1 10 10 r1 = r1 & 0x10 ## printf-stdarg.c:71:13
|
||
|
111864: 45 e1 20 10 r5 = r1 | 0x20 ## printf-stdarg.c:71:13
|
||
|
111868: 47 20 r7 = 0x0
|
||
|
11186a: 53 e8 10 02 if ((r3 & 0x1) != 0) goto 0x20 <prints+0x54 : 11188e >
|
||
|
11186e: 88 fd 0e 02 ifs (r8 < 0x1) goto 0x1c <prints+0x54 : 11188e >
|
||
|
111872: 51 16 r1 = r5 ## printf-stdarg.c:77:17
|
||
|
111874: 61 9b call -0x4a <printchar : 11182c > ## printf-stdarg.c:77:17
|
||
|
111876: fc 3f r4 += -0x1 ## printf-stdarg.c:76:22
|
||
|
111878: c7 21 r7 += 0x1 ## printf-stdarg.c:80:13
|
||
|
11187a: 04 fe fa 03 ifs (r4 > 0x1) goto -0xc <prints+0x38 : 111872 > ## printf-stdarg.c:76:9
|
||
|
11187e: 38 e1 ff 4f r8 = r4 + -0x1 ## printf-stdarg.c:58:18
|
||
|
111882: 04 85 goto 0xa <prints+0x54 : 11188e > ## printf-stdarg.c:58:18
|
||
|
111884: 47 20 r7 = 0x0
|
||
|
111886: 4d 20 r5 = 0x20
|
||
|
111888: 04 82 goto 0x4 <prints+0x54 : 11188e >
|
||
|
11188a: 61 90 call -0x60 <printchar : 11182c > ## printf-stdarg.c:84:13
|
||
|
11188c: c7 21 r7 += 0x1 ## printf-stdarg.c:87:9
|
||
|
11188e: d4 ee 61 10 r1 = b[r6++=0x1] (s) ## printf-stdarg.c:83:12
|
||
|
111892: f1 5b if (r1 != 0) goto -0xa <prints+0x50 : 11188a > ## printf-stdarg.c:83:5
|
||
|
111894: 43 20 r3 = 0x0
|
||
|
111896: 04 83 goto 0x6 <prints+0x64 : 11189e >
|
||
|
111898: 51 16 r1 = r5 ## printf-stdarg.c:90:13
|
||
|
11189a: 61 88 call -0x70 <printchar : 11182c > ## printf-stdarg.c:90:13
|
||
|
11189c: fb 3f r3 += -0x1 ## printf-stdarg.c:89:5
|
||
|
11189e: b4 e0 80 13 r1 = r8 + r3 ## printf-stdarg.c:89:18
|
||
|
1118a2: 01 fd f9 03 ifs (r1 >= 0x1) goto -0xe <prints+0x5E : 111898 > ## printf-stdarg.c:89:18
|
||
|
1118a6: f8 1e r0 = r7 - r3 ## printf-stdarg.c:96:5
|
||
|
1118a8: 58 04 {pc, r8-r4} = [sp++] ## printf-stdarg.c:96:5
|
||
|
|
||
|
|
||
|
printi:
|
||
|
1118aa: 79 04 [--sp] = {rets, r9-r4} ## printf-stdarg.c:103:0
|
||
|
1118ac: e2 9d sp += -0xc ## printf-stdarg.c:103:0
|
||
|
1118ae: d4 e9 2c 80 r8 = [sp+44] ## printf-stdarg.c:103:0
|
||
|
1118b2: d4 e9 28 90 r9 = [sp+40] ## printf-stdarg.c:103:0
|
||
|
1118b6: 11 54 if (r1 == 0) goto 0x68 <printi+0x76 : 111920 > ## printf-stdarg.c:103:0
|
||
|
1118b8: 44 20 r4 = 0x0 ## printf-stdarg.c:103:0
|
||
|
1118ba: de e9 0b 40 b[sp+11] = r4 ## printf-stdarg.c:121:8
|
||
|
1118be: 44 21 r4 = 0x1 ## printf-stdarg.c:121:8
|
||
|
1118c0: 46 21 r6 = 0x1 ## printf-stdarg.c:115:17
|
||
|
1118c2: b2 e8 0a 00 if (r2 != 0xa) { ## printf-stdarg.c:115:17
|
||
|
1118c6: 46 20 r6 = 0x0
|
||
|
} ## printf-stdarg.c:115:17
|
||
|
1118c8: 33 e8 00 00 if (r3 == 0x0) { ## printf-stdarg.c:115:17
|
||
|
1118cc: 34 16 r4 = r3
|
||
|
} ## printf-stdarg.c:115:9
|
||
|
1118ce: e4 d9 r4 &= r6 # ## printf-stdarg.c:115:12
|
||
|
1118d0: 03 2c r3 = [sp+48] ## printf-stdarg.c:115:12
|
||
|
1118d2: a6 e0 00 10 r6 = 0x0 - r1 ## printf-stdarg.c:117:13
|
||
|
1118d6: 97 bf r7 = r1 >> 0x1f ## printf-stdarg.c:115:28
|
||
|
1118d8: 17 ea 00 04 if ((r7 & r4) == 0) { ## printf-stdarg.c:115:28
|
||
|
1118dc: 16 16 r6 = r1
|
||
|
} ## printf-stdarg.c:115:28
|
||
|
1118de: c7 19 r7 &= r4 ## printf-stdarg.c:115:12
|
||
|
1118e0: 89 80 r1 = sp + 0 ## printf-stdarg.c:115:12
|
||
|
1118e2: c1 2a r1 += 0xa ## printf-stdarg.c:115:12
|
||
|
1118e4: 05 e1 c6 30 r5 = r3 + 0xc6 ## printf-stdarg.c:115:12
|
||
|
1118e8: 04 8d goto 0x1a <printi+0x5A : 111904 > ## printf-stdarg.c:115:12
|
||
|
1118ea: f4 e1 60 42 r4 = r6 / r2 (u) ## printf-stdarg.c:124:15
|
||
|
1118ee: f0 e1 40 32 r3 = r4 * r2 ## printf-stdarg.c:124:15
|
||
|
1118f2: ee 1e r6 = r6 - r3 ## printf-stdarg.c:124:15
|
||
|
1118f4: 53 16 r3 = r5 ## printf-stdarg.c:125:13
|
||
|
1118f6: b6 ee 09 00 ifs (r6 <= 0x9) { ## printf-stdarg.c:125:13
|
||
|
1118fa: 43 20 r3 = 0x0
|
||
|
} ## printf-stdarg.c:125:13
|
||
|
1118fc: 63 18 r3 += r6 ## printf-stdarg.c:125:13
|
||
|
1118fe: cb 30 r3 += 0x30 ## printf-stdarg.c:128:18
|
||
|
111900: 46 d6 r6 = r4 # ## printf-stdarg.c:128:18
|
||
|
111902: 9b 07 b[r1++=-0x1] = r3 ## printf-stdarg.c:128:14
|
||
|
111904: f6 52 if (r6 != 0) goto -0x1c <printi+0x40 : 1118ea >
|
||
|
111906: 1b 81 r3 = r1 + 0x1 ## printf-stdarg.c:132:9
|
||
|
111908: 46 20 r6 = 0x0 ## printf-stdarg.c:132:9
|
||
|
11190a: 07 58 if (r7 == 0) goto 0x30 <printi+0x92 : 11193c >
|
||
|
11190c: 09 f8 13 00 if (r9 == 0x0) goto 0x26 <printi+0x8C : 111936 >
|
||
|
111910: 58 e8 11 08 if ((r8 & 0x2) == 0) goto 0x22 <printi+0x8C : 111936 >
|
||
|
111914: 49 2d r1 = 0x2d ## printf-stdarg.c:134:17
|
||
|
111916: 41 8a call -0xec <printchar : 11182c > ## printf-stdarg.c:134:17
|
||
|
111918: 39 e1 ff 9f r9 = r9 + -0x1 ## printf-stdarg.c:134:17
|
||
|
11191c: 46 21 r6 = 0x1 ## printf-stdarg.c:134:17
|
||
|
11191e: 04 8e goto 0x1c <printi+0x92 : 11193c > ## printf-stdarg.c:134:17
|
||
|
111920: 49 30 r1 = 0x30 ## printf-stdarg.c:110:22
|
||
|
111922: de e9 00 10 b[sp] = r1 ## printf-stdarg.c:110:22
|
||
|
111926: 41 20 r1 = 0x0 ## printf-stdarg.c:111:22
|
||
|
111928: de e9 01 10 b[sp+1] = r1 ## printf-stdarg.c:111:22
|
||
|
11192c: 89 80 r1 = sp + 0 ## printf-stdarg.c:111:22
|
||
|
11192e: 92 16 r2 = r9 ## printf-stdarg.c:112:16
|
||
|
111930: 83 16 r3 = r8 ## printf-stdarg.c:112:16
|
||
|
111932: 41 83 call -0xfa <prints : 11183a > ## printf-stdarg.c:112:16
|
||
|
111934: 04 89 goto 0x12 <printi+0x9E : 111948 > ## printf-stdarg.c:112:16
|
||
|
111936: 4a 2d r2 = 0x2d ## printf-stdarg.c:139:18
|
||
|
111938: 13 d6 r3 = r1 # ## printf-stdarg.c:139:18
|
||
|
11193a: 9a 40 b[r1+0x0] = r2 ## printf-stdarg.c:139:18
|
||
|
11193c: 31 16 r1 = r3 ## printf-stdarg.c:143:17
|
||
|
11193e: 92 16 r2 = r9 ## printf-stdarg.c:143:17
|
||
|
111940: 83 16 r3 = r8 ## printf-stdarg.c:143:17
|
||
|
111942: bf ea 7a ff call -0x10c <prints : 11183a > ## printf-stdarg.c:143:17
|
||
|
111946: 60 18 r0 += r6 ## printf-stdarg.c:143:15
|
||
|
111948: 02 83 sp += 0xc
|
||
|
11194a: 59 04 {pc, r9-r4} = [sp++] ## printf-stdarg.c:144:1
|
||
|
|
||
|
|
||
|
print:
|
||
|
11194c: 7c 04 [--sp] = {rets, r12-r4} ## printf-stdarg.c:147:0
|
||
|
11194e: e2 9a sp += -0x18 ## printf-stdarg.c:147:0
|
||
|
111950: 04 d6 r4 = r0 # ## printf-stdarg.c:147:0
|
||
|
111952: 81 25 [sp+20] = r1 ## printf-stdarg.c:147:0
|
||
|
111954: c1 d4 r9 = 0 # ## printf-stdarg.c:147:0
|
||
|
111956: 82 24 [sp+16] = r2 ## printf-stdarg.c:147:0
|
||
|
111958: f8 e8 0e 80 r8 = sp + 14 ## printf-stdarg.c:147:0
|
||
|
11195c: 4a e0 41 00 r10 = 0x41 ## printf-stdarg.c:147:0
|
||
|
111960: 4b e0 61 00 r11 = 0x61 ## printf-stdarg.c:147:0
|
||
|
111964: cc ff 98 10 11 00 r12 = 0x111098 <nor_flash_boot_table+0x28 : 111098 > ## printf-stdarg.c:147:0
|
||
|
11196a: 45 20 r5 = 0x0 ## printf-stdarg.c:147:0
|
||
|
11196c: 74 92 goto 0x1e4 <.GJTIE36_0_0_+0x116 : 111b52 > ## printf-stdarg.c:147:0
|
||
|
11196e: 1a 81 r2 = r1 + 0x1 ## printf-stdarg.c:154:13
|
||
|
111970: 82 25 [sp+20] = r2 ## printf-stdarg.c:154:13
|
||
|
111972: 18 41 r0 = b[r1+0x1] (u) ## printf-stdarg.c:156:17
|
||
|
111974: 00 f8 05 4a if (r0 == 0x25) goto 0xa <print+0x36 : 111982 > ## printf-stdarg.c:156:17
|
||
|
111978: 00 f8 0a 5a if (r0 == 0x2d) goto 0x14 <print+0x44 : 111990 >
|
||
|
11197c: 47 20 r7 = 0x0
|
||
|
11197e: 80 4f if (r0 != 0) goto 0x1e <print+0x52 : 11199e >
|
||
|
111980: 74 8d goto 0x1da <.GJTIE36_0_0_+0x120 : 111b5c >
|
||
|
111982: 48 25 r0 = 0x25
|
||
|
111984: 09 17 r1 = r0.b0 (s) ## printf-stdarg.c:276:39
|
||
|
111986: 40 16 r0 = r4 ## printf-stdarg.c:276:19
|
||
|
111988: bf ea 50 ff call -0x160 <printchar : 11182c > ## printf-stdarg.c:276:19
|
||
|
11198c: c5 21 r5 += 0x1 ## printf-stdarg.c:276:16
|
||
|
11198e: 24 96 goto 0xac <.GJTIE36_0_0_ : 111a3c >
|
||
|
111990: 1a 82 r2 = r1 + 0x2 ## printf-stdarg.c:163:17
|
||
|
111992: 82 25 [sp+20] = r2 ## printf-stdarg.c:163:17
|
||
|
111994: 47 21 r7 = 0x1
|
||
|
111996: 04 83 goto 0x6 <print+0x52 : 11199e >
|
||
|
111998: c2 21 r2 += 0x1 ## printf-stdarg.c:167:17
|
||
|
11199a: 82 25 [sp+20] = r2 ## printf-stdarg.c:167:17
|
||
|
11199c: 37 21 r7 |= 0x2 ## printf-stdarg.c:168:21
|
||
|
11199e: 29 40 r1 = b[r2+0x0] (u) ## printf-stdarg.c:166:20
|
||
|
1119a0: 01 f8 fa 61 if (r1 == 0x30) goto -0xc <print+0x4C : 111998 > ## printf-stdarg.c:166:20
|
||
|
1119a4: 30 e1 d0 1f r0 = r1 + -0x30 ## printf-stdarg.c:172:17
|
||
|
1119a8: 00 17 r0 = r0.b0 (u) ## printf-stdarg.c:172:17
|
||
|
1119aa: 16 3f r6 = -0x1 ## printf-stdarg.c:172:17
|
||
|
1119ac: 00 fc 06 12 if (r0 > 0x9) goto 0xc <print+0x70 : 1119bc > ## printf-stdarg.c:172:17
|
||
|
1119b0: 88 94 r0 = sp + 20
|
||
|
1119b2: bf ea 28 ff call -0x1b0 <skip_atoi : 111806 > ## printf-stdarg.c:173:25
|
||
|
1119b6: 06 d6 r6 = r0 # ## printf-stdarg.c:173:25
|
||
|
1119b8: 02 25 r2 = [sp+20] ## printf-stdarg.c:173:25
|
||
|
1119ba: 29 40 r1 = b[r2+0x0] (u) ## printf-stdarg.c:173:25
|
||
|
1119bc: 81 f8 0d 5c if (r1 != 0x2e) goto 0x1a <print+0x8E : 1119da >
|
||
|
1119c0: 28 81 r0 = r2 + 0x1 ## printf-stdarg.c:178:17
|
||
|
1119c2: 80 25 [sp+20] = r0 ## printf-stdarg.c:178:17
|
||
|
1119c4: 29 41 r1 = b[r2+0x1] (u) ## printf-stdarg.c:179:21
|
||
|
1119c6: 33 e1 d0 1f r3 = r1 + -0x30 ## printf-stdarg.c:179:21
|
||
|
1119ca: 33 17 r3 = r3.b0 (u) ## printf-stdarg.c:179:21
|
||
|
1119cc: 03 fc 07 12 if (r3 > 0x9) goto 0xe <print+0x92 : 1119de > ## printf-stdarg.c:179:21
|
||
|
1119d0: 88 94 r0 = sp + 20
|
||
|
1119d2: bf ea 18 ff call -0x1d0 <skip_atoi : 111806 > ## printf-stdarg.c:180:33
|
||
|
1119d6: 00 25 r0 = [sp+20]
|
||
|
1119d8: 04 89 goto 0x12 <print+0xA0 : 1119ec >
|
||
|
1119da: 20 16 r0 = r2 ## printf-stdarg.c:250:18
|
||
|
1119dc: 04 87 goto 0xe <print+0xA0 : 1119ec > ## printf-stdarg.c:250:18
|
||
|
1119de: 31 e8 2a c0 if (r1 == 0x2a) {
|
||
|
1119e2: 88 90 r0 = sp + 16
|
||
|
1119e4: c0 eb 04 00 [r0+0x0] += 0x4 ## printf-stdarg.c:183:33
|
||
|
1119e8: 28 82 r0 = r2 + 0x2 ## printf-stdarg.c:182:21
|
||
|
1119ea: 80 25 [sp+20] = r0
|
||
|
} ## printf-stdarg.c:182:21
|
||
|
1119ec: 09 40 r1 = b[r0+0x0] (u)
|
||
|
1119ee: 32 e1 90 1f r2 = r1 + -0x70 ## printf-stdarg.c:193:17
|
||
|
1119f2: 82 fc 1d 10 if (r2 <= 0x8) goto 0x3a <print+0xE4 : 111a30 > ## printf-stdarg.c:193:17
|
||
|
1119f6: 01 f8 3d 98 if (r1 == 0x4c) goto 0x7a <.GJTIE36_0_0_+0x38 : 111a74 >
|
||
|
1119fa: 01 f8 45 b0 if (r1 == 0x58) goto 0x8a <.GJTIE36_0_0_+0x4C : 111a88 >
|
||
|
1119fe: 01 f8 52 c6 if (r1 == 0x63) goto 0xa4 <.GJTIE36_0_0_+0x6A : 111aa6 >
|
||
|
111a02: 01 f8 5f c8 if (r1 == 0x64) goto 0xbe <.GJTIE36_0_0_+0x88 : 111ac4 >
|
||
|
111a06: 81 f8 19 d8 if (r1 != 0x6c) goto 0x32 <.GJTIE36_0_0_ : 111a3c >
|
||
|
111a0a: 09 41 r1 = b[r0+0x1] (u) ## printf-stdarg.c:202:39
|
||
|
111a0c: 01 f8 64 f0 if (r1 == 0x78) goto 0xc8 <.GJTIE36_0_0_+0x9C : 111ad8 > ## printf-stdarg.c:202:39
|
||
|
111a10: 01 f8 6b d8 if (r1 == 0x6c) goto 0xd6 <.GJTIE36_0_0_+0xAE : 111aea >
|
||
|
111a14: 01 f8 76 ea if (r1 == 0x75) goto 0xec <.GJTIE36_0_0_+0xC8 : 111b04 >
|
||
|
111a18: 81 f8 10 c8 if (r1 != 0x64) goto 0x20 <.GJTIE36_0_0_ : 111a3c >
|
||
|
111a1c: 00 24 r0 = [sp+16] ## printf-stdarg.c:203:40
|
||
|
111a1e: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:203:40
|
||
|
111a20: 81 24 [sp+16] = r1 ## printf-stdarg.c:203:40
|
||
|
111a22: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:203:40
|
||
|
111a24: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:203:23
|
||
|
111a28: 87 21 [sp+4] = r7 ## printf-stdarg.c:203:23
|
||
|
111a2a: 42 2a r2 = 0xa ## printf-stdarg.c:203:23
|
||
|
111a2c: 43 21 r3 = 0x1 ## printf-stdarg.c:203:23
|
||
|
111a2e: 34 93 goto 0xe6 <.GJTIE36_0_0_+0xDA : 111b16 > ## printf-stdarg.c:203:23
|
||
|
111a30: 02 01 tbb [r2]
|
||
|
|
||
|
|
||
|
.GJTIS36_0_0_:
|
||
|
111a32: 09 < 9 : 0x9 >
|
||
|
111a33: 05 < 5 : 0x5 >
|
||
|
111a34: 05 < 5 : 0x5 >
|
||
|
111a35: 10 < 16 : 0x10 >
|
||
|
111a36: 05 < 5 : 0x5 >
|
||
|
111a37: 18 < 24 : 0x18 >
|
||
|
111a38: 05 < 5 : 0x5 >
|
||
|
111a39: 05 < 5 : 0x5 >
|
||
|
111a3a: 09 < 9 : 0x9 >
|
||
|
111a3b: 00 < 0 : 0x0 >
|
||
|
111a3c: 00 25 r0 = [sp+20] ## printf-stdarg.c:152:26
|
||
|
111a3e: 09 81 r1 = r0 + 0x1 ## printf-stdarg.c:152:26
|
||
|
111a40: 81 25 [sp+20] = r1 ## printf-stdarg.c:152:26
|
||
|
111a42: 44 87 goto 0x10e <.GJTIE36_0_0_+0x116 : 111b52 > ## printf-stdarg.c:152:26
|
||
|
111a44: 00 24 r0 = [sp+16]
|
||
|
111a46: 09 84 r1 = r0 + 0x4
|
||
|
111a48: 81 24 [sp+16] = r1
|
||
|
111a4a: 01 60 r1 = [r0+0x0]
|
||
|
111a4c: d4 e9 09 b0 [sp+8] = r11
|
||
|
111a50: 14 81 goto 0x42 <.GJTIE36_0_0_+0x58 : 111a94 >
|
||
|
111a52: 00 24 r0 = [sp+16] ## printf-stdarg.c:194:44
|
||
|
111a54: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:194:44
|
||
|
111a56: 81 24 [sp+16] = r1 ## printf-stdarg.c:194:44
|
||
|
111a58: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:194:44
|
||
|
111a5a: 31 e8 00 00 if (r1 == 0x0) {
|
||
|
111a5e: c1 16 r1 = r12
|
||
|
} ## printf-stdarg.c:195:40
|
||
|
111a60: 14 8b goto 0x56 <.GJTIE36_0_0_+0x7C : 111ab8 >
|
||
|
111a62: 00 24 r0 = [sp+16] ## printf-stdarg.c:236:40
|
||
|
111a64: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:236:40
|
||
|
111a66: 81 24 [sp+16] = r1 ## printf-stdarg.c:236:40
|
||
|
111a68: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:236:40
|
||
|
111a6a: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:236:23
|
||
|
111a6e: 87 21 [sp+4] = r7 ## printf-stdarg.c:236:23
|
||
|
111a70: 42 2a r2 = 0xa ## printf-stdarg.c:236:23
|
||
|
111a72: 04 92 goto 0x24 <.GJTIE36_0_0_+0x5C : 111a98 > ## printf-stdarg.c:236:23
|
||
|
111a74: 08 41 r0 = b[r0+0x1] (u) ## printf-stdarg.c:230:39
|
||
|
111a76: 80 f8 e1 b1 if (r0 != 0x58) goto -0x3e <.GJTIE36_0_0_ : 111a3c >
|
||
|
111a7a: 00 24 r0 = [sp+16] ## printf-stdarg.c:231:40
|
||
|
111a7c: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:231:40
|
||
|
111a7e: 81 24 [sp+16] = r1 ## printf-stdarg.c:231:40
|
||
|
111a80: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:231:40
|
||
|
111a82: d4 e9 09 a0 [sp+8] = r10 ## printf-stdarg.c:231:23
|
||
|
111a86: 14 8e goto 0x5c <.GJTIE36_0_0_+0xA8 : 111ae4 > ## printf-stdarg.c:231:23
|
||
|
111a88: 00 24 r0 = [sp+16] ## printf-stdarg.c:227:40
|
||
|
111a8a: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:227:40
|
||
|
111a8c: 81 24 [sp+16] = r1 ## printf-stdarg.c:227:40
|
||
|
111a8e: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:227:40
|
||
|
111a90: d4 e9 09 a0 [sp+8] = r10 ## printf-stdarg.c:227:23
|
||
|
111a94: 87 21 [sp+4] = r7
|
||
|
111a96: 42 30 r2 = 0x10
|
||
|
111a98: 43 20 r3 = 0x0
|
||
|
111a9a: 40 d6 r0 = r4 #
|
||
|
111a9c: 86 20 [sp] = r6
|
||
|
111a9e: bf ea 04 ff call -0x1f8 <printi : 1118aa >
|
||
|
111aa2: 05 18 r5 += r0
|
||
|
111aa4: e7 8b goto -0x6a <.GJTIE36_0_0_ : 111a3c >
|
||
|
111aa6: 00 24 r0 = [sp+16] ## printf-stdarg.c:252:32
|
||
|
111aa8: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:252:32
|
||
|
111aaa: 81 24 [sp+16] = r1 ## printf-stdarg.c:252:32
|
||
|
111aac: 00 60 r0 = [r0+0x0] ## printf-stdarg.c:252:32
|
||
|
111aae: de e9 0e 00 b[sp+14] = r0 ## printf-stdarg.c:252:24
|
||
|
111ab2: 52 ee 81 90 b[r8+0x1] = r9 ## printf-stdarg.c:253:24
|
||
|
111ab6: 89 8e r1 = sp + 14 ## printf-stdarg.c:253:24
|
||
|
111ab8: 40 16 r0 = r4
|
||
|
111aba: 62 15 r3_r2 = r7_r6
|
||
|
111abc: bf ea bd fe call -0x286 <prints : 11183a >
|
||
|
111ac0: 05 18 r5 += r0
|
||
|
111ac2: d7 9c goto -0x88 <.GJTIE36_0_0_ : 111a3c >
|
||
|
111ac4: 00 24 r0 = [sp+16] ## printf-stdarg.c:199:40
|
||
|
111ac6: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:199:40
|
||
|
111ac8: 81 24 [sp+16] = r1 ## printf-stdarg.c:199:40
|
||
|
111aca: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:199:40
|
||
|
111acc: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:199:23
|
||
|
111ad0: 87 21 [sp+4] = r7 ## printf-stdarg.c:199:23
|
||
|
111ad2: 42 2a r2 = 0xa ## printf-stdarg.c:199:23
|
||
|
111ad4: 43 21 r3 = 0x1 ## printf-stdarg.c:199:23
|
||
|
111ad6: f7 81 goto -0x3e <.GJTIE36_0_0_+0x5E : 111a9a > ## printf-stdarg.c:199:23
|
||
|
111ad8: 00 24 r0 = [sp+16] ## printf-stdarg.c:222:40
|
||
|
111ada: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:222:40
|
||
|
111adc: 81 24 [sp+16] = r1 ## printf-stdarg.c:222:40
|
||
|
111ade: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:222:40
|
||
|
111ae0: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:222:23
|
||
|
111ae4: 87 21 [sp+4] = r7
|
||
|
111ae6: 42 30 r2 = 0x10
|
||
|
111ae8: 04 95 goto 0x2a <.GJTIE36_0_0_+0xD8 : 111b14 >
|
||
|
111aea: 09 42 r1 = b[r0+0x2] (u) ## printf-stdarg.c:207:67
|
||
|
111aec: 81 f8 1c c8 if (r1 != 0x64) goto 0x38 <.GJTIE36_0_0_+0xEC : 111b28 > ## printf-stdarg.c:207:17
|
||
|
111af0: 00 24 r0 = [sp+16] ## printf-stdarg.c:208:40
|
||
|
111af2: 09 88 r1 = r0 + 0x8 ## printf-stdarg.c:208:40
|
||
|
111af4: 81 24 [sp+16] = r1 ## printf-stdarg.c:208:40
|
||
|
111af6: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:208:40
|
||
|
111af8: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:208:23
|
||
|
111afc: 87 21 [sp+4] = r7 ## printf-stdarg.c:208:23
|
||
|
111afe: 42 2a r2 = 0xa ## printf-stdarg.c:208:23
|
||
|
111b00: 43 21 r3 = 0x1 ## printf-stdarg.c:208:23
|
||
|
111b02: 04 9e goto 0x3c <.GJTIE36_0_0_+0x104 : 111b40 > ## printf-stdarg.c:208:23
|
||
|
111b04: 00 24 r0 = [sp+16] ## printf-stdarg.c:240:40
|
||
|
111b06: 09 84 r1 = r0 + 0x4 ## printf-stdarg.c:240:40
|
||
|
111b08: 81 24 [sp+16] = r1 ## printf-stdarg.c:240:40
|
||
|
111b0a: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:240:40
|
||
|
111b0c: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:240:23
|
||
|
111b10: 87 21 [sp+4] = r7 ## printf-stdarg.c:240:23
|
||
|
111b12: 42 2a r2 = 0xa ## printf-stdarg.c:240:23
|
||
|
111b14: 43 20 r3 = 0x0
|
||
|
111b16: 40 d6 r0 = r4 #
|
||
|
111b18: 86 20 [sp] = r6
|
||
|
111b1a: bf ea c6 fe call -0x274 <printi : 1118aa >
|
||
|
111b1e: 89 94 r1 = sp + 20
|
||
|
111b20: c0 eb 01 10 [r1+0x0] += 0x1
|
||
|
111b24: 05 18 r5 += r0
|
||
|
111b26: c7 8a goto -0xec <.GJTIE36_0_0_ : 111a3c >
|
||
|
111b28: 08 42 r0 = b[r0+0x2] (u) ## printf-stdarg.c:244:67
|
||
|
111b2a: 80 f8 87 eb if (r0 != 0x75) goto -0xf2 <.GJTIE36_0_0_ : 111a3c >
|
||
|
111b2e: 00 24 r0 = [sp+16] ## printf-stdarg.c:245:40
|
||
|
111b30: 09 88 r1 = r0 + 0x8 ## printf-stdarg.c:245:40
|
||
|
111b32: 81 24 [sp+16] = r1 ## printf-stdarg.c:245:40
|
||
|
111b34: 01 60 r1 = [r0+0x0] ## printf-stdarg.c:245:40
|
||
|
111b36: d4 e9 09 b0 [sp+8] = r11 ## printf-stdarg.c:245:23
|
||
|
111b3a: 87 21 [sp+4] = r7 ## printf-stdarg.c:245:23
|
||
|
111b3c: 42 2a r2 = 0xa ## printf-stdarg.c:245:23
|
||
|
111b3e: 43 20 r3 = 0x0 ## printf-stdarg.c:245:23
|
||
|
111b40: 40 d6 r0 = r4 #
|
||
|
111b42: 86 20 [sp] = r6
|
||
|
111b44: bf ea b1 fe call -0x29e <printi : 1118aa >
|
||
|
111b48: 89 94 r1 = sp + 20
|
||
|
111b4a: c0 eb 02 10 [r1+0x0] += 0x2
|
||
|
111b4e: 05 18 r5 += r0
|
||
|
111b50: b7 95 goto -0x116 <.GJTIE36_0_0_ : 111a3c >
|
||
|
111b52: 18 40 r0 = b[r1+0x0] (u) ## printf-stdarg.c:152:12
|
||
|
111b54: 00 f8 0b 4b if (r0 == 0x25) goto -0x1ea <print+0x22 : 11196e > ## printf-stdarg.c:152:5
|
||
|
111b58: 80 f8 14 01 if (r0 != 0x0) goto -0x1d8 <print+0x38 : 111984 >
|
||
|
111b5c: b4 e8 00 80 if (r4 != 0x0) {
|
||
|
111b60: 40 60 r0 = [r4+0x0] ## printf-stdarg.c:280:10
|
||
|
111b62: 41 20 r1 = 0x0 ## printf-stdarg.c:280:15
|
||
|
111b64: 89 40 b[r0+0x0] = r1
|
||
|
} ## printf-stdarg.c:280:15
|
||
|
111b66: 50 16 r0 = r5 ## printf-stdarg.c:283:5
|
||
|
111b68: 02 86 sp += 0x18 ## printf-stdarg.c:283:5
|
||
|
111b6a: 5c 04 {pc, r12-r4} = [sp++] ## printf-stdarg.c:283:5
|
||
|
|
||
|
|
||
|
printf:
|
||
|
111b6c: 61 04 [--sp] = {r3-r1} ## printf-stdarg.c:331:0
|
||
|
111b6e: 74 04 [--sp] = {rets, r4} ## printf-stdarg.c:331:0
|
||
|
111b70: e2 9f sp += -0x4 ## printf-stdarg.c:331:0
|
||
|
111b72: 8a 8c r2 = sp + 12 ## printf-stdarg.c:331:0
|
||
|
111b74: 04 d6 r4 = r0 # ## printf-stdarg.c:331:0
|
||
|
111b76: 82 20 [sp] = r2 ## printf-stdarg.c:335:5
|
||
|
111b78: 40 20 r0 = 0x0 ## printf-stdarg.c:365:11
|
||
|
111b7a: 41 16 r1 = r4 ## printf-stdarg.c:365:11
|
||
|
111b7c: bf ea e6 fe call -0x234 <print : 11194c > ## printf-stdarg.c:365:11
|
||
|
111b80: 02 81 sp += 0x4
|
||
|
111b82: 34 04 {rets, r4} = [sp++] ## printf-stdarg.c:368:5
|
||
|
111b84: 02 83 sp += 0xc ## printf-stdarg.c:368:5
|
||
|
111b86: 80 00 rts ## printf-stdarg.c:368:5
|
||
|
|
||
|
|
||
|
SPI0_cs:
|
||
|
111b88: 10 04 [--sp] = rets ## spi0.c:178:0
|
||
|
111b8a: 01 16 r1 = r0 ## spi0.c:178:0
|
||
|
111b8c: bf ea 34 fe call -0x398 <spi_get_port : 1117f8 > ## spi0.c:179:16
|
||
|
111b90: 00 4b if (r0 == 0) goto 0x16 <SPI0_cs+0x20 : 111ba8 >
|
||
|
111b92: c0 ff 00 50 1e 00 r0 = 0x1e5000 <__stub_doe+0xD2804 : 1e5000 >
|
||
|
111b98: c2 ef 00 0d [r0+0x8] &= 0xFFFFDFFF ## spi0.c:184:23
|
||
|
111b9c: 02 60 r2 = [r0+0x0] ## spi0.c:184:23
|
||
|
111b9e: 73 e1 00 2d r3 = r2 & 0xFFFFDFFF ## spi0.c:185:64
|
||
|
111ba2: 32 2d r2 |= 0x2000 ## spi0.c:185:29
|
||
|
111ba4: 01 4b if (r1 == 0) goto 0x16 <SPI0_cs+0x34 : 111bbc > ## spi0.c:185:29
|
||
|
111ba6: 04 8b goto 0x16 <SPI0_cs+0x36 : 111bbe > ## spi0.c:185:29
|
||
|
111ba8: c0 ff c0 50 1e 00 r0 = 0x1e50c0 <__stub_doe+0xD28C4 : 1e50c0 >
|
||
|
111bae: c2 ef 08 00 [r0+0x8] &= 0xFFFFFFF7 ## spi0.c:181:23
|
||
|
111bb2: 02 60 r2 = [r0+0x0] ## spi0.c:181:23
|
||
|
111bb4: 73 e1 08 20 r3 = r2 & 0xFFFFFFF7 ## spi0.c:182:64
|
||
|
111bb8: 32 23 r2 |= 0x8 ## spi0.c:182:29
|
||
|
111bba: 81 41 if (r1 != 0) goto 0x2 <SPI0_cs+0x36 : 111bbe > ## spi0.c:182:29
|
||
|
111bbc: 32 16 r2 = r3
|
||
|
111bbe: 82 60 [r0+0x0] = r2
|
||
|
111bc0: 00 04 pc = [sp++] ## spi0.c:187:1
|
||
|
|
||
|
|
||
|
spi0_wait_ok:
|
||
|
111bc2: c0 ff 00 1c 1e 00 r0 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## spi0.c:236:0
|
||
|
111bc8: 01 60 r1 = [r0+0x0] ## spi0.c:237:23
|
||
|
111bca: 51 e8 fd 79 if ((r1 & 0x8000) == 0) goto -0x6 <spi0_wait_ok+0x6 : 111bc8 > ## spi0.c:237:5
|
||
|
111bce: 00 ef 80 0c [r0+0x0] |= 0x4000 ## spi0.c:239:18
|
||
|
111bd2: 80 00 rts ## spi0.c:239:18
|
||
|
|
||
|
|
||
|
SPI0_WriteByte:
|
||
|
111bd4: c1 ff 00 1c 1e 00 r1 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## spi0.c:259:0
|
||
|
111bda: c0 ef 80 1d [r1+0x0] &= 0xFFFFEFFF ## spi0.c:260:18
|
||
|
111bde: 90 62 [r1+0x8] = r0 ## spi0.c:261:18
|
||
|
111be0: f7 90 goto -0x20 <spi0_wait_ok : 111bc2 > ## spi0.c:262:5
|
||
|
|
||
|
|
||
|
SPI0_ReadByte:
|
||
|
111be2: 10 04 [--sp] = rets ## spi0.c:279:0
|
||
|
111be4: c2 ff 00 1c 1e 00 r2 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## spi0.c:279:0
|
||
|
111bea: 00 ef 80 2d [r2+0x0] |= 0x1000 ## spi0.c:281:18
|
||
|
111bee: 40 2a r0 = 0xa ## spi0.c:282:5
|
||
|
111bf0: bf ea 42 fb call -0x97c <udelay : 111278 > ## spi0.c:282:5
|
||
|
111bf4: 42 ea ff 20 [r2+0x8] = 0xFF ## spi0.c:283:18
|
||
|
111bf8: 71 84 call -0x38 <spi0_wait_ok : 111bc2 > ## spi0.c:284:5
|
||
|
111bfa: 20 62 r0 = [r2+0x8] ## spi0.c:285:25
|
||
|
111bfc: 00 17 r0 = r0.b0 (u) ## spi0.c:287:5
|
||
|
111bfe: 00 04 pc = [sp++] ## spi0.c:287:5
|
||
|
|
||
|
|
||
|
SPI0_4WriteByte:
|
||
|
111c00: 10 04 [--sp] = rets ## spi0.c:318:0
|
||
|
111c02: c2 ff 00 1c 1e 00 r2 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## spi0.c:318:0
|
||
|
111c08: c0 ef 80 2e [r2+0x0] &= 0xFFFFFBFF ## spi0.c:320:18
|
||
|
111c0c: 00 ef 00 2e [r2+0x0] |= 0x800 ## spi0.c:321:18
|
||
|
111c10: c0 ef 80 2d [r2+0x0] &= 0xFFFFEFFF ## spi0.c:323:18
|
||
|
111c14: a0 62 [r2+0x8] = r0 ## spi0.c:324:18
|
||
|
111c16: 61 95 call -0x56 <spi0_wait_ok : 111bc2 > ## spi0.c:326:5
|
||
|
111c18: c0 ef 40 2e [r2+0x0] &= 0xFFFFF3FF ## spi0.c:329:18
|
||
|
111c1c: 00 04 pc = [sp++] ## spi0.c:330:1
|
||
|
|
||
|
|
||
|
Run_App:
|
||
|
111c1e: 7b 04 [--sp] = {rets, r11-r4} ## bankSwitch.c:11:0
|
||
|
111c20: e2 8c sp += -0x50 ## bankSwitch.c:11:0
|
||
|
111c22: 04 16 r4 = r0 ## bankSwitch.c:11:0
|
||
|
111c24: 04 eb 05 00 {r2, r0} = [r4+] ## sdfile.c:29:60
|
||
|
111c28: ad 90 r5 = sp + 48 ## sdfile.c:29:60
|
||
|
111c2a: 4b 20 r3 = 0x20 ## sdfile.c:29:5
|
||
|
111c2c: 51 d6 r1 = r5 # ## sdfile.c:29:5
|
||
|
111c2e: 46 63 r6 = [r4+0xc] ## sdfile.c:29:11
|
||
|
111c30: c6 00 call r6 ## sdfile.c:29:5
|
||
|
111c32: 40 e1 02 50 r0 = r5 | 0x2 ## sdfile.c:32:24
|
||
|
111c36: 41 3e r1 = 0x1e ## sdfile.c:32:12
|
||
|
111c38: bf ea 4f fc call -0x762 <chip_crc16 : 1114da > ## sdfile.c:32:12
|
||
|
111c3c: 20 46 if (r0 == 0) goto 0x8c <Run_App+0xAC : 111cca > ## sdfile.c:32:12
|
||
|
111c3e: d8 e9 30 10 r1 = h[sp+48] (u) ## sdfile.c:35:29
|
||
|
111c42: 80 e8 42 10 if (r1 != r0) goto 0x84 <Run_App+0xAC : 111cca > ## sdfile.c:35:29
|
||
|
111c46: 50 ec 40 00 r1_r0 = d[r4+0x0] ## sdfile.c:37:31
|
||
|
111c4a: 02 f1 20 10 r2 = r1 + 0x20 # ## sdfile.c:37:96
|
||
|
111c4e: 45 63 r5 = [r4+0xc] ## sdfile.c:37:15
|
||
|
111c50: 89 90 r1 = sp + 16 ## sdfile.c:37:15
|
||
|
111c52: 4b 20 r3 = 0x20 ## sdfile.c:37:9
|
||
|
111c54: c5 00 call r5 ## sdfile.c:37:9
|
||
|
111c56: 05 25 r5 = [sp+20] ## sdfile.c:41:33
|
||
|
111c58: f8 e8 00 80 r8 = sp + 0 ## sdfile.c:41:33
|
||
|
111c5c: 17 3c r7 = -0x4 ## sdfile.c:41:33
|
||
|
111c5e: 04 92 goto 0x24 <Run_App+0x66 : 111c84 > ## sdfile.c:41:33
|
||
|
111c60: 50 ec 40 00 r1_r0 = d[r4+0x0] ## bankSwitch.c:24:57
|
||
|
111c64: 5a dc r2 = r5 + r1 # ## bankSwitch.c:24:68
|
||
|
111c66: 46 63 r6 = [r4+0xc] ## bankSwitch.c:24:19
|
||
|
111c68: 89 80 r1 = sp + 0 ## bankSwitch.c:24:19
|
||
|
111c6a: 43 30 r3 = 0x10 ## bankSwitch.c:24:13
|
||
|
111c6c: c6 00 call r6 ## bankSwitch.c:24:13
|
||
|
111c6e: 00 49 if (r0 == 0) goto 0x12 <Run_App+0x64 : 111c82 > ## bankSwitch.c:24:13
|
||
|
111c70: 88 80 r0 = sp + 0
|
||
|
111c72: 41 2e r1 = 0xe ## bankSwitch.c:25:19
|
||
|
111c74: bf ea 31 fc call -0x79e <chip_crc16 : 1114da > ## bankSwitch.c:25:19
|
||
|
111c78: 00 44 if (r0 == 0) goto 0x8 <Run_App+0x64 : 111c82 > ## bankSwitch.c:25:19
|
||
|
111c7a: 50 ed 8e 10 r1 = h[r8+0xe] (u) ## bankSwitch.c:29:32
|
||
|
111c7e: 00 e8 03 10 if (r1 == r0) goto 0x6 <Run_App+0x6A : 111c88 > ## bankSwitch.c:29:32
|
||
|
111c82: c7 21 r7 += 0x1 ## bankSwitch.c:16:13
|
||
|
111c84: f7 4d if (r7 != 0) goto -0x26 <Run_App+0x42 : 111c60 >
|
||
|
111c86: 14 81 goto 0x42 <Run_App+0xAC : 111cca >
|
||
|
111c88: f8 e8 00 b0 r11 = sp + 0
|
||
|
111c8c: d4 e9 04 80 r8 = [sp+4] ## bankSwitch.c:30:35
|
||
|
111c90: 49 e1 02 b0 r9 = r11 | 0x2
|
||
|
111c94: 16 3c r6 = -0x4
|
||
|
111c96: ca ff 04 35 1e 00 r10 = 0x1e3504 <__stub_doe+0xD0D08 : 1e3504 >
|
||
|
111c9c: 04 95 goto 0x2a <Run_App+0xAA : 111cc8 >
|
||
|
111c9e: 50 ec 40 00 r1_r0 = d[r4+0x0] ## bankSwitch.c:44:66
|
||
|
111ca2: d0 ec b8 20 r2 = [r11+0x8] ## bankSwitch.c:44:98
|
||
|
111ca6: 50 ed 90 30 r3 = h[r9+0x0] (u) ## bankSwitch.c:44:104
|
||
|
111caa: 51 d8 r1 += r5 # ## bankSwitch.c:44:77
|
||
|
111cac: 47 63 r7 = [r4+0xc] ## bankSwitch.c:44:19
|
||
|
111cae: 12 18 r2 += r1 ## bankSwitch.c:44:89
|
||
|
111cb0: 81 16 r1 = r8 ## bankSwitch.c:44:13
|
||
|
111cb2: c7 00 call r7 ## bankSwitch.c:44:13
|
||
|
111cb4: 00 48 if (r0 == 0) goto 0x10 <Run_App+0xA8 : 111cc6 > ## bankSwitch.c:44:13
|
||
|
111cb6: d0 ec a0 00 r0 = [r10+0x0] ## bankSwitch.c:52:27
|
||
|
111cba: 50 ed bc 10 r1 = h[r11+0xc] (u) ## bankSwitch.c:58:24
|
||
|
111cbe: 80 17 r0 = r0.l (u) ## bankSwitch.c:58:28
|
||
|
111cc0: 80 e8 01 10 if (r1 != r0) goto 0x2 <Run_App+0xA8 : 111cc6 > ## bankSwitch.c:58:28
|
||
|
111cc4: 80 44 if (r0 != 0) goto 0x8 <Run_App+0xB0 : 111cce >
|
||
|
111cc6: c6 21 r6 += 0x1 ## bankSwitch.c:16:13
|
||
|
111cc8: f6 4a if (r6 != 0) goto -0x2c <Run_App+0x80 : 111c9e >
|
||
|
111cca: 02 94 sp += 0x50
|
||
|
111ccc: 5b 04 {pc, r11-r4} = [sp++] ## bankSwitch.c:88:1
|
||
|
111cce: 64 e0 00 0b r0 = icfg ## bankSwitch.c:76:5
|
||
|
111cd2: b8 28 r0 &= 0xfffffeff ## bankSwitch.c:77:9
|
||
|
111cd4: 64 e0 80 0b icfg = r0 ## bankSwitch.c:78:5
|
||
|
111cd8: 60 00 cli ## bankSwitch.c:79:5
|
||
|
111cda: c2 ff e0 be 02 00 r2 = 0x2bee0 <boot_arg_list : 2bee0 > ## bankSwitch.c:85:5
|
||
|
111ce0: 40 15 r1_r0 = r5_r4 ## bankSwitch.c:85:5
|
||
|
111ce2: c8 00 call r8 ## bankSwitch.c:85:5
|
||
|
111ce4: f7 9f goto -0x2 <Run_App+0xC6 : 111ce4 > ## bankSwitch.c:87:5
|
||
|
|
||
|
|
||
|
spi_portd_a:
|
||
|
111ce6: 7c 04 [--sp] = {rets, r12-r4} ## boot_flash.c:73:0
|
||
|
111ce8: c4 ff 52 10 11 00 r4 = 0x111052 <ack_cmd+0xA : 111052 > ## boot_flash.c:73:0
|
||
|
111cee: 49 8e r1 = r4 + 0xe ## boot_flash.c:77:5
|
||
|
111cf0: c5 ff cc be 02 00 r5 = 0x2becc <spi_flash_io : 2becc > ## boot_flash.c:77:5
|
||
|
111cf6: 42 30 r2 = 0x10 ## boot_flash.c:77:5
|
||
|
111cf8: 50 16 r0 = r5 ## boot_flash.c:77:5
|
||
|
111cfa: bf ea b0 f1 call -0x1ca0 <memmove : 11005e > ## boot_flash.c:77:5
|
||
|
111cfe: c0 ff c4 be 02 00 r0 = 0x2bec4 <spi0_port : 2bec4 > ## boot_flash.c:79:27
|
||
|
111d04: d0 ec 00 b0 r11 = [r0+0x0] ## boot_flash.c:79:27
|
||
|
111d08: c0 ff 00 02 1f 00 r0 = 0x1f0200 <__stub_doe+0xDDA04 : 1f0200 > ## spi0.c:213:17
|
||
|
111d0e: 40 ea 00 00 [r0+0x0] = 0x0 ## spi0.c:213:17
|
||
|
111d12: c8 ff 00 1c 1e 00 r8 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## spi0.c:213:17
|
||
|
111d18: 40 ea 20 80 [r8+0x0] = 0x20 ## spi0.c:214:18
|
||
|
111d1c: 50 ee b1 00 r0 = b[r11+0x1] (u) ## spi0.c:215:28
|
||
|
111d20: d0 ec 85 00 [r8+0x4] = r0 ## spi0.c:215:19
|
||
|
111d24: 50 ed b0 00 r0 = h[r11+0x0] (u) ## spi0.c:217:26
|
||
|
111d28: ca ff c8 50 1e 00 r10 = 0x1e50c8 <__stub_doe+0xD28CC : 1e50c8 >
|
||
|
111d2e: d4 ef 40 ab [r10+0x50] &= 0xFFFCFFFF ## spi0.c:40:20
|
||
|
111d32: 80 a3 r0 = r0 >> 0x3 ## spi0.c:217:26
|
||
|
111d34: 61 e1 1f 00 r1 = r0 & 0x1F ## spi0.c:217:26
|
||
|
111d38: 11 b0 r1 = r1 << 0x10 ## spi0.c:41:29
|
||
|
111d3a: 64 e8 50 a1 [r10+0x50] |= r1 ## spi0.c:41:20
|
||
|
111d3e: 60 ff 1f 00 0f 00 if ((r0 & 0x1F) == 0) goto 0x1e <spi_portd_a+0x7C : 111d62 > ## spi0.c:41:20
|
||
|
111d44: 49 e0 ff bf r9 = -0x4001
|
||
|
111d48: 41 e0 00 40 r1 = 0x4000
|
||
|
111d4c: 32 e1 4c af r2 = r10 + -0xb4
|
||
|
111d50: 33 e1 fc 2f r3 = r2 + -0x4
|
||
|
111d54: 47 e0 ff df r7 = -0x2001
|
||
|
111d58: 30 e1 f4 2f r0 = r2 + -0xc
|
||
|
111d5c: 4c e0 00 20 r12 = 0x2000
|
||
|
111d60: 04 8b goto 0x16 <spi_portd_a+0x92 : 111d78 >
|
||
|
111d62: 49 e0 fb ff r9 = -0x5
|
||
|
111d66: 41 24 r1 = 0x4
|
||
|
111d68: 02 e1 0c a0 r2 = r10 + 0xc
|
||
|
111d6c: 33 e1 fc 2f r3 = r2 + -0x4
|
||
|
111d70: 17 37 r7 = -0x9
|
||
|
111d72: a0 16 r0 = r10
|
||
|
111d74: 4c e0 08 00 r12 = 0x8
|
||
|
111d78: 36 e1 f8 0f r6 = r0 + -0x8
|
||
|
111d7c: 64 e8 00 6c [r6+0x0] |= r12
|
||
|
111d80: 64 e8 02 07 [r0+0x0] &= r7
|
||
|
111d84: 64 e8 02 37 [r3+0x0] &= r7
|
||
|
111d88: 64 e8 02 27 [r2+0x0] &= r7
|
||
|
111d8c: c2 ef 01 a0 [r10+0x8] &= 0xFFFFFFFE
|
||
|
111d90: c3 ef 01 a0 [r10+0xc] &= 0xFFFFFFFE
|
||
|
111d94: c0 ef 01 a0 [r10+0x0] &= 0xFFFFFFFE
|
||
|
111d98: 02 ef 02 a0 [r10+0x8] |= 0x2
|
||
|
111d9c: c3 ef 02 a0 [r10+0xc] &= 0xFFFFFFFD
|
||
|
111da0: 00 ef 02 a0 [r10+0x0] |= 0x2
|
||
|
111da4: 64 e8 00 31 [r3+0x0] |= r1
|
||
|
111da8: 64 e8 02 29 [r2+0x0] &= r9
|
||
|
111dac: 64 e8 00 01 [r0+0x0] |= r1
|
||
|
111db0: 00 ef 20 a0 [r10+0x0] |= 0x20
|
||
|
111db4: 02 ef 20 a0 [r10+0x8] |= 0x20
|
||
|
111db8: c3 ef 20 a0 [r10+0xc] &= 0xFFFFFFDF
|
||
|
111dbc: bf ea 1c fd call -0x5c8 <spi_get_port : 1117f8 > ## spi0.c:219:26
|
||
|
111dc0: 01 16 r1 = r0 ## spi0.c:219:26
|
||
|
111dc2: 40 16 r0 = r4 ## spi0.c:219:2
|
||
|
111dc4: bf ea d2 fe call -0x25c <printf : 111b6c > ## spi0.c:219:2
|
||
|
111dc8: 50 ed b0 20 r2 = h[r11+0x0] (u) ## spi0.c:221:16
|
||
|
111dcc: d0 ec 80 10 r1 = [r8+0x0] ## spi0.c:221:16
|
||
|
111dd0: 00 e1 54 a0 r0 = r10 + 0x54 ## spi0.c:221:16
|
||
|
111dd4: 60 ff 07 20 06 00 if ((r2 & 0x7) == 0) goto 0xc <spi_portd_a+0x100 : 111de6 > ## spi0.c:221:9
|
||
|
111dda: 31 23 r1 |= 0x8 ## spi0.c:222:22
|
||
|
111ddc: d0 ec 81 10 [r8+0x0] = r1 ## spi0.c:222:22
|
||
|
111de0: 01 60 r1 = [r0+0x0] ## spi0.c:223:24
|
||
|
111de2: b9 21 r1 &= 0xfffffffd ## spi0.c:223:24
|
||
|
111de4: 04 85 goto 0xa <spi_portd_a+0x10A : 111df0 > ## spi0.c:223:24
|
||
|
111de6: b9 23 r1 &= 0xfffffff7 ## spi0.c:226:22
|
||
|
111de8: d0 ec 81 10 [r8+0x0] = r1 ## spi0.c:226:22
|
||
|
111dec: 01 60 r1 = [r0+0x0] ## spi0.c:227:24
|
||
|
111dee: 31 21 r1 |= 0x2 ## spi0.c:227:24
|
||
|
111df0: 81 60 [r0+0x0] = r1
|
||
|
111df2: 00 ef 01 80 [r8+0x0] |= 0x1 ## spi0.c:230:18
|
||
|
111df6: 40 21 r0 = 0x1 ## spi0.c:231:5
|
||
|
111df8: bf ea c6 fe call -0x274 <SPI0_cs : 111b88 > ## spi0.c:231:5
|
||
|
111dfc: 40 20 r0 = 0x0 ## norflash.c:220:5
|
||
|
111dfe: bf ea c3 fe call -0x27a <SPI0_cs : 111b88 > ## norflash.c:220:5
|
||
|
111e02: 68 2b r0 = 0xab ## norflash.c:222:5
|
||
|
111e04: bf ea e6 fe call -0x234 <SPI0_WriteByte : 111bd4 > ## norflash.c:222:5
|
||
|
111e08: 78 3f r0 = 0xff ## norflash.c:225:5
|
||
|
111e0a: bf ea e3 fe call -0x23a <SPI0_WriteByte : 111bd4 > ## norflash.c:225:5
|
||
|
111e0e: 78 3f r0 = 0xff ## norflash.c:226:5
|
||
|
111e10: bf ea e0 fe call -0x240 <SPI0_WriteByte : 111bd4 > ## norflash.c:226:5
|
||
|
111e14: 78 3f r0 = 0xff ## norflash.c:227:5
|
||
|
111e16: bf ea dd fe call -0x246 <SPI0_WriteByte : 111bd4 > ## norflash.c:227:5
|
||
|
111e1a: bf ea e2 fe call -0x23c <SPI0_ReadByte : 111be2 > ## norflash.c:229:5
|
||
|
111e1e: 40 21 r0 = 0x1 ## norflash.c:230:5
|
||
|
111e20: bf ea b2 fe call -0x29c <SPI0_cs : 111b88 > ## norflash.c:230:5
|
||
|
111e24: 47 e0 6a ff r7 = -0x96
|
||
|
111e28: 04 92 goto 0x24 <spi_portd_a+0x168 : 111e4e >
|
||
|
111e2a: 40 20 r0 = 0x0 ## norflash.c:57:9
|
||
|
111e2c: bf ea ac fe call -0x2a8 <SPI0_cs : 111b88 > ## norflash.c:57:9
|
||
|
111e30: 40 25 r0 = 0x5 ## norflash.c:58:9
|
||
|
111e32: bf ea cf fe call -0x262 <SPI0_WriteByte : 111bd4 > ## norflash.c:58:9
|
||
|
111e36: bf ea d4 fe call -0x258 <SPI0_ReadByte : 111be2 > ## norflash.c:59:19
|
||
|
111e3a: 06 16 r6 = r0 ## norflash.c:59:19
|
||
|
111e3c: 40 21 r0 = 0x1 ## norflash.c:60:9
|
||
|
111e3e: bf ea a3 fe call -0x2ba <SPI0_cs : 111b88 > ## norflash.c:60:9
|
||
|
111e42: 56 e8 05 00 if ((r6 & 0x1) == 0) goto 0xa <spi_portd_a+0x16A : 111e50 > ## norflash.c:60:9
|
||
|
111e46: 40 21 r0 = 0x1 ## norflash.c:65:9
|
||
|
111e48: bf ea 6c fb call -0x928 <mdelay : 111524 > ## norflash.c:65:9
|
||
|
111e4c: c7 21 r7 += 0x1 ## norflash.c:65:9
|
||
|
111e4e: f7 4d if (r7 != 0) goto -0x26 <spi_portd_a+0x144 : 111e2a >
|
||
|
111e50: 40 20 r0 = 0x0 ## norflash.c:236:5
|
||
|
111e52: 46 20 r6 = 0x0 ## norflash.c:236:5
|
||
|
111e54: bf ea 98 fe call -0x2d0 <SPI0_cs : 111b88 > ## norflash.c:236:5
|
||
|
111e58: 58 26 r0 = 0x66 ## norflash.c:238:5
|
||
|
111e5a: bf ea d1 fe call -0x25e <SPI0_4WriteByte : 111c00 > ## norflash.c:238:5
|
||
|
111e5e: 40 21 r0 = 0x1 ## norflash.c:240:5
|
||
|
111e60: bf ea 92 fe call -0x2dc <SPI0_cs : 111b88 > ## norflash.c:240:5
|
||
|
111e64: 40 20 r0 = 0x0 ## norflash.c:242:5
|
||
|
111e66: bf ea 8f fe call -0x2e2 <SPI0_cs : 111b88 > ## norflash.c:242:5
|
||
|
111e6a: 60 39 r0 = 0x99 ## norflash.c:244:5
|
||
|
111e6c: bf ea c8 fe call -0x270 <SPI0_4WriteByte : 111c00 > ## norflash.c:244:5
|
||
|
111e70: 40 21 r0 = 0x1 ## norflash.c:246:5
|
||
|
111e72: bf ea 89 fe call -0x2ee <SPI0_cs : 111b88 > ## norflash.c:246:5
|
||
|
111e76: 40 20 r0 = 0x0 ## norflash.c:253:5
|
||
|
111e78: bf ea 86 fe call -0x2f4 <SPI0_cs : 111b88 > ## norflash.c:253:5
|
||
|
111e7c: 58 26 r0 = 0x66 ## norflash.c:254:5
|
||
|
111e7e: bf ea a9 fe call -0x2ae <SPI0_WriteByte : 111bd4 > ## norflash.c:254:5
|
||
|
111e82: 40 21 r0 = 0x1 ## norflash.c:256:5
|
||
|
111e84: bf ea 80 fe call -0x300 <SPI0_cs : 111b88 > ## norflash.c:256:5
|
||
|
111e88: 40 20 r0 = 0x0 ## norflash.c:258:5
|
||
|
111e8a: bf ea 7d fe call -0x306 <SPI0_cs : 111b88 > ## norflash.c:258:5
|
||
|
111e8e: 60 39 r0 = 0x99 ## norflash.c:260:5
|
||
|
111e90: bf ea a0 fe call -0x2c0 <SPI0_WriteByte : 111bd4 > ## norflash.c:260:5
|
||
|
111e94: 40 21 r0 = 0x1 ## norflash.c:262:5
|
||
|
111e96: bf ea 77 fe call -0x312 <SPI0_cs : 111b88 > ## norflash.c:262:5
|
||
|
111e9a: 40 22 r0 = 0x2 ## norflash.c:263:5
|
||
|
111e9c: bf ea 42 fb call -0x97c <mdelay : 111524 > ## norflash.c:263:5
|
||
|
111ea0: d6 61 [r5+0x4] = r6 ## boot_flash.c:81:29
|
||
|
111ea2: c0 ff e0 be 02 00 r0 = 0x2bee0 <boot_arg_list : 2bee0 > ## boot_flash.c:81:29
|
||
|
111ea8: 8e 42 b[r0+0x2] = r6 ## boot_flash.c:82:28
|
||
|
111eaa: 04 88 goto 0x10 <spi_portd_a+0x1D6 : 111ebc > ## boot_flash.c:82:28
|
||
|
111eac: 50 16 r0 = r5 ## boot_flash.c:85:9
|
||
|
111eae: bf ea b6 fe call -0x294 <Run_App : 111c1e > ## boot_flash.c:85:9
|
||
|
111eb2: 48 9e r0 = r4 + 0x1e ## boot_flash.c:86:35
|
||
|
111eb4: d8 ec 0a 06 r0 = [r0+r6<<2] ## boot_flash.c:86:35
|
||
|
111eb8: d0 61 [r5+0x4] = r0 ## boot_flash.c:86:33
|
||
|
111eba: c6 21 r6 += 0x1 ## boot_flash.c:84:37
|
||
|
111ebc: 86 f8 f6 0b if (r6 != 0x5) goto -0x14 <spi_portd_a+0x1C6 : 111eac >
|
||
|
111ec0: 40 ea 00 80 [r8+0x0] = 0x0 ## spi0.c:118:18
|
||
|
111ec4: bf ea 98 fc call -0x6d0 <spi_get_port : 1117f8 > ## spi0.c:120:34
|
||
|
111ec8: 01 16 r1 = r0 ## spi0.c:120:34
|
||
|
111eca: 00 e1 2e 40 r0 = r4 + 0x2e ## spi0.c:120:2
|
||
|
111ece: bf ea 4d fe call -0x366 <printf : 111b6c > ## spi0.c:120:2
|
||
|
111ed2: bf ea 91 fc call -0x6de <spi_get_port : 1117f8 > ## spi0.c:122:16
|
||
|
111ed6: c2 ef 03 a0 [r10+0x8] &= 0xFFFFFFFC ## spi0.c:122:16
|
||
|
111eda: c3 ef 03 a0 [r10+0xc] &= 0xFFFFFFFC ## spi0.c:122:16
|
||
|
111ede: d0 ec a0 10 r1 = [r10+0x0] ## spi0.c:122:16
|
||
|
111ee2: 00 4f if (r0 == 0) goto 0x1e <spi_portd_a+0x21C : 111f02 >
|
||
|
111ee4: 72 e1 03 10 r2 = r1 & 0xFFFFFFFC ## spi0.c:153:23
|
||
|
111ee8: 40 e0 00 20 r0 = 0x2000 ## spi0.c:153:23
|
||
|
111eec: 41 e0 ff df r1 = -0x2001
|
||
|
111ef0: 44 e0 00 40 r4 = 0x4000
|
||
|
111ef4: 36 e1 40 af r6 = r10 + -0xc0
|
||
|
111ef8: 6b 8c r3 = r6 + 0xc
|
||
|
111efa: 47 e0 ff bf r7 = -0x4001
|
||
|
111efe: 6d 88 r5 = r6 + 0x8
|
||
|
111f00: 04 8b goto 0x16 <spi_portd_a+0x232 : 111f18 >
|
||
|
111f02: 42 e1 03 10 r2 = r1 | 0x3 ## spi0.c:127:23
|
||
|
111f06: 40 28 r0 = 0x8 ## spi0.c:127:23
|
||
|
111f08: 11 37 r1 = -0x9
|
||
|
111f0a: 44 24 r4 = 0x4
|
||
|
111f0c: 03 e1 0c a0 r3 = r10 + 0xc
|
||
|
111f10: 17 3b r7 = -0x5
|
||
|
111f12: 35 e1 fc 3f r5 = r3 + -0x4
|
||
|
111f16: a6 16 r6 = r10
|
||
|
111f18: d0 ec a1 20 [r10+0x0] = r2
|
||
|
111f1c: 64 e8 02 57 [r5+0x0] &= r7
|
||
|
111f20: 64 e8 02 37 [r3+0x0] &= r7
|
||
|
111f24: 64 e8 00 64 [r6+0x0] |= r4
|
||
|
111f28: c2 ef 20 a0 [r10+0x8] &= 0xFFFFFFDF
|
||
|
111f2c: c3 ef 20 a0 [r10+0xc] &= 0xFFFFFFDF
|
||
|
111f30: 00 ef 20 a0 [r10+0x0] |= 0x20
|
||
|
111f34: 64 e8 02 31 [r3+0x0] &= r1
|
||
|
111f38: 64 e8 00 50 [r5+0x0] |= r0
|
||
|
111f3c: 64 e8 00 60 [r6+0x0] |= r0
|
||
|
111f40: 5c 04 {pc, r12-r4} = [sp++] ## boot_flash.c:90:1
|
||
|
|
||
|
|
||
|
delay:
|
||
|
111f42: e2 9f sp += -0x4 ## timer.c:81:0
|
||
|
111f44: 80 20 [sp] = r0 ## timer.c:81:0
|
||
|
111f46: 04 81 goto 0x2 <delay+0x8 : 111f4a > ## timer.c:81:0
|
||
|
111f48: 00 00 nop ## timer.c:86:9
|
||
|
111f4a: 00 20 r0 = [sp] ## timer.c:85:16
|
||
|
111f4c: 31 e1 ff 0f r1 = r0 + -0x1 ## timer.c:85:16
|
||
|
111f50: 81 20 [sp] = r1 ## timer.c:85:16
|
||
|
111f52: f0 5a if (r0 != 0) goto -0xc <delay+0x6 : 111f48 > ## timer.c:85:16
|
||
|
111f54: 02 81 sp += 0x4
|
||
|
111f56: 80 00 rts ## timer.c:89:1
|
||
|
|
||
|
|
||
|
main:
|
||
|
111f58: 40 22 r0 = 0x2 ## main.c:82:0
|
||
|
111f5a: 41 30 r1 = 0x10 ## p33.c:77:5
|
||
|
111f5c: 44 22 r4 = 0x2 ## p33.c:77:5
|
||
|
111f5e: bf ea 22 f9 call -0xdbc <p33_or_1byte : 1111a6 > ## p33.c:77:5
|
||
|
111f62: c0 ff 20 19 1e 00 r0 = 0x1e1920 <__stub_doe+0xCF124 : 1e1920 >
|
||
|
111f68: 42 f0 00 e0 r2 = -0x2000 # ## clock.c:90:5
|
||
|
111f6c: 01 61 r1 = [r0+0x4] ## clock.c:90:5
|
||
|
111f6e: a1 19 r1 &= r2 ## clock.c:90:5
|
||
|
111f70: 42 e0 06 07 r2 = 0x706 ## clock.c:90:5
|
||
|
111f74: 21 19 r1 |= r2 ## clock.c:90:5
|
||
|
111f76: 81 61 [r0+0x4] = r1 ## clock.c:90:5
|
||
|
111f78: c1 ff ca 9c 19 33 r1 = 0x33199cca <__stub_doe+0x330874CE : 33199cca > ## clock.c:91:22
|
||
|
111f7e: 81 60 [r0+0x0] = r1 ## clock.c:91:22
|
||
|
111f80: 00 ef 01 00 [r0+0x0] |= 0x1 ## clock.c:92:22
|
||
|
111f84: 58 32 r0 = 0x72 ## p33.c:94:5
|
||
|
111f86: 41 30 r1 = 0x10 ## p33.c:94:5
|
||
|
111f88: bf ea 9e f8 call -0xec4 <p33_tx_1byte : 1110c8 > ## p33.c:94:5
|
||
|
111f8c: 58 32 r0 = 0x72 ## p33.c:95:5
|
||
|
111f8e: 41 21 r1 = 0x1 ## p33.c:95:5
|
||
|
111f90: bf ea 9a f8 call -0xecc <p33_tx_1byte : 1110c8 > ## p33.c:95:5
|
||
|
111f94: c6 ff c8 50 1e 00 r6 = 0x1e50c8 <__stub_doe+0xD28CC : 1e50c8 >
|
||
|
111f9a: 0e ef 04 60 [r6+0x38] |= 0x4 ## boot_skip.c:54:5
|
||
|
111f9e: 0e ef 08 60 [r6+0x38] |= 0x8 ## boot_skip.c:55:5
|
||
|
111fa2: 0e ef 00 6f [r6+0x38] |= 0x200 ## boot_skip.c:58:5
|
||
|
111fa6: 0e ef 80 6e [r6+0x38] |= 0x400 ## boot_skip.c:59:5
|
||
|
111faa: 40 20 r0 = 0x0 ## boot_skip.c:71:5
|
||
|
111fac: 45 20 r5 = 0x0 ## boot_skip.c:71:5
|
||
|
111fae: bf ea 11 fa call -0xbde <set_timer3_captrue_dp : 1113d4 > ## boot_skip.c:71:5
|
||
|
111fb2: 40 34 r0 = 0x14 ## boot_skip.c:72:5
|
||
|
111fb4: bf ea 60 f9 call -0xd40 <udelay : 111278 > ## boot_skip.c:72:5
|
||
|
111fb8: c7 ff 00 07 1e 00 r7 = 0x1e0700 <__stub_doe+0xCDF04 : 1e0700 > ## boot_skip.c:72:5
|
||
|
111fbe: f5 62 [r7+0x8] = r5 ## boot_skip.c:75:20
|
||
|
111fc0: f5 61 [r7+0x4] = r5 ## boot_skip.c:76:20
|
||
|
111fc2: c8 ff 40 10 11 00 r8 = 0x111040 <norflash_check_in.spi0_portb_config+0xC : 111040 > ## boot_skip.c:76:20
|
||
|
111fc8: 80 d6 r0 = r8 # ## boot_skip.c:80:22
|
||
|
111fca: f4 60 [r7+0x0] = r4 ## boot_skip.c:77:20
|
||
|
111fcc: bf ea 24 fa call -0xbb8 <clk_get : 111418 > ## boot_skip.c:80:22
|
||
|
111fd0: 60 e0 7a 1c r1 = 0xFA00 ## boot_skip.c:80:42
|
||
|
111fd4: f4 e1 00 01 r0 = r0 / r1 (u) ## boot_skip.c:80:42
|
||
|
111fd8: e0 e1 0a 00 r0 = r0 * 0xA ## boot_skip.c:80:49
|
||
|
111fdc: 34 e1 00 7f r4 = r7 + -0x100 ## boot_skip.c:80:49
|
||
|
111fe0: c0 62 [r4+0x8] = r0 ## boot_skip.c:80:20
|
||
|
111fe2: c5 61 [r4+0x4] = r5 ## boot_skip.c:81:20
|
||
|
111fe4: 40 ea 80 4c [r4+0x0] = 0x4000 ## boot_skip.c:82:20
|
||
|
111fe8: 00 ef 80 7c [r7+0x0] |= 0x4000 ## boot_skip.c:86:20
|
||
|
111fec: 40 ea 31 40 [r4+0x0] = 0x31 ## boot_skip.c:87:20
|
||
|
111ff0: 01 e1 ff 15 r1 = r1 + 0x5ff ## boot_skip.c:87:20
|
||
|
111ff4: c9 ff fe ff 01 00 r9 = 0x1fffe <_system_bss_end+0xEBDA : 1fffe > ## boot_skip.c:87:20
|
||
|
111ffa: 4a e0 7c 6b r10 = 0x6b7c ## boot_skip.c:87:20
|
||
|
111ffe: 43 e0 ef 16 r3 = 0x16ef ## boot_skip.c:87:20
|
||
|
112002: 40 60 r0 = [r4+0x0] ## boot_skip.c:89:13
|
||
|
112004: 88 17 r0 = r0.l (s) ## boot_skip.c:89:12
|
||
|
112006: 80 fd 31 00 ifs (r0 < 0x0) goto 0x62 <main+0x114 : 11206c > ## boot_skip.c:89:12
|
||
|
11200a: 70 60 r0 = [r7+0x0] ## boot_skip.c:90:13
|
||
|
11200c: 50 e8 f9 79 if ((r0 & 0x8000) == 0) goto -0xe <main+0xAA : 112002 > ## boot_skip.c:90:13
|
||
|
112010: 00 ef 80 7c [r7+0x0] |= 0x4000 ## boot_skip.c:91:28
|
||
|
112014: 11 a1 r1 = r1 << 0x1 ## boot_skip.c:91:28
|
||
|
112016: 90 f1 12 19 r1 = r1 & r9 # ## boot_skip.c:91:28
|
||
|
11201a: 60 6f r0 = [r6+0x3c] ## boot_skip.c:93:17
|
||
|
11201c: b0 e1 84 00 r0 = uextra(r0, p:0x1, l:0x1) ## boot_skip.c:93:17
|
||
|
112020: 01 19 r1 |= r0 ## boot_skip.c:93:17
|
||
|
112022: 90 17 r0 = r1.l (u) ## boot_skip.c:104:39
|
||
|
112024: 42 25 r2 = 0x5 ## boot_skip.c:44:9
|
||
|
112026: 90 e8 00 0a if (r0 != r10) { ## boot_skip.c:44:9
|
||
|
11202a: 42 20 r2 = 0x0
|
||
|
} ## boot_skip.c:44:9
|
||
|
11202c: 45 21 r5 = 0x1 ## boot_skip.c:44:9
|
||
|
11202e: 90 e8 00 03 if (r0 != r3) { ## boot_skip.c:44:9
|
||
|
112032: 25 16 r5 = r2
|
||
|
} ## boot_skip.c:44:9
|
||
|
112034: 75 46 if (r5 == 0) goto -0x34 <main+0xAA : 112002 >
|
||
|
112036: ce ef 01 60 [r6+0x38] &= 0xFFFFFFFE ## boot_skip.c:107:17
|
||
|
11203a: ce ef 02 60 [r6+0x38] &= 0xFFFFFFFD ## boot_skip.c:108:17
|
||
|
11203e: ce ef 04 60 [r6+0x38] &= 0xFFFFFFFB ## boot_skip.c:109:17
|
||
|
112042: ce ef 08 60 [r6+0x38] &= 0xFFFFFFF7 ## boot_skip.c:110:17
|
||
|
112046: 40 ea 80 4c [r4+0x0] = 0x4000 ## boot_skip.c:111:32
|
||
|
11204a: 41 ea 00 40 [r4+0x4] = 0x0 ## boot_skip.c:112:32
|
||
|
11204e: 80 16 r0 = r8 ## boot_skip.c:113:34
|
||
|
112050: bf ea e2 f9 call -0xc3c <clk_get : 111418 > ## boot_skip.c:113:34
|
||
|
112054: 60 e0 7a 1c r1 = 0xFA00 ## boot_skip.c:113:54
|
||
|
112058: f4 e1 00 01 r0 = r0 / r1 (u) ## boot_skip.c:113:54
|
||
|
11205c: 00 a1 r0 = r0 << 0x1 ## boot_skip.c:113:61
|
||
|
11205e: c0 62 [r4+0x8] = r0 ## boot_skip.c:113:32
|
||
|
112060: 40 ea 31 40 [r4+0x0] = 0x31 ## boot_skip.c:114:32
|
||
|
112064: 40 60 r0 = [r4+0x0] ## boot_skip.c:115:25
|
||
|
112066: 50 e8 fd 79 if ((r0 & 0x8000) == 0) goto -0x6 <main+0x10C : 112064 > ## boot_skip.c:115:25
|
||
|
11206a: 04 81 goto 0x2 <main+0x116 : 11206e > ## boot_skip.c:115:25
|
||
|
11206c: 45 20 r5 = 0x0
|
||
|
11206e: 40 20 r0 = 0x0 ## boot_skip.c:121:5
|
||
|
112070: bf ea f3 f9 call -0xc1a <set_timer3_captrue_dp_disable : 11145a > ## boot_skip.c:121:5
|
||
|
112074: 40 e0 00 40 r0 = 0x4000 ## boot_skip.c:122:20
|
||
|
112078: f0 60 [r7+0x0] = r0 ## boot_skip.c:122:20
|
||
|
11207a: c0 60 [r4+0x0] = r0 ## boot_skip.c:123:20
|
||
|
11207c: 0e ef 04 60 [r6+0x38] |= 0x4 ## boot_skip.c:125:5
|
||
|
112080: 0e ef 08 60 [r6+0x38] |= 0x8 ## boot_skip.c:126:5
|
||
|
112084: ce ef 10 60 [r6+0x38] &= 0xFFFFFFEF ## boot_skip.c:129:5
|
||
|
112088: ce ef 20 60 [r6+0x38] &= 0xFFFFFFDF ## boot_skip.c:130:5
|
||
|
11208c: ce ef 40 60 [r6+0x38] &= 0xFFFFFFBF ## boot_skip.c:132:5
|
||
|
112090: ce ef 80 60 [r6+0x38] &= 0xFFFFFF7F ## boot_skip.c:133:5
|
||
|
112094: 85 43 if (r5 != 0) goto 0x6 <main+0x144 : 11209c > ## boot_skip.c:133:5
|
||
|
112096: bf ea 27 f1 call -0x1db2 <nvram_boot_state : 1102e8 > ## boot_skip.c:148:11
|
||
|
11209a: 05 16 r5 = r0 ## boot_skip.c:148:11
|
||
|
11209c: 30 e1 ff 5f r0 = r5 + -0x1 ## main.c:107:5
|
||
|
1120a0: c1 ff e0 be 02 00 r1 = 0x2bee0 <boot_arg_list : 2bee0 >
|
||
|
1120a6: 39 e1 0c 4a r9 = r4 + -0x5f4
|
||
|
1120aa: 00 f9 05 04 if (r0 >= 0x2) goto 0xa <main+0x160 : 1120b8 >
|
||
|
1120ae: 1f 16 r15 = r1
|
||
|
1120b0: 40 23 r0 = 0x3 ## main.c:119:9
|
||
|
1120b2: bf ea 4c fb call -0x968 <check_usb_sof : 11174e > ## main.c:119:9
|
||
|
1120b6: 34 96 goto 0xec <main+0x24C : 1121a4 > ## main.c:119:9
|
||
|
1120b8: 85 f8 05 06 if (r5 != 0x3) goto 0xa <main+0x16E : 1120c6 >
|
||
|
1120bc: 1f 16 r15 = r1
|
||
|
1120be: 40 20 r0 = 0x0 ## main.c:112:9
|
||
|
1120c0: bf ea e8 fa call -0xa30 <uart_upgrade_init : 111694 > ## main.c:112:9
|
||
|
1120c4: 34 8f goto 0xde <main+0x24C : 1121a4 > ## main.c:112:9
|
||
|
1120c6: c2 14 r10 = 0
|
||
|
1120c8: 1f 16 r15 = r1
|
||
|
1120ca: 52 ee 10 a0 b[r1+0x0] = r10 ## main.c:34:31
|
||
|
1120ce: cb ff de be 02 00 r11 = 0x2bede <g_spi_boot_port : 2bede > ## main.c:34:31
|
||
|
1120d4: c5 ff c4 be 02 00 r5 = 0x2bec4 <spi0_port : 2bec4 > ## main.c:34:31
|
||
|
1120da: 4c e0 01 00 r12 = 0x1
|
||
|
1120de: 4d e0 00 40 r13 = 0x4000
|
||
|
1120e2: c0 14 r8 = 0
|
||
|
1120e4: 04 8a goto 0x14 <main+0x1A2 : 1120fa >
|
||
|
1120e6: bf ea c7 f9 call -0xc72 <wdt_clr : 111478 > ## main.c:62:9
|
||
|
1120ea: bf ea d7 f8 call -0xe52 <flash_poweron : 11129c > ## main.c:64:9
|
||
|
1120ee: 40 2a r0 = 0xa ## main.c:66:9
|
||
|
1120f0: bf ea 18 fa call -0xbd0 <mdelay : 111524 > ## main.c:66:9
|
||
|
1120f4: 04 82 goto 0x4 <main+0x1A2 : 1120fa > ## main.c:66:9
|
||
|
1120f6: c0 14 r8 = 0
|
||
|
1120f8: f7 96 goto -0x14 <main+0x18E : 1120e6 >
|
||
|
1120fa: 50 ee b0 e0 r14 = b[r11+0x0] (u) ## boot_init.c:92:12
|
||
|
1120fe: 3e ea 04 c0 if ((r14 & 0x4) != 0) {
|
||
|
112102: 52 ee 54 c0 b[r5+0x4] = r12 ## boot_flash.c:104:25
|
||
|
112106: c0 ff 30 10 11 00 r0 = 0x111030 <norflash_check_in.spi0_porta_config : 111030 > ## boot_flash.c:105:33
|
||
|
11210c: d0 60 [r5+0x0] = r0 ## boot_flash.c:105:33
|
||
|
11210e: bf ea ea fd call -0x42c
|
||
|
} <spi_portd_a : 111ce6 > ## boot_flash.c:106:9
|
||
|
112112: 3e ea 08 c0 if ((r14 & 0x8) != 0) { ## boot_flash.c:106:9
|
||
|
112116: 52 ee 54 c0 b[r5+0x4] = r12 ## boot_flash.c:116:25
|
||
|
11211a: c0 ff 34 10 11 00 r0 = 0x111034 <norflash_check_in.spi0_portb_config : 111034 > ## boot_flash.c:117:33
|
||
|
112120: d0 60 [r5+0x0] = r0 ## boot_flash.c:117:33
|
||
|
112122: bf ea e0 fd call -0x440
|
||
|
} <spi_portd_a : 111ce6 > ## boot_flash.c:118:9
|
||
|
112126: c5 ef 10 60 [r6+0x14] &= 0xFFFFFFEF ## norflash.c:409:19
|
||
|
11212a: c4 ef 10 60 [r6+0x10] &= 0xFFFFFFEF ## norflash.c:410:19
|
||
|
11212e: 00 ef 10 60 [r6+0x0] |= 0x10 ## norflash.c:411:19
|
||
|
112132: c2 ef 10 60 [r6+0x8] &= 0xFFFFFFEF ## norflash.c:412:19
|
||
|
112136: 03 ef 10 60 [r6+0xc] |= 0x10 ## norflash.c:413:19
|
||
|
11213a: 40 21 r0 = 0x1 ## norflash.c:415:5
|
||
|
11213c: bf ea f2 f9 call -0xc1c <mdelay : 111524 > ## norflash.c:415:5
|
||
|
112140: 40 20 r0 = 0x0 ## norflash.c:416:5
|
||
|
112142: bf ea 7a f8 call -0xf0c <spi_cs_pu : 11123a > ## norflash.c:416:5
|
||
|
112146: 88 f8 29 00 if (r8 != 0x0) goto 0x52 <main+0x244 : 11219c > ## norflash.c:416:5
|
||
|
11214a: d0 ec 41 d0 [r4+0x0] = r13 ## clock.c:173:20
|
||
|
11214e: d0 ec 71 d0 [r7+0x0] = r13 ## clock.c:174:20
|
||
|
112152: c0 ef 30 90 [r9+0x0] &= 0xFFFFFFCF ## clock.c:177:24
|
||
|
112156: 42 ea ff 73 [r7+0x8] = 0xFFFFFFFF ## clock.c:178:20
|
||
|
11215a: d0 ec 75 a0 [r7+0x4] = r10 ## clock.c:179:20
|
||
|
11215e: 40 e0 89 40 r0 = 0x4089 ## clock.c:180:20
|
||
|
112162: f0 60 [r7+0x0] = r0 ## clock.c:180:20
|
||
|
112164: 42 ea fa 4c [r4+0x8] = 0x7D00 ## clock.c:182:20
|
||
|
112168: d0 ec 45 a0 [r4+0x4] = r10 ## clock.c:183:20
|
||
|
11216c: 40 e0 01 40 r0 = 0x4001 ## clock.c:184:20
|
||
|
112170: c0 60 [r4+0x0] = r0 ## clock.c:184:20
|
||
|
112172: 40 60 r0 = [r4+0x0] ## clock.c:188:24
|
||
|
112174: 50 e8 06 7a if ((r0 & 0x8000) != 0) goto 0xc <main+0x22C : 112184 > ## clock.c:188:24
|
||
|
112178: 70 61 r0 = [r7+0x4] ## clock.c:193:24
|
||
|
11217a: 80 f9 fa 17 if (r0 < 0xb) goto -0xc <main+0x21A : 112172 > ## clock.c:193:24
|
||
|
11217e: 50 ee f1 80 r8 = b[r15+0x1] (u) ## clock.c:198:20
|
||
|
112182: 04 83 goto 0x6 <main+0x232 : 11218a >
|
||
|
112184: c0 14 r8 = 0
|
||
|
112186: 52 ee f1 80 b[r15+0x1] = r8 ## clock.c:189:36
|
||
|
11218a: d0 ec 71 d0 [r7+0x0] = r13 ## clock.c:198:20
|
||
|
11218e: d0 ec 41 d0 [r4+0x0] = r13 ## clock.c:199:20
|
||
|
112192: 40 21 r0 = 0x1 ## main.c:50:13
|
||
|
112194: bf ea 7e fa call -0xb04 <uart_upgrade_init : 111694 > ## main.c:50:13
|
||
|
112198: 08 f8 ad 01 if (r8 == 0x0) goto -0xa6 <main+0x19E : 1120f6 >
|
||
|
11219c: 40 20 r0 = 0x0 ## main.c:56:23
|
||
|
11219e: bf ea d6 fa call -0xa54 <check_usb_sof : 11174e > ## main.c:56:23
|
||
|
1121a2: 50 41 if (r0 == 0) goto -0xbe <main+0x18E : 1120e6 >
|
||
|
1121a4: c0 ff 40 13 01 00 r0 = 0x11340 <var_bss_begin : 11340 >
|
||
|
1121aa: 44 f0 a0 0f r4 = 0xfa0 #
|
||
|
1121ae: 02 61 r2 = [r0+0x4]
|
||
|
1121b0: 40 20 r0 = 0x0
|
||
|
1121b2: d0 ec f5 00 [r15+0x4] = r0 ## clock.c:110:28
|
||
|
1121b6: 31 e1 60 20 r1 = r2 + -0xfa0 ## clock.c:112:10
|
||
|
1121ba: a3 e0 00 20 r3 = 0x0 - r2 ## clock.c:112:10
|
||
|
1121be: c2 ff 00 09 3d 00 r2 = 0x3d0900 <__stub_doe+0x2BE104 : 3d0900 > ## clock.c:112:10
|
||
|
1121c4: e5 e0 fb 7c r5 = r7 + 0x7D80 ## clock.c:112:10
|
||
|
1121c8: 04 86 goto 0xc <main+0x27E : 1121d6 > ## clock.c:112:10
|
||
|
1121ca: 52 18 r2 += r5 ## clock.c:112:5
|
||
|
1121cc: 31 e1 30 18 r1 = r1 + -0x7d0 ## clock.c:112:5
|
||
|
1121d0: c0 24 r0 += 0x4 ## clock.c:112:5
|
||
|
1121d2: 04 e1 d0 47 r4 = r4 + 0x7d0 ## clock.c:112:43
|
||
|
1121d6: c6 a7 r6 = r4 >> 0x7 ## clock.c:112:5
|
||
|
1121d8: 26 fc 0c ec if (r6 > 0x176) goto 0x18 <main+0x29C : 1121f4 > ## clock.c:112:5
|
||
|
1121dc: 36 1d r6 = r3 + r4 ## clock.c:114:13
|
||
|
1121de: b6 ee ff 0f ifs (r6 <= -0x1) { ## clock.c:114:13
|
||
|
1121e2: 16 16 r6 = r1
|
||
|
} ## clock.c:114:13
|
||
|
1121e4: 0c ff e8 63 f0 ff ifs (r6 > 0x3e8) goto -0x20 <main+0x272 : 1121ca > ## clock.c:114:13
|
||
|
1121ea: d0 ec f5 20 [r15+0x4] = r2 ## clock.c:115:36
|
||
|
1121ee: 40 e1 51 05 r0 = r0 | 0x34400000 ## clock.c:117:13
|
||
|
1121f2: 04 81 goto 0x2 <main+0x29E : 1121f6 > ## clock.c:117:13
|
||
|
1121f4: 10 38 r0 = -0x8
|
||
|
1121f6: d0 ec 95 03 [r9+0x34] = r0 ## clock.c:125:23
|
||
|
1121fa: c0 ff ee 30 a0 1f r0 = 0x1fa030ee <__stub_doe+0x1F8F08F2 : 1fa030ee > ## clock.c:126:24
|
||
|
112200: d0 ec 99 03 [r9+0x38] = r0 ## clock.c:126:24
|
||
|
112204: 0d ef 01 90 [r9+0x34] |= 0x1 ## clock.c:128:23
|
||
|
112208: 40 2a r0 = 0xa ## clock.c:130:5
|
||
|
11220a: bf ea 35 f8 call -0xf96 <udelay : 111278 > ## clock.c:130:5
|
||
|
11220e: 0d ef 02 90 [r9+0x34] |= 0x2 ## clock.c:131:23
|
||
|
112212: 68 20 r0 = 0xa0 ## clock.c:132:5
|
||
|
112214: bf ea 30 f8 call -0xfa0 <udelay : 111278 > ## clock.c:132:5
|
||
|
112218: c1 ef 03 90 [r9+0x4] &= 0xFFFFFFFC ## clock.c:140:24
|
||
|
11221c: c2 ef 03 90 [r9+0x8] &= 0xFFFFFFFC ## clock.c:144:24
|
||
|
112220: c2 ef 3c 90 [r9+0x8] &= 0xFFFFFFC3 ## clock.c:145:24
|
||
|
112224: 02 ef 20 90 [r9+0x8] |= 0x20 ## clock.c:146:24
|
||
|
112228: 00 ef c0 90 [r9+0x0] |= 0xC0 ## clock.c:148:24
|
||
|
11222c: 40 2a r0 = 0xa ## clock.c:150:5
|
||
|
11222e: bf ea 88 fe call -0x2f0 <delay : 111f42 > ## clock.c:150:5
|
||
|
112232: 00 ef 80 9f [r9+0x0] |= 0x100 ## clock.c:151:24
|
||
|
112236: 40 2a r0 = 0xa ## clock.c:152:5
|
||
|
112238: bf ea 83 fe call -0x2fa <delay : 111f42 > ## clock.c:152:5
|
||
|
11223c: c0 ff 00 6c dc 02 r0 = 0x2dc6c00 <__stub_doe+0x2CB4404 : 2dc6c00 > ## clock.c:154:27
|
||
|
112242: d0 ec f9 00 [r15+0x8] = r0 ## clock.c:154:27
|
||
|
112246: 48 32 r0 = 0x32 ## clock.c:155:5
|
||
|
112248: bf ea 6c f9 call -0xd28 <mdelay : 111524 > ## clock.c:155:5
|
||
|
11224c: bf ea f1 f1 call -0x1c1e <usb_slave_mode : 110632 > ## main.c:132:5
|
||
|
|
||
|
|
||
|
sfc_suspend:
|
||
|
112250: c1 ff 00 10 10 00 r1 = 0x101000 <_IRQ_MEM_ADDR+0xD5100 : 101000 > ## icache.c:12:0
|
||
|
112256: 12 60 r2 = [r1+0x0] ## icache.c:14:22
|
||
|
112258: 52 e8 fd 29 if ((r2 & 0x20) == 0) goto -0x6 <sfc_suspend+0x6 : 112256 > ## icache.c:14:5
|
||
|
11225c: c1 ff 00 02 1f 00 r1 = 0x1f0200 <__stub_doe+0xDDA04 : 1f0200 >
|
||
|
112262: 12 60 r2 = [r1+0x0] ## icache.c:16:20
|
||
|
112264: 82 fd fd 01 ifs (r2 < 0x0) goto -0x6 <sfc_suspend+0x12 : 112262 > ## icache.c:16:5
|
||
|
112268: c0 ef 01 10 [r1+0x0] &= 0xFFFFFFFE ## icache.c:18:17
|
||
|
11226c: b0 e8 00 40 if (r0 != 0x0) { ## icache.c:18:17
|
||
|
112270: c0 ff 00 1c 1e 00 r0 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## icache.c:20:22
|
||
|
112276: 00 ef 01 00 [r0+0x0] |= 0x1
|
||
|
} ## icache.c:20:22
|
||
|
11227a: 80 00 rts ## icache.c:22:1
|
||
|
|
||
|
|
||
|
sfc_resume:
|
||
|
11227c: b0 e8 00 40 if (r0 != 0x0) { ## icache.c:25:0
|
||
|
112280: c0 ff 00 1c 1e 00 r0 = 0x1e1c00 <__stub_doe+0xCF404 : 1e1c00 > ## icache.c:27:22
|
||
|
112286: c0 ef 01 00 [r0+0x0] &= 0xFFFFFFFE
|
||
|
} ## icache.c:27:22
|
||
|
11228a: c0 ff 00 02 1f 00 r0 = 0x1f0200 <__stub_doe+0xDDA04 : 1f0200 > ## icache.c:29:17
|
||
|
112290: 00 ef 01 00 [r0+0x0] |= 0x1 ## icache.c:29:17
|
||
|
112294: 80 00 rts ## icache.c:30:1
|
||
|
|
||
|
|
||
|
sfc_drop_cache:
|
||
|
112296: 7a 04 [--sp] = {rets, r10-r4} ## icache.c:32:0
|
||
|
112298: c8 ff 00 10 10 00 r8 = 0x101000 <_IRQ_MEM_ADDR+0xD5100 : 101000 > ## icache.c:32:0
|
||
|
11229e: d0 ec 80 90 r9 = [r8+0x0] ## icache.c:33:33
|
||
|
1122a2: c0 ef e0 8e [r8+0x0] &= 0xFFFFF8FF ## icache.c:34:17
|
||
|
1122a6: 74 e1 1f 00 r4 = r0 & 0xFFFFFFE0 ## icache.c:40:31
|
||
|
1122aa: 02 1f r2 = r0 - r4 ## icache.c:41:27
|
||
|
1122ac: a0 e0 20 20 r0 = 0x20 - r2 ## icache.c:43:32
|
||
|
1122b0: c2 14 r10 = 0
|
||
|
1122b2: 23 16 r3 = r2 ## icache.c:43:9
|
||
|
1122b4: 10 e9 00 01 if (r0 >= r1) { ## icache.c:43:9
|
||
|
1122b8: 43 20 r3 = 0x0
|
||
|
} ## icache.c:43:9
|
||
|
1122ba: 32 e8 00 00 if (r2 == 0x0) { ## icache.c:43:9
|
||
|
1122be: 23 16 r3 = r2
|
||
|
} ## icache.c:43:9
|
||
|
1122c0: 98 1c r0 = r1 + r3 ## icache.c:43:9
|
||
|
1122c2: c0 3f r0 += 0x1f ## icache.c:48:35
|
||
|
1122c4: 70 e1 1f 00 r0 = r0 & 0xFFFFFFE0 ## icache.c:48:40
|
||
|
1122c8: 01 1d r1 = r0 + r4
|
||
|
1122ca: 60 e0 7c 5a r5 = 0xFC000
|
||
|
1122ce: 46 20 r6 = 0x0
|
||
|
1122d0: 04 98 goto 0x30 <sfc_drop_cache+0x6C : 112302 >
|
||
|
1122d2: c0 e1 a5 70 r7 = r10 << 0x5
|
||
|
1122d6: 42 24 r2 = 0x4
|
||
|
1122d8: 43 20 r3 = 0x0
|
||
|
1122da: 04 8d goto 0x1a <sfc_drop_cache+0x60 : 1122f6 >
|
||
|
1122dc: d8 ec 5a 03 r0 = [r5+r3<<2] ## icache.c:52:41
|
||
|
1122e0: 00 ac r0 = r0 << 0xc ## icache.c:52:45
|
||
|
1122e2: 70 18 r0 += r7 ## icache.c:52:52
|
||
|
1122e4: 01 ec 05 00 if (r0 > r1) goto 0xa <sfc_drop_cache+0x5C : 1122f2 >
|
||
|
1122e8: c8 20 r0 += 0x20 ## icache.c:54:92
|
||
|
1122ea: 10 e9 00 04 if (r0 >= r4) {
|
||
|
1122ee: d8 ec 5b 63 [r5+r3<<2] = r6
|
||
|
} ## icache.c:55:20
|
||
|
1122f2: c3 21 r3 += 0x1 ## icache.c:51:9
|
||
|
1122f4: fa 3f r2 += -0x1 ## icache.c:51:9
|
||
|
1122f6: 61 ff ff 20 f0 ff if ((r2 & 0xFF) != 0) goto -0x20 <sfc_drop_cache+0x46 : 1122dc >
|
||
|
1122fc: 0a e1 01 a0 r10 = r10 + 0x1 ## icache.c:50:27
|
||
|
112300: c5 30 r5 += 0x10 ## icache.c:36:10
|
||
|
112302: 9a f8 e6 01 if (r10 != 0x80) goto -0x34 <sfc_drop_cache+0x3C : 1122d2 >
|
||
|
112306: d0 ec 81 90 [r8+0x0] = r9 ## icache.c:61:18
|
||
|
11230a: 5a 04 {pc, r10-r4} = [sp++] ## icache.c:62:1
|
||
|
|
||
|
|
||
|
flush_dcache:
|
||
|
11230c: c1 3f r1 += 0x1f ## icache.c:66:0
|
||
|
11230e: 4a 20 r2 = 0x20 ## icache.c:68:40
|
||
|
112310: f4 e1 11 12 r1 = r1 / r2 (s) ## icache.c:68:40
|
||
|
112314: 11 a5 r1 = r1 << 0x5 ## icache.c:68:59
|
||
|
112316: 70 e1 1f 00 r0 = r0 & 0xFFFFFFE0 ## icache.c:67:29
|
||
|
11231a: 04 85 goto 0xa <flush_dcache+0x1A : 112326 >
|
||
|
11231c: f9 20 r1 += -0x20 ## icache.c:73:13
|
||
|
11231e: 22 00 ssync ## icache.c:72:9
|
||
|
112320: 20 02 flush [r0] ## icache.c:72:9
|
||
|
112322: 22 00 ssync ## icache.c:72:9
|
||
|
112324: c8 20 r0 += 0x20 ## icache.c:74:11
|
||
|
112326: 01 fd f9 03 ifs (r1 >= 0x1) goto -0xe <flush_dcache+0x10 : 11231c >
|
||
|
11232a: 80 00 rts ## icache.c:77:1
|
||
|
|
||
|
|
||
|
flushinv_dcache:
|
||
|
11232c: c1 3f r1 += 0x1f ## icache.c:80:0
|
||
|
11232e: 4a 20 r2 = 0x20 ## icache.c:82:40
|
||
|
112330: f4 e1 11 12 r1 = r1 / r2 (s) ## icache.c:82:40
|
||
|
112334: 11 a5 r1 = r1 << 0x5 ## icache.c:82:59
|
||
|
112336: 70 e1 1f 00 r0 = r0 & 0xFFFFFFE0 ## icache.c:81:29
|
||
|
11233a: 04 85 goto 0xa <flushinv_dcache+0x1A : 112346 >
|
||
|
11233c: f9 20 r1 += -0x20 ## icache.c:87:13
|
||
|
11233e: 22 00 ssync ## icache.c:86:9
|
||
|
112340: 30 02 flushinv [r0] ## icache.c:86:9
|
||
|
112342: 22 00 ssync ## icache.c:86:9
|
||
|
112344: c8 20 r0 += 0x20 ## icache.c:88:11
|
||
|
112346: 01 fd f9 03 ifs (r1 >= 0x1) goto -0xe <flushinv_dcache+0x10 : 11233c >
|
||
|
11234a: 80 00 rts ## icache.c:90:1
|
||
|
|
||
|
|
||
|
putchar:
|
||
|
11234c: 80 00 rts ## uart.c:45:0
|
||
|
|
||
|
|
||
|
switch_to_hrc_asm:
|
||
|
11234e: c0 ff 0c 00 1e 00 r0 = 0x1e000c <__stub_doe+0xCD810 : 1e000c > ## clock.c:205:0
|
||
|
112354: 00 ef 01 00 [r0+0x0] |= 0x1 ## clock.c:206:24
|
||
|
112358: 00 ef 02 00 [r0+0x0] |= 0x2 ## clock.c:207:24
|
||
|
11235c: 00 00 nop ## clock.c:208:5
|
||
|
11235e: 00 00 nop ## clock.c:209:5
|
||
|
112360: 00 00 nop ## clock.c:210:5
|
||
|
112362: c0 ef 80 0f [r0+0x0] &= 0xFFFFFEFF ## clock.c:211:24
|
||
|
112366: 80 00 rts ## clock.c:212:1
|
||
|
|
||
|
|
||
|
tmr3_isr:
|
||
|
112368: e9 04 [--sp] = {psr, rets, reti} ## clock.c:250:0
|
||
|
11236a: d8 e8 3f 00 [--sp] = {r5-r0} ## clock.c:256:5
|
||
|
11236e: 58 24 r0 = 0x64 ## clock.c:256:5
|
||
|
112370: bf ea e7 fd call -0x432 <delay : 111f42 > ## clock.c:256:5
|
||
|
112374: c1 ff 00 07 1e 00 r1 = 0x1e0700 <__stub_doe+0xCDF04 : 1e0700 > ## clock.c:256:5
|
||
|
11237a: 00 ef 80 1c [r1+0x0] |= 0x4000 ## clock.c:258:20
|
||
|
11237e: 12 62 r2 = [r1+0x8] ## clock.c:260:30
|
||
|
112380: c0 ff 40 13 01 00 r0 = 0x11340 <var_bss_begin : 11340 > ## clock.c:260:30
|
||
|
112386: 0b 60 r3 = h[r0+0x0] (u) ## clock.c:260:36
|
||
|
112388: aa de r2 = r2 - r3 # ## clock.c:260:34
|
||
|
11238a: 14 62 r4 = [r1+0x8] ## clock.c:261:27
|
||
|
11238c: a3 d7 r3 = r2.l (u) # ## clock.c:267:10
|
||
|
11238e: 8c 60 h[r0+0x0] = r4 ## clock.c:261:14
|
||
|
112390: 0c 61 r4 = h[r0+0x2] (u) ## clock.c:267:21
|
||
|
112392: 35 e1 fc 4e r5 = r4 + -0x104 ## clock.c:267:30
|
||
|
112396: 85 ee 10 30 ifs (r3 <= r5) goto 0x20 <tmr3_isr+0x52 : 1123ba > ## clock.c:267:30
|
||
|
11239a: 04 e1 04 41 r4 = r4 + 0x104 ## clock.c:267:62
|
||
|
11239e: 04 e9 0c 30 if (r3 >= r4) goto 0x18 <tmr3_isr+0x52 : 1123ba > ## clock.c:267:62
|
||
|
1123a2: 68 e8 04 03 [r0+0x4] += r3 ## clock.c:268:23
|
||
|
1123a6: 03 62 r3 = [r0+0x8] ## clock.c:270:16
|
||
|
1123a8: c3 21 r3 += 0x1 ## clock.c:270:16
|
||
|
1123aa: 83 62 [r0+0x8] = r3 ## clock.c:270:16
|
||
|
1123ac: 33 e8 04 40 if (r3 == 0x4) { ## clock.c:270:16
|
||
|
1123b0: 40 ea 80 1c [r1+0x0] = 0x4000 ## clock.c:273:28
|
||
|
1123b4: 43 ea 01 00 [r0+0xc] = 0x1
|
||
|
} ## clock.c:275:26
|
||
|
1123b8: 04 84 goto 0x8 <tmr3_isr+0x5A : 1123c2 > ## clock.c:275:26
|
||
|
1123ba: 44 20 r4 = 0x0 ## clock.c:279:23
|
||
|
1123bc: 45 20 r5 = 0x0 ## clock.c:279:23
|
||
|
1123be: 50 ec 05 40 d[r0+0x4] = r5_r4 ## clock.c:279:23
|
||
|
1123c2: 8a 61 h[r0+0x2] = r2 ## clock.c:282:14
|
||
|
1123c4: d4 e8 3f 00 {r5-r0} = [sp++] ## clock.c:283:1
|
||
|
1123c8: a9 04 {psr, rets, reti} = [sp++] ## clock.c:283:1
|
||
|
1123ca: 81 00 rti ## clock.c:283:1
|
||
|
|
||
|
|
||
|
p33_xor_1byte:
|
||
|
1123cc: 74 04 [--sp] = {rets, r4} ## p33.c:17:0
|
||
|
1123ce: 12 16 r2 = r1 ## p33.c:17:0
|
||
|
1123d0: 03 16 r3 = r0 ## p33.c:17:0
|
||
|
1123d2: b9 17 r1 = r3.l (s) ## p33.c:17:0
|
||
|
1123d4: bf ea c2 ef call -0x207c <os_code_begin : 11035c > ## p33.c:18:5
|
||
|
1123d8: c4 ff 08 3e 1e 00 r4 = 0x1e3e08 <__stub_doe+0xD160C : 1e3e08 > ## p33.c:18:5
|
||
|
1123de: 31 ed 00 50 ifs (r1 >= 0x0) { ## p33.c:18:5
|
||
|
1123e2: c0 ef 80 4f [r4+0x0] &= 0xFFFFFEFF ## p33.c:18:5
|
||
|
1123e6: 40 21 r0 = 0x1
|
||
|
} else { ## p33.c:18:5
|
||
|
1123e8: 40 e0 01 01 r0 = 0x101
|
||
|
} ## p33.c:18:5
|
||
|
1123ec: 64 e8 00 40 [r4+0x0] |= r0 ## p33.c:18:5
|
||
|
1123f0: b0 e1 08 34 r0 = uextra(r3, p:0x8, l:0x2) ## p33.c:19:13
|
||
|
1123f4: 40 e1 60 00 r0 = r0 | 0x60 ## p33.c:19:13
|
||
|
1123f8: bf ea 5a f6 call -0x134c <p33_buf : 1110b0 > ## p33.c:19:5
|
||
|
1123fc: 70 e1 7f 3c r0 = r3 & 0xFFFF00FF ## p33.c:20:5
|
||
|
112400: bf ea 56 f6 call -0x1354 <p33_buf : 1110b0 > ## p33.c:20:5
|
||
|
112404: 20 16 r0 = r2 ## p33.c:21:5
|
||
|
112406: bf ea 53 f6 call -0x135a <p33_buf : 1110b0 > ## p33.c:21:5
|
||
|
11240a: 40 e0 fe fe r0 = -0x102 ## p33.c:22:5
|
||
|
11240e: 64 e8 02 40 [r4+0x0] &= r0 ## p33.c:22:5
|
||
|
112412: 34 04 {rets, r4} = [sp++] ## p33.c:22:5
|
||
|
112414: ff ea a9 ef goto -0x20ae <local_irq_enable : 11036a > ## p33.c:22:5
|
||
|
|
||
|
|
||
|
P33_CON_SET:
|
||
|
112418: 76 04 [--sp] = {rets, r6-r4} ## p33.c:66:0
|
||
|
11241a: 04 16 r4 = r0 ## p33.c:66:0
|
||
|
11241c: 10 3f r0 = -0x1 ## p33.c:69:5
|
||
|
11241e: 20 1a r0 <<= r2 ## p33.c:69:5
|
||
|
112420: 90 e1 33 20 r2 = r3 & ~r0 ## p33.c:69:5
|
||
|
112424: c8 e1 20 51 r5 = r2 << r1 ## p33.c:69:5
|
||
|
112428: 88 19 r0 = ~r0 ## p33.c:69:5
|
||
|
11242a: c8 e1 00 61 r6 = r0 << r1 ## p33.c:69:5
|
||
|
11242e: 40 16 r0 = r4 ## p33.c:68:11
|
||
|
112430: bf ea 74 f6 call -0x1318 <p33_rx_1byte : 11111c > ## p33.c:68:11
|
||
|
112434: 90 e1 03 06 r0 = r0 & ~r6 ## p33.c:69:5
|
||
|
112438: 50 19 r0 |= r5 ## p33.c:69:5
|
||
|
11243a: 01 17 r1 = r0.b0 (u) ## p33.c:70:5
|
||
|
11243c: 40 16 r0 = r4 ## p33.c:70:5
|
||
|
11243e: 36 04 {rets, r6-r4} = [sp++] ## p33.c:70:5
|
||
|
112440: ff ea 42 f6 goto -0x137c <p33_tx_1byte : 1110c8 > ## p33.c:70:5
|
||
|
|
||
|
|
||
|
puts:
|
||
|
112444: 01 07 r1 = b[r0++=0x1] (u) ## printf-stdarg.c:288:0
|
||
|
112446: f1 5e if (r1 != 0) goto -0x4 <puts : 112444 >
|
||
|
112448: 40 20 r0 = 0x0 ## printf-stdarg.c:326:5
|
||
|
11244a: 80 00 rts ## printf-stdarg.c:326:5
|
||
|
|
||
|
|
||
|
sprintf:
|
||
|
11244c: 62 04 [--sp] = {r3, r2} ## printf-stdarg.c:373:0
|
||
|
11244e: 10 04 [--sp] = rets ## printf-stdarg.c:373:0
|
||
|
112450: e2 9e sp += -0x8 ## printf-stdarg.c:373:0
|
||
|
112452: 80 21 [sp+4] = r0 ## printf-stdarg.c:373:0
|
||
|
112454: 8a 8c r2 = sp + 12 ## printf-stdarg.c:373:0
|
||
|
112456: 82 20 [sp] = r2 ## printf-stdarg.c:376:5
|
||
|
112458: 88 84 r0 = sp + 4 ## printf-stdarg.c:376:5
|
||
|
11245a: bf ea 77 fa call -0xb12 <print : 11194c > ## printf-stdarg.c:378:12
|
||
|
11245e: 02 82 sp += 0x8
|
||
|
112460: 88 04 {rets} = [sp++] ## printf-stdarg.c:378:5
|
||
|
112462: 02 82 sp += 0x8 ## printf-stdarg.c:378:5
|
||
|
112464: 80 00 rts ## printf-stdarg.c:378:5
|
||
|
|
||
|
|
||
|
vprintf:
|
||
|
112466: 10 04 [--sp] = rets ## printf-stdarg.c:382:0
|
||
|
112468: 12 16 r2 = r1 ## printf-stdarg.c:382:0
|
||
|
11246a: 01 16 r1 = r0 ## printf-stdarg.c:382:0
|
||
|
11246c: 40 20 r0 = 0x0 ## printf-stdarg.c:385:12
|
||
|
11246e: bf ea 6d fa call -0xb26 <print : 11194c > ## printf-stdarg.c:385:12
|
||
|
112472: 00 04 pc = [sp++] ## printf-stdarg.c:387:5
|
||
|
|
||
|
|
||
|
perror:
|
||
|
112474: 40 20 r0 = 0x0 ## printf-stdarg.c:391:0
|
||
|
112476: 80 00 rts ## printf-stdarg.c:392:5
|
||
|
|
||
|
|
||
|
norflash_read:
|
||
|
112478: 78 04 [--sp] = {rets, r8-r4} ## norflash.c:313:0
|
||
|
11247a: 34 d6 r4 = r3 # ## norflash.c:313:0
|
||
|
11247c: 08 44 r0 = b[r0+0x4] (u) ## norflash.c:317:19
|
||
|
11247e: 26 16 r6 = r2
|
||
|
112480: 15 16 r5 = r1
|
||
|
112482: c8 ff 00 41 1e 00 r8 = 0x1e4100 <__stub_doe+0xD1904 : 1e4100 >
|
||
|
112488: b0 e8 00 40 if (r0 != 0x0) {
|
||
|
11248c: 42 ea 00 80 [r8+0x8] = 0x0 ## norflash.c:318:28
|
||
|
112490: 40 ea 83 80 [r8+0x0] = 0x83
|
||
|
} ## norflash.c:319:28
|
||
|
112494: 40 20 r0 = 0x0 ## norflash.c:323:5
|
||
|
112496: 47 20 r7 = 0x0 ## norflash.c:323:5
|
||
|
112498: bf ea 76 fb call -0x914 <SPI0_cs : 111b88 > ## norflash.c:323:5
|
||
|
11249c: 40 23 r0 = 0x3 ## norflash.c:325:5
|
||
|
11249e: bf ea 99 fb call -0x8ce <SPI0_WriteByte : 111bd4 > ## norflash.c:325:5
|
||
|
1124a2: b0 e1 20 68 r0 = uextra(r6, p:0x10, l:0x8) ## norflash.c:110:5
|
||
|
1124a6: bf ea 95 fb call -0x8d6 <SPI0_WriteByte : 111bd4 > ## norflash.c:110:5
|
||
|
1124aa: b0 e1 20 64 r0 = uextra(r6, p:0x8, l:0x8) ## norflash.c:111:5
|
||
|
1124ae: bf ea 91 fb call -0x8de <SPI0_WriteByte : 111bd4 > ## norflash.c:111:5
|
||
|
1124b2: 60 17 r0 = r6.b0 (u) ## norflash.c:112:5
|
||
|
1124b4: bf ea 8e fb call -0x8e4 <SPI0_WriteByte : 111bd4 > ## norflash.c:112:5
|
||
|
1124b8: 30 e1 04 84 r0 = r8 + -0xbfc ## norflash.c:329:17
|
||
|
1124bc: 22 f1 fc 06 r2 = r0 + -0x1904 # ## norflash.c:329:17
|
||
|
1124c0: 87 60 [r0+0x0] = r7 ## norflash.c:329:17
|
||
|
1124c2: 00 ef 80 2d [r2+0x0] |= 0x1000 ## spi0.c:306:18
|
||
|
1124c6: 40 2a r0 = 0xa ## spi0.c:307:5
|
||
|
1124c8: bf ea d6 f6 call -0x1254 <udelay : 111278 > ## spi0.c:307:5
|
||
|
1124cc: c0 ef 40 2e [r2+0x0] &= 0xFFFFF3FF ## spi0.c:308:18
|
||
|
1124d0: c0 d7 r0 = r4.l (u) # ## spi0.c:311:20
|
||
|
1124d2: a5 63 [r2+0xc] = r5 ## spi0.c:310:18
|
||
|
1124d4: a0 64 [r2+0x10] = r0 ## spi0.c:311:18
|
||
|
1124d6: bf ea 74 fb call -0x918 <spi0_wait_ok : 111bc2 > ## spi0.c:313:5
|
||
|
1124da: 40 21 r0 = 0x1 ## norflash.c:334:5
|
||
|
1124dc: bf ea 54 fb call -0x958 <SPI0_cs : 111b88 > ## norflash.c:334:5
|
||
|
1124e0: 40 21 r0 = 0x1 ## norflash.c:339:5
|
||
|
1124e2: d0 ec 81 70 [r8+0x0] = r7 ## norflash.c:337:24
|
||
|
1124e6: 58 04 {pc, r8-r4} = [sp++] ## norflash.c:339:5
|
||
|
|
||
|
|
||
|
uart_isr:
|
||
|
1124e8: e9 04 [--sp] = {psr, rets, reti} ## uart_upgrade.c:180:0
|
||
|
1124ea: d8 e8 3f 00 [--sp] = {r5-r0} ## uart_upgrade.c:180:0
|
||
|
1124ee: 60 e0 f1 49 r4 = 0x1E2000 ## uart_upgrade.c:180:0
|
||
|
1124f2: 40 60 r0 = [r4+0x0] ## uart_upgrade.c:181:16
|
||
|
1124f4: 50 e8 29 58 if ((r0 & 0x800) == 0) goto 0x52 <uart_isr+0x62 : 11254a > ## uart_upgrade.c:181:16
|
||
|
1124f8: 00 ef 80 40 [r4+0x0] |= 0x80 ## uart_upgrade.c:182:20
|
||
|
1124fc: 00 ef a0 4d [r4+0x0] |= 0x1400 ## uart_upgrade.c:183:20
|
||
|
112500: 20 00 csync ## uart_upgrade.c:184:9
|
||
|
112502: 40 6a r0 = [r4+0x28] ## uart_upgrade.c:185:28
|
||
|
112504: 42 20 r2 = 0x0
|
||
|
112506: c0 ff 00 be 02 00 r0 = 0x2be00 <uart_dma_buffer : 2be00 >
|
||
|
11250c: 21 16 r1 = r2
|
||
|
11250e: 01 fc 1c 7a if (r1 > 0x3d) goto 0x38 <uart_isr+0x62 : 11254a >
|
||
|
112512: d8 ee 10 30 r3 = b[r1+r0] (u) ## uart_upgrade.c:120:14
|
||
|
112516: 1a 81 r2 = r1 + 0x1 ## uart_upgrade.c:120:14
|
||
|
112518: 83 f8 f8 ab if (r3 != 0x55) goto -0x10 <uart_isr+0x24 : 11250c > ## uart_upgrade.c:120:14
|
||
|
11251c: 13 1c r3 = r1 + r0 ## uart_upgrade.c:120:37
|
||
|
11251e: 3b 41 r3 = b[r3+0x1] (u) ## uart_upgrade.c:120:37
|
||
|
112520: 93 f8 f4 55 if (r3 != 0xaa) goto -0x18 <uart_isr+0x24 : 11250c > ## uart_upgrade.c:120:37
|
||
|
112524: 42 20 r2 = 0x0
|
||
|
112526: c3 ff c0 bd 02 00 r3 = 0x2bdc0 <ut_cmd : 2bdc0 >
|
||
|
11252c: 04 89 goto 0x12 <uart_isr+0x58 : 112540 >
|
||
|
11252e: 95 1c r5 = r1 + r2 ## uart_upgrade.c:124:45
|
||
|
112530: cd 3f r5 += 0x3f ## uart_upgrade.c:124:45
|
||
|
112532: 65 e1 3f 50 r5 = r5 & 0x3F ## uart_upgrade.c:124:45
|
||
|
112536: d8 ee 50 50 r5 = b[r5+r0] (u) ## uart_upgrade.c:124:30
|
||
|
11253a: d8 ee 21 53 b[r2+r3] = r5 ## uart_upgrade.c:124:28
|
||
|
11253e: c2 21 r2 += 0x1 ## uart_upgrade.c:123:50
|
||
|
112540: 82 f8 f5 2b if (r2 != 0x15) goto -0x16 <uart_isr+0x46 : 11252e >
|
||
|
112544: bf ea d8 f7 call -0x1050 <uart_cmd_verify : 1114f8 > ## uart_upgrade.c:132:20
|
||
|
112548: 80 44 if (r0 != 0) goto 0x8 <uart_isr+0x6A : 112552 >
|
||
|
11254a: d4 e8 3f 00 {r5-r0} = [sp++]
|
||
|
11254e: a9 04 {psr, rets, reti} = [sp++]
|
||
|
112550: 81 00 rti
|
||
|
112552: c0 ef 20 40 [r4+0x0] &= 0xFFFFFFDF ## uart_upgrade.c:189:24
|
||
|
112556: bf ea 12 f8 call -0xfdc <uart_recv_loader : 11157e > ## uart_upgrade.c:190:13
|
||
|
|
||
|
|
||
|
doe:
|
||
|
11255a: 76 04 [--sp] = {rets, r6-r4} ## crc.c:116:0
|
||
|
11255c: b3 e8 00 40 if (r3 != 0x0) { ## crc.c:116:0
|
||
|
112560: b3 a2 r3 = r3 >> 0x2 ## crc.c:106:19
|
||
|
112562: 38 19 r0 ^= r3
|
||
|
} ## crc.c:106:25
|
||
|
112564: a2 e0 01 20 r2 = 0x1 - r2
|
||
|
112568: 43 e0 de ef r3 = -0x1022
|
||
|
11256c: 04 16 r4 = r0
|
||
|
11256e: 04 93 goto 0x26 <doe+0x3C : 112596 >
|
||
|
112570: 04 a1 r4 = r0 << 0x1 ## crc.c:91:24
|
||
|
112572: b4 19 r4 &= r3 ## crc.c:92:19
|
||
|
112574: 80 17 r0 = r0.l (u) ## crc.c:89:33
|
||
|
112576: 85 af r5 = r0 >> 0xf ## crc.c:89:33
|
||
|
112578: 54 19 r4 |= r5 ## crc.c:92:19
|
||
|
11257a: 86 ab r6 = r0 >> 0xb ## crc.c:92:30
|
||
|
11257c: 5e 19 r6 ^= r5 ## crc.c:92:34
|
||
|
11257e: 66 ac r6 = r6 << 0xc ## crc.c:92:19
|
||
|
112580: 66 e1 80 6d r6 = r6 & 0x1000 ## crc.c:92:19
|
||
|
112584: 64 19 r4 |= r6 ## crc.c:93:18
|
||
|
112586: 80 a4 r0 = r0 >> 0x4 ## crc.c:93:29
|
||
|
112588: 58 19 r0 ^= r5 ## crc.c:93:32
|
||
|
11258a: 00 a5 r0 = r0 << 0x5 ## crc.c:93:18
|
||
|
11258c: 60 e1 20 00 r0 = r0 & 0x20 ## crc.c:93:18
|
||
|
112590: 40 19 r0 |= r4 ## crc.c:94:18
|
||
|
112592: 04 17 r4 = r0.b0 (u) ## crc.c:98:21
|
||
|
112594: c2 21 r2 += 0x1 ## crc.c:110:5
|
||
|
112596: 1d 40 r5 = b[r1+0x0] (u)
|
||
|
112598: 5c 19 r4 ^= r5
|
||
|
11259a: 94 07 b[r1++=0x1] = r4
|
||
|
11259c: f2 49 if (r2 != 0) goto -0x2e <doe+0x16 : 112570 >
|
||
|
11259e: 56 04 {pc, r6-r4} = [sp++] ## crc.c:119:1
|
||
|
|
||
|
|
||
|
strncmp:
|
||
|
1125a0: 74 04 [--sp] = {rets, r4}
|
||
|
1125a2: 02 4e if (r2 == 0) goto 0x1c <strncmp+0x20 : 1125c0 >
|
||
|
1125a4: a2 e0 01 20 r2 = 0x1 - r2
|
||
|
1125a8: 04 84 goto 0x8 <strncmp+0x12 : 1125b2 >
|
||
|
1125aa: 02 48 if (r2 == 0) goto 0x10 <strncmp+0x1C : 1125bc >
|
||
|
1125ac: 83 e8 06 40 if (r4 != r3) goto 0xc <strncmp+0x1C : 1125bc >
|
||
|
1125b0: c2 21 r2 += 0x1
|
||
|
1125b2: d0 ee 11 30 r3 = b[r1++=0x1] (u)
|
||
|
1125b6: d0 ee 01 40 r4 = b[r0++=0x1] (u)
|
||
|
1125ba: f4 57 if (r4 != 0) goto -0x12 <strncmp+0xA : 1125aa >
|
||
|
1125bc: c8 1e r0 = r4 - r3
|
||
|
1125be: 54 04 {pc, r4} = [sp++]
|
||
|
1125c0: 40 20 r0 = 0x0
|
||
|
1125c2: 54 04 {pc, r4} = [sp++]
|
||
|
|
||
|
|
||
|
strstr:
|
||
|
1125c4: 74 04 [--sp] = {rets, r4}
|
||
|
1125c6: 0a 40 r2 = b[r0+0x0] (u)
|
||
|
1125c8: 82 4f if (r2 != 0) goto 0x1e <strstr+0x24 : 1125e8 >
|
||
|
1125ca: 19 40 r1 = b[r1+0x0] (u)
|
||
|
1125cc: 01 4f if (r1 == 0) goto 0x1e <strstr+0x28 : 1125ec >
|
||
|
1125ce: 40 20 r0 = 0x0
|
||
|
1125d0: 54 04 {pc, r4} = [sp++]
|
||
|
1125d2: 42 20 r2 = 0x0
|
||
|
1125d4: d8 ee 10 32 r3 = b[r1+r2] (u)
|
||
|
1125d8: 03 49 if (r3 == 0) goto 0x12 <strstr+0x28 : 1125ec >
|
||
|
1125da: d8 ee 00 42 r4 = b[r0+r2] (u)
|
||
|
1125de: c2 21 r2 += 0x1
|
||
|
1125e0: 04 e8 f8 31 if (r3 == r4) goto -0x10 <strstr+0x10 : 1125d4 >
|
||
|
1125e4: 58 ee 01 20 r2 = b[++r0=0x1] (u)
|
||
|
1125e8: f2 54 if (r2 != 0) goto -0x18 <strstr+0xE : 1125d2 >
|
||
|
1125ea: f7 91 goto -0x1e <strstr+0xA : 1125ce >
|
||
|
1125ec: 54 04 {pc, r4} = [sp++]
|
||
|
|
||
|
|
||
|
rom_size:
|
||
|
1125ee: 00 00 nop
|
||
|
1125f0: 00 00 nop
|
||
|
1125f2: 00 00 nop
|
||
|
1125f4: 00 00 nop
|
||
|
1125f6: 00 00 nop
|
||
|
1125f8: 00 00 nop
|
||
|
1125fa: 00 00 nop
|
||
|
1125fc: 00 00 nop
|
||
|
1125fe: 00 00 nop
|
||
|
112600: 00 00 nop
|
||
|
112602: 00 00 nop
|
||
|
112604: 00 00 nop
|
||
|
112606: 00 00 nop
|
||
|
112608: 00 00 nop
|
||
|
11260a: 00 00 nop
|
||
|
11260c: 00 00 nop
|
||
|
11260e: 00 00 nop
|
||
|
112610: 00 00 nop
|
||
|
112612: 00 00 nop
|
||
|
112614: 00 00 nop
|
||
|
112616: 00 00 nop
|
||
|
112618: 00 00 nop
|
||
|
11261a: 00 00 nop
|
||
|
11261c: 00 00 nop
|
||
|
11261e: 00 00 nop
|
||
|
112620: 00 00 nop
|
||
|
112622: 00 00 nop
|
||
|
112624: 00 00 nop
|
||
|
112626: 00 00 nop
|
||
|
112628: 00 00 nop
|
||
|
11262a: 00 00 nop
|
||
|
11262c: 00 00 nop
|
||
|
11262e: 00 00 nop
|
||
|
112630: 00 00 nop
|
||
|
112632: 00 00 nop
|
||
|
112634: 00 00 nop
|
||
|
112636: 00 00 nop
|
||
|
112638: 00 00 nop
|
||
|
11263a: 00 00 nop
|
||
|
11263c: 00 00 nop
|
||
|
11263e: 00 00 nop
|
||
|
112640: 00 00 nop
|
||
|
112642: 00 00 nop
|
||
|
112644: 00 00 nop
|
||
|
112646: 00 00 nop
|
||
|
112648: 00 00 nop
|
||
|
11264a: 00 00 nop
|
||
|
11264c: 00 00 nop
|
||
|
11264e: 00 00 nop
|
||
|
112650: 00 00 nop
|
||
|
112652: 00 00 nop
|
||
|
112654: 00 00 nop
|
||
|
112656: 00 00 nop
|
||
|
112658: 00 00 nop
|
||
|
11265a: 00 00 nop
|
||
|
11265c: 00 00 nop
|
||
|
11265e: 00 00 nop
|
||
|
112660: 00 00 nop
|
||
|
112662: 00 00 nop
|
||
|
112664: 00 00 nop
|
||
|
112666: 00 00 nop
|
||
|
112668: 00 00 nop
|
||
|
11266a: 00 00 nop
|
||
|
11266c: 00 00 nop
|
||
|
11266e: 00 00 nop
|
||
|
112670: 00 00 nop
|
||
|
112672: 00 00 nop
|
||
|
112674: 00 00 nop
|
||
|
112676: 00 00 nop
|
||
|
112678: 00 00 nop
|
||
|
11267a: 00 00 nop
|
||
|
11267c: 00 00 nop
|
||
|
11267e: 00 00 nop
|
||
|
112680: 00 00 nop
|
||
|
112682: 00 00 nop
|
||
|
112684: 00 00 nop
|
||
|
112686: 00 00 nop
|
||
|
112688: 00 00 nop
|
||
|
11268a: 00 00 nop
|
||
|
11268c: 00 00 nop
|
||
|
11268e: 00 00 nop
|
||
|
112690: 00 00 nop
|
||
|
112692: 00 00 nop
|
||
|
112694: 00 00 nop
|
||
|
112696: 00 00 nop
|
||
|
112698: 00 00 nop
|
||
|
11269a: 00 00 nop
|
||
|
11269c: 00 00 nop
|
||
|
11269e: 00 00 nop
|
||
|
1126a0: 00 00 nop
|
||
|
1126a2: 00 00 nop
|
||
|
1126a4: 00 00 nop
|
||
|
1126a6: 00 00 nop
|
||
|
1126a8: 00 00 nop
|
||
|
1126aa: 00 00 nop
|
||
|
1126ac: 00 00 nop
|
||
|
1126ae: 00 00 nop
|
||
|
1126b0: 00 00 nop
|
||
|
1126b2: 00 00 nop
|
||
|
1126b4: 00 00 nop
|
||
|
1126b6: 00 00 nop
|
||
|
1126b8: 00 00 nop
|
||
|
1126ba: 00 00 nop
|
||
|
1126bc: 00 00 nop
|
||
|
1126be: 00 00 nop
|
||
|
1126c0: 00 00 nop
|
||
|
1126c2: 00 00 nop
|
||
|
1126c4: 00 00 nop
|
||
|
1126c6: 00 00 nop
|
||
|
1126c8: 00 00 nop
|
||
|
1126ca: 00 00 nop
|
||
|
1126cc: 00 00 nop
|
||
|
1126ce: 00 00 nop
|
||
|
1126d0: 00 00 nop
|
||
|
1126d2: 00 00 nop
|
||
|
1126d4: 00 00 nop
|
||
|
1126d6: 00 00 nop
|
||
|
1126d8: 00 00 nop
|
||
|
1126da: 00 00 nop
|
||
|
1126dc: 00 00 nop
|
||
|
1126de: 00 00 nop
|
||
|
1126e0: 00 00 nop
|
||
|
1126e2: 00 00 nop
|
||
|
1126e4: 00 00 nop
|
||
|
1126e6: 00 00 nop
|
||
|
1126e8: 00 00 nop
|
||
|
1126ea: 00 00 nop
|
||
|
1126ec: 00 00 nop
|
||
|
1126ee: 00 00 nop
|
||
|
1126f0: 00 00 nop
|
||
|
1126f2: 00 00 nop
|
||
|
1126f4: 00 00 nop
|
||
|
1126f6: 00 00 nop
|
||
|
1126f8: 00 00 nop
|
||
|
1126fa: 00 00 nop
|
||
|
1126fc: 00 00 nop
|
||
|
1126fe: 00 00 nop
|
||
|
112700: 00 00 nop
|
||
|
112702: 00 00 nop
|
||
|
112704: 00 00 nop
|
||
|
112706: 00 00 nop
|
||
|
112708: 00 00 nop
|
||
|
11270a: 00 00 nop
|
||
|
11270c: 00 00 nop
|
||
|
11270e: 00 00 nop
|
||
|
112710: 00 00 nop
|
||
|
112712: 00 00 nop
|
||
|
112714: 00 00 nop
|
||
|
112716: 00 00 nop
|
||
|
112718: 00 00 nop
|
||
|
11271a: 00 00 nop
|
||
|
11271c: 00 00 nop
|
||
|
11271e: 00 00 nop
|
||
|
112720: 00 00 nop
|
||
|
112722: 00 00 nop
|
||
|
112724: 00 00 nop
|
||
|
112726: 00 00 nop
|
||
|
112728: 00 00 nop
|
||
|
11272a: 00 00 nop
|
||
|
11272c: 00 00 nop
|
||
|
11272e: 00 00 nop
|
||
|
112730: 00 00 nop
|
||
|
112732: 00 00 nop
|
||
|
112734: 00 00 nop
|
||
|
112736: 00 00 nop
|
||
|
112738: 00 00 nop
|
||
|
11273a: 00 00 nop
|
||
|
11273c: 00 00 nop
|
||
|
11273e: 00 00 nop
|
||
|
112740: 00 00 nop
|
||
|
112742: 00 00 nop
|
||
|
112744: 00 00 nop
|
||
|
112746: 00 00 nop
|
||
|
112748: 00 00 nop
|
||
|
11274a: 00 00 nop
|
||
|
11274c: 00 00 nop
|
||
|
11274e: 00 00 nop
|
||
|
112750: 00 00 nop
|
||
|
112752: 00 00 nop
|
||
|
112754: 00 00 nop
|
||
|
112756: 00 00 nop
|
||
|
112758: 00 00 nop
|
||
|
11275a: 00 00 nop
|
||
|
11275c: 00 00 nop
|
||
|
11275e: 00 00 nop
|
||
|
112760: 00 00 nop
|
||
|
112762: 00 00 nop
|
||
|
112764: 00 00 nop
|
||
|
112766: 00 00 nop
|
||
|
112768: 00 00 nop
|
||
|
11276a: 00 00 nop
|
||
|
11276c: 00 00 nop
|
||
|
11276e: 00 00 nop
|
||
|
112770: 00 00 nop
|
||
|
112772: 00 00 nop
|
||
|
112774: 00 00 nop
|
||
|
112776: 00 00 nop
|
||
|
112778: 00 00 nop
|
||
|
11277a: 00 00 nop
|
||
|
11277c: 00 00 nop
|
||
|
11277e: 00 00 nop
|
||
|
|
||
|
|
||
|
__stub_local_irq_enable:
|
||
|
112780: ff ea f3 ed goto -0x241a <local_irq_enable : 11036a > ## entry_list.S:7:0
|
||
|
|
||
|
|
||
|
__stub_local_irq_disable:
|
||
|
112784: ff ea ea ed goto -0x242c <os_code_begin : 11035c > ## entry_list.S:14:0
|
||
|
|
||
|
|
||
|
__stub_p33_buf:
|
||
|
112788: ff ea 92 f4 goto -0x16dc <p33_buf : 1110b0 > ## entry_list.S:21:0
|
||
|
|
||
|
|
||
|
__stub_p33_xor_1byte:
|
||
|
11278c: ff ea 1e fe goto -0x3c4 <p33_xor_1byte : 1123cc > ## entry_list.S:28:0
|
||
|
|
||
|
|
||
|
__stub_p33_and_1byte:
|
||
|
112790: ff ea 2e f5 goto -0x15a4 <p33_and_1byte : 1111f0 > ## entry_list.S:35:0
|
||
|
|
||
|
|
||
|
__stub_p33_or_1byte:
|
||
|
112794: ff ea 07 f5 goto -0x15f2 <p33_or_1byte : 1111a6 > ## entry_list.S:42:0
|
||
|
|
||
|
|
||
|
__stub_p33_tx_1byte:
|
||
|
112798: ff ea 96 f4 goto -0x16d4 <p33_tx_1byte : 1110c8 > ## entry_list.S:49:0
|
||
|
|
||
|
|
||
|
__stub_p33_rx_1byte:
|
||
|
11279c: ff ea be f4 goto -0x1684 <p33_rx_1byte : 11111c > ## entry_list.S:56:0
|
||
|
|
||
|
|
||
|
__stub_P33_CON_SET:
|
||
|
1127a0: ff ea 3a fe goto -0x38c <P33_CON_SET : 112418 > ## entry_list.S:63:0
|
||
|
|
||
|
|
||
|
__stub_memmem:
|
||
|
1127a4: ff ea f1 ec goto -0x261e <memmem : 11018a > ## entry_list.S:70:0
|
||
|
|
||
|
|
||
|
__stub_memcpy:
|
||
|
1127a8: ff ea 59 ec goto -0x274e <memmove : 11005e > ## entry_list.S:77:0
|
||
|
|
||
|
|
||
|
__stub_memmove:
|
||
|
1127ac: ff ea 57 ec goto -0x2752 <memmove : 11005e > ## entry_list.S:84:0
|
||
|
|
||
|
|
||
|
__stub_memcmp:
|
||
|
1127b0: ff ea cc ec goto -0x2668 <memcmp : 11014c > ## entry_list.S:91:0
|
||
|
|
||
|
|
||
|
__stub_memset:
|
||
|
1127b4: ff ea b4 ec goto -0x2698 <memset : 110120 > ## entry_list.S:98:0
|
||
|
|
||
|
|
||
|
__stub_strcmp:
|
||
|
1127b8: ff ea fb ec goto -0x260a <strcmp : 1101b2 > ## entry_list.S:105:0
|
||
|
|
||
|
|
||
|
__stub_strcpy:
|
||
|
1127bc: ff ea 49 ed goto -0x256e <strcpy : 110252 > ## entry_list.S:112:0
|
||
|
|
||
|
|
||
|
__stub_strlen:
|
||
|
1127c0: ff ea 7e ed goto -0x2504 <strlen : 1102c0 > ## entry_list.S:119:0
|
||
|
|
||
|
|
||
|
__stub_strncmp:
|
||
|
1127c4: ff ea ec fe goto -0x228 <strncmp : 1125a0 > ## entry_list.S:126:0
|
||
|
|
||
|
|
||
|
__stub_strstr:
|
||
|
1127c8: ff ea fc fe goto -0x208 <strstr : 1125c4 > ## entry_list.S:133:0
|
||
|
|
||
|
|
||
|
__stub_flush_dcache:
|
||
|
1127cc: ff ea 9e fd goto -0x4c4 <flush_dcache : 11230c > ## entry_list.S:140:0
|
||
|
|
||
|
|
||
|
__stub_flushinv_dcache:
|
||
|
1127d0: ff ea ac fd goto -0x4a8 <flushinv_dcache : 11232c > ## entry_list.S:147:0
|
||
|
|
||
|
|
||
|
__stub_sfc_suspend:
|
||
|
1127d4: ff ea 3c fd goto -0x588 <sfc_suspend : 112250 > ## entry_list.S:154:0
|
||
|
|
||
|
|
||
|
__stub_sfc_resume:
|
||
|
1127d8: ff ea 50 fd goto -0x560 <sfc_resume : 11227c > ## entry_list.S:161:0
|
||
|
|
||
|
|
||
|
__stub_sfc_drop_cache:
|
||
|
1127dc: ff ea 5b fd goto -0x54a <sfc_drop_cache : 112296 > ## entry_list.S:168:0
|
||
|
|
||
|
|
||
|
__stub_chip_crc16:
|
||
|
1127e0: ff ea 7b f6 goto -0x130a <chip_crc16 : 1114da > ## entry_list.S:175:0
|
||
|
|
||
|
|
||
|
__stub_CrcDecode:
|
||
|
1127e4: ff ea a8 f6 goto -0x12b0 <CrcDecode : 111538 > ## entry_list.S:182:0
|
||
|
|
||
|
|
||
|
__stub_mask_init:
|
||
|
1127e8: ff ea ce ed goto -0x2464 <mask_init : 110388 > ## entry_list.S:189:0
|
||
|
|
||
|
|
||
|
__stub_wdt_clr:
|
||
|
1127ec: ff ea 44 f6 goto -0x1378 <wdt_clr : 111478 > ## entry_list.S:196:0
|
||
|
|
||
|
|
||
|
__stub_nvram_set_boot_state:
|
||
|
1127f0: ff ea 9d ed goto -0x24c6 <nvram_set_boot_state : 11032e > ## entry_list.S:203:0
|
||
|
|
||
|
|
||
|
__stub_chip_reset:
|
||
|
1127f4: ff ea 73 ed goto -0x251a <chip_reset : 1102de > ## entry_list.S:210:0
|
||
|
|
||
|
|
||
|
__stub_the_debug_isr:
|
||
|
1127f8: ff ea 0d ec goto -0x27e6 <the_debug_isr : 110016 > ## entry_list.S:217:0
|
||
|
|
||
|
|
||
|
__stub_doe:
|
||
|
1127fc: ff ea ad fe goto -0x2a6 <doe : 11255a > ## entry_list.S:224:0
|
||
|
|