OhcdMdd_CreateOhcdObject

This function creates and initializes an OHC interface driver object.

Syntax

LPVOID OhcdMdd_CreateOhcdObject( LPVOID lpvOhcdPddObject, LPVOID lpvMemoryObject, LPCWSTR szRegKey, PUCHAR ioPortBase, DWORD dwSysIntr );

Parameters

lpvOhcdPddObject
[IN] Pointer to the PDD-specific data for this instance.
lpvMemoryObject
[IN] Pointer to the memory object created by the OhcdMdd_CreateMemoryObject function.
szRegKey
[IN] Specifies the registry key where OHC interface configuration settings are stored.
ioPortBase
[IN] Pointer to the OHC interface controller registers.
dwSysIntr
[IN] Specifies the logical value for an OHC interface interrupt ( SYSINTR_xx ).

Return Values

A pointer to OHC interface driver object indicates success. NULL indicates failure.

Remarks

This function is called by the PDD during initialization to initialize an OHC interface driver object. As part of this processing, the USB driver, Usbd.dll, is loaded, and the OHC interface interrupt is hooked into the system. Next, the OHC interface hardware is placed into OPERATIONAL state, and list processing begins: device attach events are serviced, transfers initiated, and so on.

The Windows CE–based USB subsystem supports multiple host controllers. The PDD should create an OHC interface driver object for each physical host controller in the system.

This function is declared in the Ohcdddsi.h header file.