⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ms2_ohci2.cod

📁 PXA270 平台 Windows Mobile 5。0 USB Host 驱动
💻 COD
📖 第 1 页 / 共 2 页
字号:
  0000c	e5b13098	 ldr         r3, [r1, #0x98]!
  00010	e59f2020	 ldr         r2, [pc, #0x20]
  00014	e3530000	 cmp         r3, #0

; 52   :             MmUnmapIoSpace((PVOID)m_pDCGPIOReg,0);

  00018	15910000	 ldrne       r0, [r1]
  0001c	13a01000	 movne       r1, #0
  00020	e5842000	 str         r2, [r4]
  00024	1b000000	 blne        MmUnmapIoSpace

; 53   :     }

  00028	e1a00004	 mov         r0, r4
  0002c	eb000000	 bl          |??1SOhcdPdd@@UAA@XZ|
  00030	e8bd4010	 ldmia       sp!, {r4, lr}
  00034	e12fff1e	 bx          lr
  00038		 |$L30011|
  00038	00000000	 DCD         |??_7MainStoneOhciPdd@@6B@|
  0003c		 |$M30007|

			 ENDP  ; |??1MainStoneOhciPdd@@UAA@XZ|, MainStoneOhciPdd::~MainStoneOhciPdd

	IMPORT	|XllpGpioSetDirectionIn|
	IMPORT	|XllpGpioSetAlternateFn|

  00000			 AREA	 |.text| { |?SetupUSBHostPWR@MainStoneOhciPdd@@UAAXH@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?SetupUSBHostPWR@MainStoneOhciPdd@@UAAXH@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?SetupUSBHostPWR@MainStoneOhciPdd@@UAAXH@Z| } ; comdat associative
|$T30018| DCD	|$L30017|
	DCD	0x40001502
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?SetupUSBHostPWR@MainStoneOhciPdd@@UAAXH@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?SetupUSBHostPWR@MainStoneOhciPdd@@UAAXH@Z| PROC ; MainStoneOhciPdd::SetupUSBHostPWR

; 83   :     	{

  00000		 |$L30017|
  00000	e92d4010	 stmdb       sp!, {r4, lr}
  00004	e24dd01c	 sub         sp, sp, #0x1C
  00008		 |$M30015|
  00008	e1a04000	 mov         r4, r0

; 84   :         unsigned long  ulPinArrayParms[3];
; 85   :         unsigned long  ulAlternateFunctionParms[3];
; 86   : 
; 87   :         // Configure GPIO 88 according to the discussion above:
; 88   :         //		Direction: Input
; 89   :         //		Alternate function: 1
; 90   : 
; 91   :         // direction & alternate function gpio apis both use the same pin array
; 92   :         ulPinArrayParms[0] = 1;
; 93   :         ulPinArrayParms[1] = 88;
; 94   : 
; 95   :         XllpGpioSetDirectionIn( m_pDCGPIOReg, ulPinArrayParms );

  0000c	e5940098	 ldr         r0, [r4, #0x98]
  00010	e3a03001	 mov         r3, #1
  00014	e3a02058	 mov         r2, #0x58
  00018	e28d1000	 add         r1, sp, #0
  0001c	e58d3000	 str         r3, [sp]
  00020	e58d2004	 str         r2, [sp, #4]
  00024	eb000000	 bl          XllpGpioSetDirectionIn

; 96   : 
; 97   :         ulAlternateFunctionParms[0] = 1;
; 98   :         ulAlternateFunctionParms[1] = XLLP_GPIO_ALT_FN_1;
; 99   :         XllpGpioSetAlternateFn( m_pDCGPIOReg, ulPinArrayParms, ulAlternateFunctionParms );

  00028	e5940098	 ldr         r0, [r4, #0x98]
  0002c	e3a0e001	 mov         lr, #1
  00030	e3a03001	 mov         r3, #1
  00034	e28d2010	 add         r2, sp, #0x10
  00038	e28d1000	 add         r1, sp, #0
  0003c	e58de014	 str         lr, [sp, #0x14]
  00040	e58d3010	 str         r3, [sp, #0x10]
  00044	eb000000	 bl          XllpGpioSetAlternateFn

; 100  : 
; 101  :     }

  00048	e28dd01c	 add         sp, sp, #0x1C
  0004c	e8bd4010	 ldmia       sp!, {r4, lr}
  00050	e12fff1e	 bx          lr
  00054		 |$M30016|

			 ENDP  ; |?SetupUSBHostPWR@MainStoneOhciPdd@@UAAXH@Z|, MainStoneOhciPdd::SetupUSBHostPWR

	IMPORT	|XllpGpioSetDirectionOut|
	IMPORT	|XllpGpioSetOutputState1|

  00000			 AREA	 |.text| { |?SetupUSBHostPEN@MainStoneOhciPdd@@UAAXH@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$?SetupUSBHostPEN@MainStoneOhciPdd@@UAAXH@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?SetupUSBHostPEN@MainStoneOhciPdd@@UAAXH@Z| } ; comdat associative
|$T30026| DCD	|$L30025|
	DCD	0x40001802
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?SetupUSBHostPEN@MainStoneOhciPdd@@UAAXH@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |?SetupUSBHostPEN@MainStoneOhciPdd@@UAAXH@Z| PROC ; MainStoneOhciPdd::SetupUSBHostPEN

; 258  :     	{ 

  00000		 |$L30025|
  00000	e92d4010	 stmdb       sp!, {r4, lr}
  00004	e24dd01c	 sub         sp, sp, #0x1C
  00008		 |$M30023|
  00008	e1a04000	 mov         r4, r0

; 259  :         unsigned long	ulPinArrayParms[3];
; 260  :         unsigned long	ulAlternateFunctionParms[3];
; 261  : 
; 262  :         // Configure GPIO 89 according to the discussion above:
; 263  :         //		Level: Low (enable)
; 264  :         //		Direction: Output
; 265  :         //		Alternate function: 2
; 266  : 
; 267  :         // level, direction & alternate function gpio apis all use the same pin array
; 268  :         ulPinArrayParms[0] = 1;
; 269  :         ulPinArrayParms[1] = 89;
; 270  :               XllpGpioSetOutputState1( m_pDCGPIOReg, ulPinArrayParms );   //GPIO89 output "1"   for sp2525-1EN

  0000c	e5940098	 ldr         r0, [r4, #0x98]
  00010	e3a03001	 mov         r3, #1
  00014	e3a02059	 mov         r2, #0x59
  00018	e28d1000	 add         r1, sp, #0
  0001c	e58d3000	 str         r3, [sp]
  00020	e58d2004	 str         r2, [sp, #4]
  00024	eb000000	 bl          XllpGpioSetOutputState1

; 271  : //                XllpGpioSetOutput0( m_pDCGPIOReg, ulPinArrayParms );   //GPIO89 output "0"
; 272  : 
; 273  :         XllpGpioSetDirectionOut( m_pDCGPIOReg, ulPinArrayParms );

  00028	e5940098	 ldr         r0, [r4, #0x98]
  0002c	e28d1000	 add         r1, sp, #0
  00030	eb000000	 bl          XllpGpioSetDirectionOut

; 274  : 
; 275  :         ulAlternateFunctionParms[0] = 1;
; 276  :         ulAlternateFunctionParms[1] = XLLP_GPIO_ALT_FN_2;
; 277  :         XllpGpioSetAlternateFn( m_pDCGPIOReg, ulPinArrayParms, ulAlternateFunctionParms );

  00034	e5940098	 ldr         r0, [r4, #0x98]
  00038	e3a0e002	 mov         lr, #2
  0003c	e3a03001	 mov         r3, #1
  00040	e28d2010	 add         r2, sp, #0x10
  00044	e28d1000	 add         r1, sp, #0
  00048	e58de014	 str         lr, [sp, #0x14]
  0004c	e58d3010	 str         r3, [sp, #0x10]
  00050	eb000000	 bl          XllpGpioSetAlternateFn

; 278  :     }

  00054	e28dd01c	 add         sp, sp, #0x1C
  00058	e8bd4010	 ldmia       sp!, {r4, lr}
  0005c	e12fff1e	 bx          lr
  00060		 |$M30024|

			 ENDP  ; |?SetupUSBHostPEN@MainStoneOhciPdd@@UAAXH@Z|, MainStoneOhciPdd::SetupUSBHostPEN

	IMPORT	|??3@YAXPAX@Z|				; operator delete

  00000			 AREA	 |.text| { |??_GMainStoneOhciPdd@@UAAPAXI@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000			 AREA	 |.pdata$$??_GMainStoneOhciPdd@@UAAPAXI@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |??_GMainStoneOhciPdd@@UAAPAXI@Z| } ; comdat associative
|$T30037| DCD	|$L30036|
	DCD	0x40000a01
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |??_GMainStoneOhciPdd@@UAAPAXI@Z| }, CODE, ARM, SELECTION=2 ; comdat any

  00000		 |??_GMainStoneOhciPdd@@UAAPAXI@Z| PROC	; MainStoneOhciPdd::`scalar deleting destructor'
  00000		 |$L30036|
  00000	e92d4030	 stmdb       sp!, {r4, r5, lr}
  00004		 |$M30034|
  00004	e1a04001	 mov         r4, r1
  00008	e1a05000	 mov         r5, r0
  0000c	eb000000	 bl          |??1MainStoneOhciPdd@@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		 |$M30035|

			 ENDP  ; |??_GMainStoneOhciPdd@@UAAPAXI@Z|, MainStoneOhciPdd::`scalar deleting destructor'

	EXPORT	|?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z| ; CreateBulverdeOhci
	IMPORT	|??2@YAPAXI@Z|				; operator new

  00000			 AREA	 |.text| { |?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000			 AREA	 |.pdata$$?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z| } ; comdat associative
|$T30054| DCD	|$L30053|
	DCD	0x40001301
; Function compile flags: /Ogsy

  00000			 AREA	 |.text| { |?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate

  00000		 |?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z| PROC ; CreateBulverdeOhci

; 283  : {

  00000		 |$L30053|
  00000	e92d4030	 stmdb       sp!, {r4, r5, lr}
  00004		 |$M30051|
  00004	e1a05000	 mov         r5, r0

; 284  :     return new MainStoneOhciPdd(lpActiveRegistry);

  00008	e3a000a0	 mov         r0, #0xA0
  0000c	eb000000	 bl          |??2@YAPAXI@Z|
  00010	e1b04000	 movs        r4, r0
  00014	0a000007	 beq         |$L30042|
  00018	e1a01005	 mov         r1, r5
  0001c	e1a00004	 mov         r0, r4
  00020	eb000000	 bl          |??0SOhcdPdd@@QAA@PBG@Z|
  00024	e59f301c	 ldr         r3, [pc, #0x1C]
  00028	e3a02000	 mov         r2, #0
  0002c	e5842098	 str         r2, [r4, #0x98]
  00030	e5843000	 str         r3, [r4]
  00034	ea000000	 b           |$L30043|
  00038		 |$L30042|
  00038	e3a04000	 mov         r4, #0
  0003c		 |$L30043|
  0003c	e1a00004	 mov         r0, r4

; 285  : }

  00040	e8bd4030	 ldmia       sp!, {r4, r5, lr}
  00044	e12fff1e	 bx          lr
  00048		 |$L30056|
  00048	00000000	 DCD         |??_7MainStoneOhciPdd@@6B@|
  0004c		 |$M30052|

			 ENDP  ; |?CreateBulverdeOhci@@YAPAVSOhcdPdd@@PBG@Z|, CreateBulverdeOhci

	END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -