Compartir a través de


Rutina DriverEntry del controlador miniport SCSI

Una rutina DriverEntry es el punto de entrada inicial para la mayoría de los controladores del modo kernel de Microsoft Windows y para cada controlador de miniporte SCSI. Se llama a una rutina DriverEntry del controlador de miniporte con dos argumentos de entrada de tipo PVOID y debe hacer lo siguiente:

  1. Inicialice una estructura de HW_INITIALIZATION_DATA (SCSI) en la pila con ceros.

  2. Establezca el miembro HwInitializationDataSize en sizeof(HW_INITIALIZATION_DATA).

  3. Establezca valores específicos del controlador y específicos del HBA en los miembros de HW_INITIALIZATION_DATA, incluidos los puntos de entrada del controlador de miniporte. Se deben establecer los siguientes puntos de entrada:

    Los siguientes puntos de entrada se pueden establecer en una rutina proporcionada por el controlador o deben establecerse en NULL:

  • HwScsiInterrupt (NULL si el controlador de minipuerto usa sondeo exclusivamente)
  • HwScsiDmaStarted (NULL si el HBA usa PIO o es un patrón de bus)
  • HwScsiAdapterState (NULL si el controlador de miniporte solo se ejecuta en plataformas de sistema operativo basadas en NT o si está diseñado para ejecutarse también en plataformas Windows de solo x86, pero el HBA no tiene ni un controlador en modo x86-real)
  • HwScsiAdapterControl (NULL si el controlador de miniport no admite Plug and Play)
  1. En un controlador de miniporte heredado, configure los datos de contexto determinados por el controlador que usará la rutina HwScsiFindAdapter del controlador de miniporte.

  2. Llame a ScsiPortInitialize con los punteros que se han introducido en la rutina DriverEntry , la dirección del HW_INITIALIZATION_DATA rellenado y la dirección de los datos de contexto, si existe.