StorPortInitialize function

The StorPortInitilize routine initializes the port driver parameters and extension data. StorPortInitilize also saves the adapter information provided from the miniport driver.

Syntax

STORPORT_API ULONG StorPortInitialize(
  PVOID                   Argument1,
  PVOID                   Argument2,
  _HW_INITIALIZATION_DATA *HwInitializationData,
  PVOID                   HwContext
);

Parameters

Argument1

The first pointer with which the operating system called the miniport's DriverEntry routine.

Argument2

The second pointer with which the operating system called the miniports's DriverEntry routine.

HwInitializationData

Pointer to the initialization and configuration information set by the miniport driver in it's DriverEntry routine.

HwContext

Is the address of a context value to be passed to the miniport driver's HwStorFindAdapter routine. Only legacy miniport drivers that scan the bus for HBAs rather than receiving configuration information from the port driver can use this parameter to store state between calls to HwStorFindAdapter.

Return Value

The result of the initialization actions performed by StorPortInitilize. The miniport driver will return this value as the return value for its DriverEntry routine.

StorPortInitilize returns one of the following status codes:

Return code Description
STATUS_INVALID_PARAMETER
Argument1 is NULL. -or- Argument2 is NULL. -or- HwInitializationData is NULL.
STATUS_SUCCESS
The driver extension data and adapter information were initialized successfully.
STATUS_NO_MEMORY
No memory is available to store an initialization parameter.
STATUS_REVISION_MISMATCH
The version of the structure pointed to by HwInitializationData is invalid for the current operating system.
STATUS_INSUFFICENT_RESOURCES
The allocation failed for the driver object extension data.

Remarks

This routine must be called from the miniport driver's DriverEntry routine.

Because Storport miniport drivers must support PnP, the Storport driver does not use the HwContext parameter passed to StorPortInitilize.

Every miniport driver's DriverEntry routine must call StorPortInitilize after the miniport driver has first zeroed and then set the members of HW_INITIALIZATION_DATA.

Requirements

   
Target Platform Universal
Header storport.h (include Storport.h)
Library Storport.lib

See Also

HW_INITIALIZATION_DATA

HwStorFindAdapter