📄 aclink.cod
字号:
; Listing generated by Microsoft (R) Optimizing Compiler Version 13.10.4345
TTL C:\WM520\PLATFORM\AL270\Platform\MAINSTONEII\SRC\DRIVERS\TOUCH\.\aclink.c
CODE32
00000 AREA |.drectve|, DRECTVE
DCB "-defaultlib:coredll.lib "
DCB "-defaultlib:corelibc.lib "
00000 AREA |.bss|, NOINIT
|hACLinkControlMutex| % 0x4
|g_pAc97Regs| % 0x4
|g_pOSTRegs| % 0x4
|g_pICRegs| % 0x4
|g_pGPIORegs| % 0x4
|g_pClockRegs| % 0x4
|g_IsAC97Configured| % 0x4
|g_pAc97Shared| % 0x4
00000 AREA |.rdata|, DATA, READONLY
|EdbgVendorIds| DCW 0x0
DCW 0x0
DCD 0x4033
DCB 0x1
DCB "AD", 0x0
DCW 0x1050
DCW 0x940
DCD 0x4005
DCB 0x1
DCB "LS", 0x0
DCW 0x1050
DCW 0x940
DCD 0x2078
DCB 0x1
DCB "LS", 0x0
DCW 0x10ec
DCW 0x8029
DCD 0xc0f0
DCB 0x1
DCB "KS", 0x0
DCW 0x10ec
DCW 0x8129
DCD 0x0
DCB 0x4
DCB "RT", 0x0
DCW 0x10ec
DCW 0x8139
DCD 0x900b
DCB 0x4
DCB "RT", 0x0
DCW 0x10ec
DCW 0x8139
DCD 0xd0c9
DCB 0x4
DCB "RT", 0x0
DCW 0x10ec
DCW 0x8139
DCD 0xe04c
DCB 0x4
DCB "RT", 0x0
DCW 0x1186
DCW 0x1300
DCD 0x50ba
DCB 0x4
DCB "DL", 0x0
DCW 0x100b
DCW 0x20
DCD 0xa0cc
DCB 0x5
DCB "NG", 0x0
DCW 0x10b7
DCW 0x9050
DCD 0x6008
DCB 0x6
DCB "3C", 0x0
DCW 0x10b7
DCW 0x9200
DCD 0x476
DCB 0x6
DCB "3C", 0x0
EXPORT |DeAllocateACLinkResources|
IMPORT |VirtualFree|
IMPORT |UnmapViewOfFile|
IMPORT |CloseHandle|
; File c:\wm520\platform\al270\platform\mainstoneii\src\drivers\touch\aclink.c
00000 AREA |.text| { |DeAllocateACLinkResources| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$DeAllocateACLinkResources|, PDATA, SELECTION=5, ASSOC=|.text| { |DeAllocateACLinkResources| } ; comdat associative
|$T39971| DCD |$L39970|
DCD 0x40003901
; Function compile flags: /Ogsy
00000 AREA |.text| { |DeAllocateACLinkResources| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |DeAllocateACLinkResources| PROC
; 168 : {
00000 |$L39970|
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M39968|
; 169 :
; 170 : if (g_pAc97Regs)
00004 e59f40d4 ldr r4, [pc, #0xD4]
00008 e5940018 ldr r0, [r4, #0x18]
0000c e3500000 cmp r0, #0
00010 0a000004 beq |$L39828|
; 171 : {
; 172 : VirtualFree((void *)g_pAc97Regs, 0, MEM_RELEASE);
00014 e3a02902 mov r2, #2, 18
00018 e3a01000 mov r1, #0
0001c eb000000 bl VirtualFree
; 173 : g_pAc97Regs = NULL;
00020 e3a03000 mov r3, #0
00024 e5843018 str r3, [r4, #0x18]
00028 |$L39828|
; 174 : }
; 175 :
; 176 : if (g_pICRegs)
00028 e5940010 ldr r0, [r4, #0x10]
0002c e3500000 cmp r0, #0
00030 0a000004 beq |$L39831|
; 177 : {
; 178 : VirtualFree((void *)g_pICRegs, 0, MEM_RELEASE);
00034 e3a02902 mov r2, #2, 18
00038 e3a01000 mov r1, #0
0003c eb000000 bl VirtualFree
; 179 : g_pICRegs = NULL;
00040 e3a03000 mov r3, #0
00044 e5843010 str r3, [r4, #0x10]
00048 |$L39831|
; 180 : }
; 181 :
; 182 : if (g_pClockRegs)
00048 e5940008 ldr r0, [r4, #8]
0004c e3500000 cmp r0, #0
00050 0a000004 beq |$L39834|
; 183 : {
; 184 : VirtualFree((void *)g_pClockRegs, 0, MEM_RELEASE);
00054 e3a02902 mov r2, #2, 18
00058 e3a01000 mov r1, #0
0005c eb000000 bl VirtualFree
; 185 : g_pClockRegs = NULL;
00060 e3a03000 mov r3, #0
00064 e5843008 str r3, [r4, #8]
00068 |$L39834|
; 186 : }
; 187 :
; 188 : if (g_pGPIORegs)
00068 e594000c ldr r0, [r4, #0xC]
0006c e3500000 cmp r0, #0
00070 0a000004 beq |$L39837|
; 189 : {
; 190 : VirtualFree((void *)g_pGPIORegs, 0, MEM_RELEASE);
00074 e3a02902 mov r2, #2, 18
00078 e3a01000 mov r1, #0
0007c eb000000 bl VirtualFree
; 191 : g_pGPIORegs = NULL;
00080 e3a03000 mov r3, #0
00084 e584300c str r3, [r4, #0xC]
00088 |$L39837|
; 192 : }
; 193 :
; 194 : if (g_pOSTRegs)
00088 e5940014 ldr r0, [r4, #0x14]
0008c e3500000 cmp r0, #0
00090 0a000004 beq |$L39840|
; 195 : {
; 196 : VirtualFree((void *)g_pOSTRegs, 0, MEM_RELEASE);
00094 e3a02902 mov r2, #2, 18
00098 e3a01000 mov r1, #0
0009c eb000000 bl VirtualFree
; 197 : g_pOSTRegs = NULL;
000a0 e3a03000 mov r3, #0
000a4 e5843014 str r3, [r4, #0x14]
000a8 |$L39840|
; 198 : }
; 199 :
; 200 : if (hACLinkControlMutex)
000a8 e594001c ldr r0, [r4, #0x1C]
000ac e3500000 cmp r0, #0
; 201 : {
; 202 : CloseHandle(hACLinkControlMutex);
000b0 1b000000 blne CloseHandle
; 203 : }
; 204 :
; 205 : if (g_pAc97Shared)
000b4 e5940000 ldr r0, [r4]
000b8 e3500000 cmp r0, #0
000bc 0a000004 beq |$L39844|
; 206 : {
; 207 : g_pAc97Shared->acLinkTouchInit = FALSE;
000c0 e3a03000 mov r3, #0
000c4 e5803000 str r3, [r0]
; 208 : UnmapViewOfFile((void *)g_pAc97Shared);
000c8 eb000000 bl UnmapViewOfFile
; 209 : g_pAc97Shared = NULL;
000cc e3a03000 mov r3, #0
000d0 e5843000 str r3, [r4]
000d4 |$L39844|
; 210 : }
; 211 : return(TRUE);
000d4 e3a00001 mov r0, #1
; 212 : }
000d8 e8bd4010 ldmia sp!, {r4, lr}
000dc e12fff1e bx lr
000e0 |$L39973|
000e0 00000000 DCD |g_pAc97Shared|
000e4 |$M39969|
ENDP ; |DeAllocateACLinkResources|
EXPORT |ConfigureAC97Control|
EXPORT |??_C@_1HE@HIFNGBGO@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAC@| [ DATA ] ; `string'
EXPORT |??_C@_1HC@LGBMLBLB@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAb@| [ DATA ] ; `string'
IMPORT |XllpAc97Init|
IMPORT |NKDbgPrintfW|
00020 AREA |.bss|, NOINIT
|g_AC97CtxStruct| % 0x1c
00000 AREA |.text| { |ConfigureAC97Control| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$ConfigureAC97Control|, PDATA, SELECTION=5, ASSOC=|.text| { |ConfigureAC97Control| } ; comdat associative
|$T39983| DCD |$L39982|
DCD 0x40001e01
00000 AREA |.rdata| { |??_C@_1HC@LGBMLBLB@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAb@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1HC@LGBMLBLB@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAb@| DCB "$$"
DCB 0x0, "$$", 0x0, "$$", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, "$$"
DCB 0x0, "$$", 0x0, "$$", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, "$$"
DCB 0x0, "$$", 0x0, "$$", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, " "
DCB 0x0, "b", 0x0, "e", 0x0, "f", 0x0, "o", 0x0, "r", 0x0, "e"
DCB 0x0, " ", 0x0, "X", 0x0, "l", 0x0, "l", 0x0, "p", 0x0, "A"
DCB 0x0, "c", 0x0, "9", 0x0, "7", 0x0, "I", 0x0, "n", 0x0, "i"
DCB 0x0, "t", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, "s", 0x0, "t"
DCB 0x0, "a", 0x0, "t", 0x0, "u", 0x0, "s", 0x0, ":", 0x0, " "
DCB 0x0, "%", 0x0, "x", 0x0, ".", 0x0, ".", 0x0, ".", 0x0, 0xd
DCB 0x0, 0xa, 0x0, 0x0, 0x0 ; `string'
00000 AREA |.rdata| { |??_C@_1HE@HIFNGBGO@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAC@| }, DATA, READONLY, SELECTION=2 ; comdat any
|??_C@_1HE@HIFNGBGO@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAC@| DCB "$$"
DCB 0x0, "$$", 0x0, "$$", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, "$$"
DCB 0x0, "$$", 0x0, "$$", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, "$$"
DCB 0x0, "$$", 0x0, "$$", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, " "
DCB 0x0, "C", 0x0, "o", 0x0, "n", 0x0, "f", 0x0, "i", 0x0, "g"
DCB 0x0, "u", 0x0, "r", 0x0, "e", 0x0, "A", 0x0, "C", 0x0, "9"
DCB 0x0, "7", 0x0, "C", 0x0, "o", 0x0, "n", 0x0, "t", 0x0, "r"
DCB 0x0, "o", 0x0, "l", 0x0, " ", 0x0, " ", 0x0, " ", 0x0, "s"
DCB 0x0, "t", 0x0, "a", 0x0, "t", 0x0, "u", 0x0, "s", 0x0, ":"
DCB 0x0, " ", 0x0, "%", 0x0, "x", 0x0, ".", 0x0, ".", 0x0, "."
DCB 0x0, 0xd, 0x0, 0xa, 0x0, 0x0, 0x0 ; `string'
; Function compile flags: /Ogsy
00000 AREA |.text| { |ConfigureAC97Control| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |ConfigureAC97Control| PROC
; 215 : {
00000 |$L39982|
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M39980|
; 216 : if (g_IsAC97Configured)
00004 e59f4068 ldr r4, [pc, #0x68]
00008 e5943020 ldr r3, [r4, #0x20]
0000c e3530000 cmp r3, #0
; 217 : {
; 218 : return(TRUE);
00010 1a000012 bne |$L39979|
; 219 : }
; 220 : NKDbgPrintfW(TEXT("$$$ $$$ $$$ ConfigureAC97Control status: %x...\r\n"));
00014 e59f0054 ldr r0, [pc, #0x54]
00018 eb000000 bl NKDbgPrintfW
; 221 :
; 222 : if (FALSE == g_pAc97Shared->acLinkAudioInit)
0001c e594201c ldr r2, [r4, #0x1C]
00020 e5923004 ldr r3, [r2, #4]
00024 e3530000 cmp r3, #0
00028 1a000008 bne |$L39853|
; 223 : {//audio driver isn't here or it has not powered on aclink
; 224 : NKDbgPrintfW(TEXT("$$$ $$$ $$$ before XllpAc97Init status: %x...\r\n"));
0002c e59f0038 ldr r0, [pc, #0x38]
00030 eb000000 bl NKDbgPrintfW
; 225 :
; 226 : if (XllpAc97Init(&g_AC97CtxStruct) != XLLP_AC97_NO_ERROR)
00034 e1a00004 mov r0, r4
00038 eb000000 bl XllpAc97Init
0003c e3500000 cmp r0, #0
; 227 : {
; 228 : return(FALSE);
00040 13a00000 movne r0, #0
; 236 : }
00044 18bd4010 ldmneia sp!, {r4, lr}
00048 112fff1e bxne lr
; 227 : {
; 228 : return(FALSE);
0004c e594201c ldr r2, [r4, #0x1C]
00050 |$L39853|
; 229 : }
; 230 : }
; 231 : g_pAc97Shared->acLinkTouchInit = TRUE;
00050 e3a03001 mov r3, #1
; 232 :
; 233 : g_IsAC97Configured = TRUE;
00054 e3a01001 mov r1, #1
00058 e5823000 str r3, [r2]
0005c e5841020 str r1, [r4, #0x20]
00060 |$L39979|
; 234 :
; 235 : return(TRUE);
00060 e3a00001 mov r0, #1
; 236 : }
00064 e8bd4010 ldmia sp!, {r4, lr}
00068 e12fff1e bx lr
0006c |$L39985|
0006c 00000000 DCD |??_C@_1HC@LGBMLBLB@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAb@|
00070 00000000 DCD |??_C@_1HE@HIFNGBGO@?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA$?$AA$?$AA$?$AA?5?$AA?5?$AA?5?$AA?5?$AAC@|
00074 00000000 DCD |g_AC97CtxStruct|
00078 |$M39981|
ENDP ; |ConfigureAC97Control|
EXPORT |UnConfigureAC97Control|
IMPORT |XllpAc97DeInit|
00000 AREA |.text| { |UnConfigureAC97Control| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$UnConfigureAC97Control|, PDATA, SELECTION=5, ASSOC=|.text| { |UnConfigureAC97Control| } ; comdat associative
|$T39995| DCD |$L39994|
DCD 0x40001801
; Function compile flags: /Ogsy
00000 AREA |.text| { |UnConfigureAC97Control| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |UnConfigureAC97Control| PROC
; 239 : {
00000 |$L39994|
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M39992|
; 240 : if (!g_IsAC97Configured)
00004 e59f4050 ldr r4, [pc, #0x50]
00008 e5943020 ldr r3, [r4, #0x20]
0000c e3530000 cmp r3, #0
; 241 : {
; 242 : return(TRUE);
00010 0a00000e beq |$L39991|
; 243 : }
; 244 :
; 245 : if (FALSE == g_pAc97Shared->acLinkAudioInit)
00014 e594201c ldr r2, [r4, #0x1C]
00018 e5923004 ldr r3, [r2, #4]
0001c e3530000 cmp r3, #0
00020 1a000006 bne |$L39858|
; 246 : {//audio driver isn't here or it has already been powered down
; 247 : if (XllpAc97DeInit(&g_AC97CtxStruct) != XLLP_AC97_NO_ERROR)
00024 e1a00004 mov r0, r4
00028 eb000000 bl XllpAc97DeInit
0002c e3500000 cmp r0, #0
; 248 : {
; 249 : return(FALSE);
00030 13a00000 movne r0, #0
; 257 : }
00034 18bd4010 ldmneia sp!, {r4, lr}
00038 112fff1e bxne lr
; 248 : {
; 249 : return(FALSE);
0003c e594201c ldr r2, [r4, #0x1C]
00040 |$L39858|
; 250 : }
; 251 : }
; 252 : g_pAc97Shared->acLinkTouchInit = FALSE;
00040 e3a03000 mov r3, #0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -