?? spihw.cod
字號:
0010c 159f0024 ldrne r0, [pc, #0x24]
00110 12888001 addne r8, r8, #1
00114 11a01008 movne r1, r8
00118 1b000000 blne NKDbgPrintfW
0011c e2855001 add r5, r5, #1
00120 e3550040 cmp r5, #0x40
00124 bafffff1 blt |$L39007|
; 544 : }
; 545 :
; 546 :
; 547 : }
; 548 :
; 549 : return TRUE;
00128 e3a00001 mov r0, #1
; 550 : }
0012c e28ddc02 add sp, sp, #2, 24
00130 e8bd41f0 ldmia sp!, {r4 - r8, lr}
00134 e12fff1e bx lr
00138 |$L39619|
00138 00000000 DCD |??_C@_1DC@GMHPLEEB@?$AAl?$AAo?$AAo?$AAp?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAe?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAc?$AAn?$AAt?$AA?5@|
0013c 00000000 DCD |??_C@_1DM@INIOFAAJ@?$AA?$CF?$AAd?$AA?5?$AAl?$AAo?$AAo?$AAp?$AAB?$AAa?$AAc?$AAk?$AAT?$AAe?$AAs?$AAt?$AA2?$AA2?$AA2?$AA?5?$AAg@|
00140 |$M39615|
ENDP ; |loopBackTest1|
EXPORT |loopBackTest2|
EXPORT |??_C@_1EK@CLOADHJK@?$AA?$CF?$AAd?$AA?0?$AA?5?$AAT?$AAX?$AA?5?$AAb?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AA0?$AAx?$AA?$CF?$AAx?$AA?0?$AA?5@| [ DATA ] ; `string'
00000 AREA |.text| { |loopBackTest2| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$loopBackTest2|, PDATA, SELECTION=5, ASSOC=|.text| { |loopBackTest2| } ; comdat associative
|$T39648| DCD |$L39647|
DCD 0x40004d02
00000 AREA |.rdata| { |??_C@_1EK@CLOADHJK@?$AA?$CF?$AAd?$AA?0?$AA?5?$AAT?$AAX?$AA?5?$AAb?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AA0?$AAx?$AA?$CF?$AAx?$AA?0?$AA?5@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1EK@CLOADHJK@?$AA?$CF?$AAd?$AA?0?$AA?5?$AAT?$AAX?$AA?5?$AAb?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AA0?$AAx?$AA?$CF?$AAx?$AA?0?$AA?5@| DCB "%"
DCB 0x0, "d", 0x0, ",", 0x0, " ", 0x0, "T", 0x0, "X", 0x0, " "
DCB 0x0, "b", 0x0, "u", 0x0, "f", 0x0, "f", 0x0, "e", 0x0, "r"
DCB 0x0, " ", 0x0, "0", 0x0, "x", 0x0, "%", 0x0, "x", 0x0, ","
DCB 0x0, " ", 0x0, "R", 0x0, "X", 0x0, " ", 0x0, "b", 0x0, "u"
DCB 0x0, "f", 0x0, "f", 0x0, "e", 0x0, "r", 0x0, " ", 0x0, "0"
DCB 0x0, "x", 0x0, "%", 0x0, "x", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
DCB 0x0 ; `string'
; Function compile flags: /Ogsy
00000 AREA |.text| { |loopBackTest2| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |loopBackTest2| PROC
; 553 : {
00000 |$L39647|
00000 e92d43f0 stmdb sp!, {r4 - r9, lr}
00004 e24ddc02 sub sp, sp, #2, 24
00008 |$M39645|
00008 e1a07000 mov r7, r0
; 554 : int i;
; 555 : DWORD wrd;
; 556 : DWORD Tx_loopbuf[64]= {0};
0000c e3a03000 mov r3, #0
00010 e3a020fc mov r2, #0xFC
00014 e3a01000 mov r1, #0
00018 e28d0004 add r0, sp, #4
0001c e58d3000 str r3, [sp]
00020 eb000000 bl memset
; 557 : DWORD Rx_loopbuf[64]= {0};
; 558 : DWORD err_cnt=0;
; 559 :
; 560 :
; 561 : for ( i= 0; i< 64; i ++)
; 562 : {
; 563 :
; 564 : Tx_loopbuf[i] = (4*i+3)<<24| (4*i+2)<<16| (4*i+1)<<8|4*i;
; 565 :
; 566 : //RETAILMSG( 1, (TEXT("%d TX buffer 0x%x\r\n"),i,Tx_loopbuf[i]));
; 567 : Rx_loopbuf[i] = 0;
00024 e28d3c01 add r3, sp, #1, 24
00028 e2832c01 add r2, r3, #1, 24
0002c e3a09000 mov r9, #0
00030 e3a0e000 mov lr, #0
00034 e3a05802 mov r5, #2, 16
00038 e3a04c01 mov r4, #1, 24
0003c e3a06403 mov r6, #3, 8
00040 e3a01000 mov r1, #0
00044 |$L39630|
00044 e4831004 str r1, [r3], #4
00048 e1530002 cmp r3, r2
0004c 1afffffc bne |$L39630|
00050 e3a01801 mov r1, #1, 16
00054 e3811c01 orr r1, r1, #1, 24
00058 e28d2000 add r2, sp, #0
0005c |$L39631|
0005c e1863004 orr r3, r6, r4
00060 e1833005 orr r3, r3, r5
00064 e183300e orr r3, r3, lr
00068 e2844b01 add r4, r4, #1, 22
0006c e78e3002 str r3, [lr, +r2]
00070 e28ee004 add lr, lr, #4
00074 e2866301 add r6, r6, #1, 6
00078 e2855701 add r5, r5, #1, 14
0007c e1540001 cmp r4, r1
00080 bafffff5 blt |$L39631|
; 568 : // RETAILMSG( 1, (TEXT("%d TX buffer 0x%x\r\n"),i,Tx_loopbuf[i]));
; 569 : }
; 570 :
; 571 : //send 256 bytes
; 572 : for(i=0; i<64; i++)
00084 e28d4000 add r4, sp, #0
00088 e3a05040 mov r5, #0x40
0008c |$L39024|
; 573 : {
; 574 : // wrd=ReadWriteDWord(pSpiPhy,0xa55ae77e+i);
; 575 : wrd=ReadWriteDWord(pSpiPhy, (DWORD)Tx_loopbuf[i]);
0008c e4941004 ldr r1, [r4], #4
00090 e1a00007 mov r0, r7
00094 eb000000 bl ReadWriteDWord
00098 e2555001 subs r5, r5, #1
0009c 1afffffa bne |$L39024|
; 576 :
; 577 : }
; 578 :
; 579 : Sleep(100);
000a0 e3a00064 mov r0, #0x64
000a4 eb000000 bl Sleep
; 580 : //send and receive 256 bytes
; 581 : for(i=0; i<64; i++)
000a8 e3a04000 mov r4, #0
000ac e28d5000 add r5, sp, #0
000b0 e28d6c01 add r6, sp, #1, 24
000b4 |$L39028|
; 582 : {
; 583 : // wrd = ReadWriteDWord(pSpiPhy,0xa55ae77e+i);
; 584 : wrd=ReadWriteDWord(pSpiPhy, (DWORD)Tx_loopbuf[i]);
000b4 e7941005 ldr r1, [r4, +r5]
000b8 e1a00007 mov r0, r7
000bc eb000000 bl ReadWriteDWord
; 585 : Rx_loopbuf[i] = wrd;
000c0 e7840006 str r0, [r4, +r6]
000c4 e2844004 add r4, r4, #4
000c8 e3540c01 cmp r4, #1, 24
000cc bafffff8 blt |$L39028|
; 586 : // RETAILMSG( 1, (TEXT("%d loopBackTest222 get 0x%x\r\n"),i,wrd));
; 587 : }
; 588 :
; 589 : for(i=0; i<64; i++)
000d0 e3a04000 mov r4, #0
000d4 e28d7c01 add r7, sp, #1, 24
000d8 e28d8000 add r8, sp, #0
000dc |$L39032|
; 590 : {
; 591 : if (Rx_loopbuf[i] != Tx_loopbuf[i])
000dc e7975104 ldr r5, [r7, +r4, lsl #2]
000e0 e7986104 ldr r6, [r8, +r4, lsl #2]
000e4 e1550006 cmp r5, r6
000e8 0a000008 beq |$L39033|
; 592 : {
; 593 : err_cnt ++;
; 594 : RETAILMSG( 1, (TEXT("loop back error cnt :%d\n"),err_cnt));
000ec e59f003c ldr r0, [pc, #0x3C]
000f0 e2899001 add r9, r9, #1
000f8 eb000000 bl NKDbgPrintfW
; 595 : RETAILMSG( 1, (TEXT("%d, TX buffer 0x%x, RX buffer 0x%x\r\n"), i, Tx_loopbuf[i], Rx_loopbuf[i]));
000fc e59f0028 ldr r0, [pc, #0x28]
00100 e1a03005 mov r3, r5
00104 e1a02006 mov r2, r6
00108 e1a01004 mov r1, r4
0010c eb000000 bl NKDbgPrintfW
00110 |$L39033|
00110 e2844001 add r4, r4, #1
00114 e3540040 cmp r4, #0x40
00118 baffffef blt |$L39032|
; 596 : }
; 597 :
; 598 :
; 599 : }
; 600 :
; 601 : return TRUE;
0011c e3a00001 mov r0, #1
; 602 : }
00120 e28ddc02 add sp, sp, #2, 24
00124 e8bd43f0 ldmia sp!, {r4 - r9, lr}
00128 e12fff1e bx lr
0012c |$L39650|
0012c 00000000 DCD |??_C@_1EK@CLOADHJK@?$AA?$CF?$AAd?$AA?0?$AA?5?$AAT?$AAX?$AA?5?$AAb?$AAu?$AAf?$AAf?$AAe?$AAr?$AA?5?$AA0?$AAx?$AA?$CF?$AAx?$AA?0?$AA?5@|
00130 00000000 DCD |??_C@_1DC@GMHPLEEB@?$AAl?$AAo?$AAo?$AAp?$AA?5?$AAb?$AAa?$AAc?$AAk?$AA?5?$AAe?$AAr?$AAr?$AAo?$AAr?$AA?5?$AAc?$AAn?$AAt?$AA?5@|
00134 |$M39646|
ENDP ; |loopBackTest2|
EXPORT |loopBackTest|
00000 AREA |.text| { |loopBackTest| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$loopBackTest|, PDATA, SELECTION=5, ASSOC=|.text| { |loopBackTest| } ; comdat associative
|$T39666| DCD |$L39665|
DCD 0x40001a01
; Function compile flags: /Ogsy
00000 AREA |.text| { |loopBackTest| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |loopBackTest| PROC
; 606 : {
00000 |$L39665|
00000 e92d4070 stmdb sp!, {r4 - r6, lr}
00004 |$M39663|
00004 e1a05000 mov r5, r0
; 607 : int i;
; 608 : DWORD wrd;
; 609 :
; 610 : //send 256 bytes
; 611 : for(i=0; i<64; i++)
00008 e59f6054 ldr r6, [pc, #0x54]
0000c e3a04000 mov r4, #0
00010 |$L39043|
; 612 : {
; 613 : wrd=ReadWriteDWord(pSpiPhy,0xa55ae77e+i);
00010 e0441006 sub r1, r4, r6
00014 e1a00005 mov r0, r5
00018 eb000000 bl ReadWriteDWord
0001c e2844001 add r4, r4, #1
00020 e3540040 cmp r4, #0x40
00024 bafffff9 blt |$L39043|
; 614 :
; 615 : }
; 616 :
; 617 : //send and receive 256 bytes
; 618 : for(i=0; i<64; i++)
00028 e3a04000 mov r4, #0
0002c |$L39046|
; 619 : {
; 620 : wrd = ReadWriteDWord(pSpiPhy,0xa55ae77e+i);
0002c e0441006 sub r1, r4, r6
00030 e1a00005 mov r0, r5
00034 eb000000 bl ReadWriteDWord
00038 e1a02000 mov r2, r0
; 621 : RETAILMSG( 1, (TEXT("%d loopBackTest222 get 0x%x\r\n"),i,wrd));
0003c e59f001c ldr r0, [pc, #0x1C]
00040 e1a01004 mov r1, r4
00044 eb000000 bl NKDbgPrintfW
00048 e2844001 add r4, r4, #1
0004c e3540040 cmp r4, #0x40
00050 bafffff5 blt |$L39046|
; 622 : }
; 623 :
; 624 : return TRUE;
00054 e3a00001 mov r0, #1
; 625 : }
00058 e8bd4070 ldmia sp!, {r4 - r6, lr}
0005c e12fff1e bx lr
00060 |$L39668|
00060 00000000 DCD |??_C@_1DM@INIOFAAJ@?$AA?$CF?$AAd?$AA?5?$AAl?$AAo?$AAo?$AAp?$AAB?$AAa?$AAc?$AAk?$AAT?$AAe?$AAs?$AAt?$AA2?$AA2?$AA2?$AA?5?$AAg@|
00064 5aa51882 DCD 0x5aa51882
00068 |$M39664|
ENDP ; |loopBackTest|
EXPORT |WriteFWtoStellar|
EXPORT |??_C@_1GC@EAMDIMGM@?$AAS?$AAm?$AAs?$AAS?$AAp?$AAi?$AA?3?$AA?5?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAL?$AAe?$AAn@| [ DATA ] ; `string'
EXPORT |??_C@_1EI@BPANDHCA@?$AAS?$AAm?$AAs?$AAS?$AAp?$AAi?$AA?3?$AA?5?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAE?$AAn?$AAt@| [ DATA ] ; `string'
EXPORT |??_C@_1EA@IMHOOLJD@?$AAS?$AAP?$AAI?$AA?$CB?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAE?$AAn?$AAt?$AAe?$AAr?$AAi?$AAn@| [ DATA ] ; `string'
EXPORT |??_C@_1FE@JDOKHIJM@?$AAS?$AAP?$AAI?$AA?$CB?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAL?$AAe?$AAf?$AAt?$AAO?$AAv?$AAe@| [ DATA ] ; `string'
00000 AREA |.text| { |WriteFWtoStellar| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$WriteFWtoStellar|, PDATA, SELECTION=5, ASSOC=|.text| { |WriteFWtoStellar| } ; comdat associative
|$T39685| DCD |$L39684|
DCD 0x40002c01
00000 AREA |.rdata| { |??_C@_1EA@IMHOOLJD@?$AAS?$AAP?$AAI?$AA?$CB?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAE?$AAn?$AAt?$AAe?$AAr?$AAi?$AAn@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1EA@IMHOOLJD@?$AAS?$AAP?$AAI?$AA?$CB?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAE?$AAn?$AAt?$AAe?$AAr?$AAi?$AAn@| DCB "S"
DCB 0x0, "P", 0x0, "I", 0x0, "!", 0x0, "W", 0x0, "r", 0x0, "i"
DCB 0x0, "t", 0x0, "e", 0x0, "F", 0x0, "W", 0x0, " ", 0x0, ":"
DCB 0x0, "E", 0x0, "n", 0x0, "t", 0x0, "e", 0x0, "r", 0x0, "i"
DCB 0x0, "n", 0x0, "g", 0x0, " ", 0x0, "P", 0x0, "h", 0x0, "a"
DCB 0x0, "z", 0x0, "e", 0x0, " ", 0x0, "2", 0x0, 0xd, 0x0, 0xa
DCB 0x0, 0x0, 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1FE@JDOKHIJM@?$AAS?$AAP?$AAI?$AA?$CB?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAL?$AAe?$AAf?$AAt?$AAO?$AAv?$AAe@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1FE@JDOKHIJM@?$AAS?$AAP?$AAI?$AA?$CB?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAL?$AAe?$AAf?$AAt?$AAO?$AAv?$AAe@| DCB "S"
DCB 0x0, "P", 0x0, "I", 0x0, "!", 0x0, "W", 0x0, "r", 0x0, "i"
DCB 0x0, "t", 0x0, "e", 0x0, "F", 0x0, "W", 0x0, " ", 0x0, ":"
DCB 0x0, "L", 0x0, "e", 0x0, "f", 0x0, "t", 0x0, "O", 0x0, "v"
DCB 0x0, "e", 0x0, "r", 0x0, " ", 0x0, "D", 0x0, "a", 0x0, "t"
DCB 0x0, "a", 0x0, " ", 0x0, "L", 0x0, "e", 0x0, "n", 0x0, " "
DCB 0x0, "%", 0x0, "d", 0x0, " ", 0x0, "B", 0x0, "y", 0x0, "t"
DCB 0x0, "e", 0x0, "s", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0, 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1GC@EAMDIMGM@?$AAS?$AAm?$AAs?$AAS?$AAp?$AAi?$AA?3?$AA?5?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAL?$AAe?$AAn@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1GC@EAMDIMGM@?$AAS?$AAm?$AAs?$AAS?$AAp?$AAi?$AA?3?$AA?5?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAL?$AAe?$AAn@| DCB "S"
DCB 0x0, "m", 0x0, "s", 0x0, "S", 0x0, "p", 0x0, "i", 0x0, ":"
DCB 0x0, " ", 0x0, "W", 0x0, "r", 0x0, "i", 0x0, "t", 0x0, "e"
DCB 0x0, "F", 0x0, "W", 0x0, " ", 0x0, ":", 0x0, "L", 0x0, "e"
DCB 0x0, "n", 0x0, " ", 0x0, "%", 0x0, "d", 0x0, " ", 0x0, "b"
DCB 0x0, "y", 0x0, "t", 0x0, "e", 0x0, "s", 0x0, " ", 0x0, "P"
DCB 0x0, "a", 0x0, "d", 0x0, "d", 0x0, "i", 0x0, "n", 0x0, "g"
DCB 0x0, " ", 0x0, "%", 0x0, "d", 0x0, " ", 0x0, "B", 0x0, "y"
DCB 0x0, "t", 0x0, "e", 0x0, "s", 0x0, 0xd, 0x0, 0xa, 0x0, 0x0
DCB 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1EI@BPANDHCA@?$AAS?$AAm?$AAs?$AAS?$AAp?$AAi?$AA?3?$AA?5?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAE?$AAn?$AAt@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1EI@BPANDHCA@?$AAS?$AAm?$AAs?$AAS?$AAp?$AAi?$AA?3?$AA?5?$AAW?$AAr?$AAi?$AAt?$AAe?$AAF?$AAW?$AA?5?$AA?3?$AAE?$AAn?$AAt@| DCB "S"
DCB 0x0, "m", 0x0, "s", 0x0, "S", 0x0, "p", 0x0, "i", 0x0, ":"
DCB 0x0, " ", 0x0, "W", 0x0, "r", 0x0, "i", 0x0, "t", 0x0, "e"
DCB 0x0, "F", 0x0, "W", 0x0, " ", 0x0, ":", 0x0, "E", 0x0, "n"
DCB 0x0,
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -