SerCxInitialize method

The SerCxInitialize method completes the initialization of the serial framework extension (SerCx) after this driver creates the associated device object.

Syntax


NTSTATUS SerCxInitialize(
  [in] WDFDEVICE     FxDevice,
  [in] PSERCX_CONFIG Config
);

Parameters

FxDevice [in]

A WDFDEVICE handle to the framework device object that represents the serial controller.

Config [in]

A pointer to a caller-allocated SERCX_CONFIG structure that contains configuration information for SerCx. The caller previously called the SERCX_CONFIG_INIT function to initialize this structure.

Return value

SerCxInitialize returns STATUS_SUCCESS if it is successful. Possible error return values include the following status codes.

Return codeDescription
STATUS_INVALID_DEVICE_REQUEST

The method was called at the wrong IRQL; or the WDFDEVICE handle is not valid; or either FxDevice or Config is NULL.

STATUS_INSUFFICIENT_RESOURCES

Could not allocate system resources (typically memory).

 

Remarks

The serial controller driver calls this method after it creates the associated device object.

SerCxInitialize registers the controller driver’s I/O callback functions with SerCx. In addition, this method defines the transfer mode for the I/O queue. During the call, this method creates all of the internal structures required by SerCx (including the I/O queue for the serial controller). After this method returns, SerCx is ready to process I/O. However, the controller driver might configure controller hardware settings before it returns from the EvtDriverDeviceAdd callback or before it adds the PDO to the child list.

If the parameters are invalid (as described in SERCX_CONFIG), Driver Verifier will raise an error.

This routine must be called before committing the device (returning from EvtDriverDeviceAdd or adding the PDO to the child list).

Requirements

Target platform

Universal

Version

Available starting with Windows 8.

Header

1.0\Sercx.h

IRQL

PASSIVE_LEVEL

See also

EvtDriverDeviceAdd
SERCX_CONFIG
SERCX_CONFIG_INIT

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft