struttura SCSI_PNP_REQUEST_BLOCK (minitape.h)

La strutturaSCSI_PNP_REQUEST_BLOCK è una versione speciale di una SCSI_REQUEST_BLOCK usata per le richieste di plug and play (PNP).

Nota I modelli di driver di porta SCSI e miniport SCSI potrebbero essere modificati o non disponibili in futuro. È invece consigliabile usare il driver Storport e i modelli di driver miniport Storport .
 

Sintassi

typedef struct _SCSI_PNP_REQUEST_BLOCK {
  USHORT                     Length;
  UCHAR                      Function;
  UCHAR                      SrbStatus;
  UCHAR                      PnPSubFunction;
  UCHAR                      PathId;
  UCHAR                      TargetId;
  UCHAR                      Lun;
  STOR_PNP_ACTION            PnPAction;
  ULONG                      SrbFlags;
  ULONG                      DataTransferLength;
  ULONG                      TimeOutValue;
  PVOID                      DataBuffer;
  PVOID                      SenseInfoBuffer;
  struct _SCSI_REQUEST_BLOCK *NextSrb;
  PVOID                      OriginalRequest;
  PVOID                      SrbExtension;
  ULONG                      SrbPnPFlags;
  ULONG                      Reserved;
  UCHAR                      Reserved4[16];
} SCSI_PNP_REQUEST_BLOCK, *PSCSI_PNP_REQUEST_BLOCK;

Members

Length

Dimensione, in byte, della struttura SCSI_PNP_REQUEST_BLOCK .

Function

Operazione da eseguire. Per la struttura SCSI_PNP_REQUEST_BLOCK , questo membro viene sempre impostato su SRB_FUNCTION_PNP.

SrbStatus

Stato della richiesta completata. Il driver miniport deve impostare questo valore prima di notificare al driver Storport che la richiesta è stata completata. Un driver miniport notifica al driver Storport che la richiesta è stata completata chiamando la routine StorPortNotification con un tipo di notifica RequestComplete. Per un elenco dei possibili valori di stato, vedere SCSI_REQUEST_BLOCK.

PnPSubFunction

Questo membro non è attualmente utilizzato. I driver Miniport ignorano questo membro.

PathId

Porta SCSI o identificatore del bus per la richiesta. Questo valore è in base zero.

TargetId

Il controller di destinazione o l'identificatore del dispositivo nel bus.

Lun

Numero di unità logica (LUN) del dispositivo.

PnPAction

Azione plug and play da eseguire. Questo membro può avere uno dei valori seguenti:

Valore Significato
StorStartDevice
0x00
Avviare il dispositivo.
StorRemoveDevice
0x02
Rimuovere il dispositivo.
StorStopDevice
0x04
Arrestare il dispositivo.
StorQueryCapabilities
0x09
Eseguire una query sulle funzionalità del dispositivo.
StorQueryResourceRequirements
0x0B
Eseguire una query sui requisiti delle risorse per il dispositivo.
StorFilterResourceRequirements
0x0d
Filtrare i requisiti delle risorse per il dispositivo.
StorSupriseRemoval
0x17
Rimozione a sorpresa del dispositivo. Questo valore è stato aggiunto in Windows 7.

SrbFlags

Il driver Miniport deve ignorare questo membro.

DataTransferLength

Il driver Miniport deve ignorare questo membro.

TimeOutValue

L'intervallo, espresso in secondi, che la richiesta può essere eseguita prima che il driver Storport determini il timeout della richiesta.

DataBuffer

Il driver Miniport deve ignorare questo membro.

SenseInfoBuffer

Il driver Miniport deve ignorare questo membro.

NextSrb

Il driver Miniport deve ignorare questo membro.

OriginalRequest

Il driver Miniport deve ignorare questo membro.

SrbExtension

Puntatore all'estensione SRB. Un driver miniport non deve utilizzare questo membro se imposta SrbExtensionSize su zero nella struttura HW_INITIALIZATION_DATA . Il driver Storport non inizializza la memoria a cui punta questo membro. L'HBA può accedere direttamente ai dati scritti dal driver miniport nell'estensione SRB. Un driver miniport può ottenere l'indirizzo fisico dell'estensione SRB chiamando la routine StorPortGetPhysicalAddress .

SrbPnPFlags

Flag PNP. Attualmente, l'unico flag consentito è SRB_PNP_FLAGS_ADAPTER_REQUEST, che indica che la richiesta PNP è per l'adattatore e non per uno dei dispositivi nella scheda. Se questo flag è impostato, il driver miniport deve ignorare i valori in PathId, TargetId e Lun.

Reserved

Riservato per l'utilizzo nel sistema.

Reserved4[16]

Riservato per l'utilizzo nel sistema.

Commenti

Il driver Storport invia SCSI_PNP_REQUEST_BLOCK richieste a un driver miniport per notificare al driver miniport gli eventi plug and play di Windows che interessano i dispositivi di archiviazione connessi alla scheda.

Il driver Storport chiama HwStorBuildIo per passare srb al driver miniport. HwStorBuildIo controlla il membro Function di SRB per determinare il tipo di SRB. Se il membro Function è impostato su SRB_FUNCTION_PNP, SRB è una struttura di tipo SCSI_PNP_REQUEST_BLOCK.

Requisiti

Requisito Valore
Intestazione minitape.h (include Storport.h, Minitape.h, Srb.h)

Vedi anche

HwStorBuildIo

SCSI_REQUEST_BLOCK

StorPortNotification