📄 ms2_serial.cod
字号:
; Function compile flags: /Ogsy
00000 AREA |.text| { |?DeleteSerialObject@@YAXPAVCSerialPDD@@@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?DeleteSerialObject@@YAXPAVCSerialPDD@@@Z| PROC ; DeleteSerialObject
; 230 : {
00000 |$L31341|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M31339|
00004 e3500000 cmp r0, #0
; 231 : if (pSerialPDD)
; 232 : delete pSerialPDD;
00008 15903000 ldrne r3, [r0]
0000c 13a01001 movne r1, #1
00010 15933000 ldrne r3, [r3]
00014 11a0e00f movne lr, pc
00018 112fff13 bxne r3
; 233 : }
0001c e49de004 ldr lr, [sp], #4
00020 e12fff1e bx lr
00024 |$M31340|
ENDP ; |?DeleteSerialObject@@YAXPAVCSerialPDD@@@Z|, DeleteSerialObject
IMPORT |?Init@CBulPdd16550@@UAAHXZ| ; CBulPdd16550::Init
00000 AREA |.text| { |?Init@CBulPdd16550FUART@@UAAHXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 AREA |.pdata$$?Init@CBulPdd16550FUART@@UAAHXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?Init@CBulPdd16550FUART@@UAAHXZ| } ; comdat associative
|$T31355| DCD |$L31354|
DCD 0x40002001
; Function compile flags: /Ogsy
00000 AREA |.text| { |?Init@CBulPdd16550FUART@@UAAHXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 |?Init@CBulPdd16550FUART@@UAAHXZ| PROC ; CBulPdd16550FUART::Init
; 49 : virtual BOOL Init() {
00000 |$L31354|
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M31352|
00004 e1a04000 mov r4, r0
; 50 : if (CBulPdd16550::Init() ) {
00008 eb000000 bl |?Init@CBulPdd16550@@UAAHXZ|
0000c e3500000 cmp r0, #0
00010 0a000017 beq |$L30692|
; 51 : ConfigurePinout();
00014 e5943148 ldr r3, [r4, #0x148]
00018 e3a02d0e mov r2, #0xE, 26
0001c e3a01aa9 mov r1, #0xA9, 20
00020 e5832028 str r2, [r3, #0x28]
00024 e5942148 ldr r2, [r4, #0x148]
00028 e3811e55 orr r1, r1, #0x55, 28
; 52 : //Enable FFUART clock
; 53 : m_pDCCLKReg->cken |= XLLP_CLKEN_FFUART ;
; 54 : return TRUE;
0002c e3a00001 mov r0, #1
00030 e5923010 ldr r3, [r2, #0x10]
00034 e3c3307c bic r3, r3, #0x7C
00038 e5823010 str r3, [r2, #0x10]
0003c e5942148 ldr r2, [r4, #0x148]
00040 e5923010 ldr r3, [r2, #0x10]
00044 e3833d0e orr r3, r3, #0xE, 26
00048 e5823010 str r3, [r2, #0x10]
0004c e5942148 ldr r2, [r4, #0x148]
00050 e592305c ldr r3, [r2, #0x5C]
00054 e1833001 orr r3, r3, r1
00058 e582305c str r3, [r2, #0x5C]
0005c e594214c ldr r2, [r4, #0x14C]
00060 e5923004 ldr r3, [r2, #4]
00064 e3833040 orr r3, r3, #0x40
00068 e5823004 str r3, [r2, #4]
; 58 : }
0006c e8bd4010 ldmia sp!, {r4, lr}
00070 e12fff1e bx lr
00074 |$L30692|
; 55 : }
; 56 : else
; 57 : return FALSE;
00074 e3a00000 mov r0, #0
; 58 : }
00078 e8bd4010 ldmia sp!, {r4, lr}
0007c e12fff1e bx lr
00080 |$M31353|
ENDP ; |?Init@CBulPdd16550FUART@@UAAHXZ|, CBulPdd16550FUART::Init
; File c:\wm520\public\wpc\cesysgen\oak\inc\pdd16550.h
00000 AREA |.text| { |?SerialRegisterRestore@CBulPdd16550FUART@@UAAXXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 AREA |.pdata$$?SerialRegisterRestore@CBulPdd16550FUART@@UAAXXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?SerialRegisterRestore@CBulPdd16550FUART@@UAAXXZ| } ; comdat associative
|$T31369| DCD |$L31368|
DCD 0x40001901
; Function compile flags: /Ogsy
; File c:\wm520\platform\al270\platform\mainstoneii\src\drivers\serial\ms2_serial.cpp
00000 AREA |.text| { |?SerialRegisterRestore@CBulPdd16550FUART@@UAAXXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 |?SerialRegisterRestore@CBulPdd16550FUART@@UAAXXZ| PROC ; CBulPdd16550FUART::SerialRegisterRestore
; 59 : virtual void SerialRegisterRestore() {
00000 |$L31368|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M31366|
; 60 : ConfigurePinout();
00004 e5903148 ldr r3, [r0, #0x148]
00008 e3a02d0e mov r2, #0xE, 26
0000c e3a01aa9 mov r1, #0xA9, 20
00010 e5832028 str r2, [r3, #0x28]
00014 e5902148 ldr r2, [r0, #0x148]
00018 e3811e55 orr r1, r1, #0x55, 28
; 61 : CBulPdd16550::SerialRegisterRestore();
0001c e5923010 ldr r3, [r2, #0x10]
00020 e3c3307c bic r3, r3, #0x7C
00024 e5823010 str r3, [r2, #0x10]
00028 e5902148 ldr r2, [r0, #0x148]
0002c e5923010 ldr r3, [r2, #0x10]
00030 e3833d0e orr r3, r3, #0xE, 26
00034 e5823010 str r3, [r2, #0x10]
00038 e5902148 ldr r2, [r0, #0x148]
0003c e592305c ldr r3, [r2, #0x5C]
00040 e1833001 orr r3, r3, r1
00044 e582305c str r3, [r2, #0x5C]
00048 e5900124 ldr r0, [r0, #0x124]
0004c e5903000 ldr r3, [r0]
00050 e5933054 ldr r3, [r3, #0x54]
00054 e1a0e00f mov lr, pc
00058 e12fff13 bx r3
; 62 : }
0005c e49de004 ldr lr, [sp], #4
00060 e12fff1e bx lr
00064 |$M31367|
ENDP ; |?SerialRegisterRestore@CBulPdd16550FUART@@UAAXXZ|, CBulPdd16550FUART::SerialRegisterRestore
00000 AREA |.text| { |??_GCBulPdd16550FUART@@UAAPAXI@Z| }, CODE, ARM, SELECTION=2 ; comdat any
00000 AREA |.pdata$$??_GCBulPdd16550FUART@@UAAPAXI@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |??_GCBulPdd16550FUART@@UAAPAXI@Z| } ; comdat associative
|$T31383| DCD |$L31382|
DCD 0x40000a01
; Function compile flags: /Ogsy
00000 AREA |.text| { |??_GCBulPdd16550FUART@@UAAPAXI@Z| }, CODE, ARM, SELECTION=2 ; comdat any
00000 |??_GCBulPdd16550FUART@@UAAPAXI@Z| PROC ; CBulPdd16550FUART::`scalar deleting destructor'
00000 |$L31382|
00000 e92d4030 stmdb sp!, {r4, r5, lr}
00004 |$M31380|
00004 e1a04001 mov r4, r1
00008 e1a05000 mov r5, r0
0000c eb000000 bl |??1CBulPdd16550@@UAA@XZ|
00010 e3140001 tst r4, #1
00014 11a00005 movne r0, r5
00018 1b000000 blne |??3@YAXPAX@Z|
0001c e1a00005 mov r0, r5
00020 e8bd4030 ldmia sp!, {r4, r5, lr}
00024 e12fff1e bx lr
00028 |$M31381|
ENDP ; |??_GCBulPdd16550FUART@@UAAPAXI@Z|, CBulPdd16550FUART::`scalar deleting destructor'
IMPORT |MmMapIoSpace|
00000 AREA |.text| { |?Init@CBulPdd16550BUART@@UAAHXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 AREA |.pdata$$?Init@CBulPdd16550BUART@@UAAHXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?Init@CBulPdd16550BUART@@UAAHXZ| } ; comdat associative
|$T31398| DCD |$L31397|
DCD 0x40002f01
; Function compile flags: /Ogsy
00000 AREA |.text| { |?Init@CBulPdd16550BUART@@UAAHXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 |?Init@CBulPdd16550BUART@@UAAHXZ| PROC ; CBulPdd16550BUART::Init
; 98 : virtual BOOL Init() {
00000 |$L31397|
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M31395|
00004 e1a04000 mov r4, r0
; 99 : if (m_pBCRReg==NULL) {
00008 e5943154 ldr r3, [r4, #0x154]
0000c e3530000 cmp r3, #0
00010 1a000005 bne |$L30733|
; 100 : PHYSICAL_ADDRESS ioPhysicalBase = { MAINSTONEII_BASE_REG_PA_FPGA, 0 };
00014 e3a00302 mov r0, #2, 6
00018 e3a01000 mov r1, #0
; 101 : m_pBCRReg =(PMAINSTONEII_BLR_REGS) MmMapIoSpace(ioPhysicalBase, sizeof(MAINSTONEII_BLR_REGS),FALSE) ;
0001c e3a03000 mov r3, #0
00020 e3a02c01 mov r2, #1, 24
00024 eb000000 bl MmMapIoSpace
00028 e5840154 str r0, [r4, #0x154]
0002c |$L30733|
; 102 : }
; 103 :
; 104 : if (m_pBCRReg!=NULL && CBulPdd16550::Init()) {
0002c e5943154 ldr r3, [r4, #0x154]
00030 e3530000 cmp r3, #0
00034 0a00001d beq |$L30737|
00038 e1a00004 mov r0, r4
0003c eb000000 bl |?Init@CBulPdd16550@@UAAHXZ|
00040 e3500000 cmp r0, #0
00044 0a000019 beq |$L30737|
; 105 : ConfigurePinout();
00048 e5943148 ldr r3, [r4, #0x148]
0004c e3a02b0a mov r2, #0xA, 22
; 106 : //Enable BTUART clock
; 107 : m_pDCCLKReg->cken |= XLLP_CLKEN_BTUART ;
; 108 : return TRUE;
00050 e3a00001 mov r0, #1
00054 e5832028 str r2, [r3, #0x28]
00058 e5942148 ldr r2, [r4, #0x148]
0005c e5923010 ldr r3, [r2, #0x10]
00060 e3c33b05 bic r3, r3, #5, 22
00064 e5823010 str r3, [r2, #0x10]
00068 e5942148 ldr r2, [r4, #0x148]
0006c e5923010 ldr r3, [r2, #0x10]
00070 e3833b0a orr r3, r3, #0xA, 22
00074 e5823010 str r3, [r2, #0x10]
00078 e5942148 ldr r2, [r4, #0x148]
0007c e592305c ldr r3, [r2, #0x5C]
00080 e3833699 orr r3, r3, #0x99, 12
00084 e582305c str r3, [r2, #0x5C]
00088 e5942154 ldr r2, [r4, #0x154]
0008c e5b23080 ldr r3, [r2, #0x80]!
00090 e3833c01 orr r3, r3, #1, 24
00094 e5823000 str r3, [r2]
00098 e594214c ldr r2, [r4, #0x14C]
0009c e5923004 ldr r3, [r2, #4]
000a0 e3833080 orr r3, r3, #0x80
000a4 e5823004 str r3, [r2, #4]
; 112 : }
000a8 e8bd4010 ldmia sp!, {r4, lr}
000ac e12fff1e bx lr
000b0 |$L30737|
; 109 : }
; 110 : else
; 111 : return FALSE;
000b0 e3a00000 mov r0, #0
; 112 : }
000b4 e8bd4010 ldmia sp!, {r4, lr}
000b8 e12fff1e bx lr
000bc |$M31396|
ENDP ; |?Init@CBulPdd16550BUART@@UAAHXZ|, CBulPdd16550BUART::Init
; File c:\wm520\public\wpc\cesysgen\oak\inc\pdd16550.h
00000 AREA |.text| { |?SerialRegisterRestore@CBulPdd16550BUART@@UAAXXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 AREA |.pdata$$?SerialRegisterRestore@CBulPdd16550BUART@@UAAXXZ|, PDATA, SELECTION=5, ASSOC=|.text| { |?SerialRegisterRestore@CBulPdd16550BUART@@UAAXXZ| } ; comdat associative
|$T31412| DCD |$L31411|
DCD 0x40001b01
; Function compile flags: /Ogsy
; File c:\wm520\platform\al270\platform\mainstoneii\src\drivers\serial\ms2_serial.cpp
00000 AREA |.text| { |?SerialRegisterRestore@CBulPdd16550BUART@@UAAXXZ| }, CODE, ARM, SELECTION=2 ; comdat any
00000 |?SerialRegisterRestore@CBulPdd16550BUART@@UAAXXZ| PROC ; CBulPdd16550BUART::SerialRegisterRestore
; 113 : virtual
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -