SCSI_PNP_REQUEST_BLOCK struttura (storport.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 possono essere modificati o non disponibili in futuro. È invece consigliabile usare i modelli di driver Storport e 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
Dimensioni, in byte, della struttura SCSI_PNP_REQUEST_BLOCK .
Function
Operazione da eseguire. Per la struttura SCSI_PNP_REQUEST_BLOCK , questo membro è sempre impostato su SRB_FUNCTION_PNP.
SrbStatus
Stato della richiesta completata. Il driver miniport deve impostare questo valore prima di inviare una notifica 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 valori di stato possibili, vedere SCSI_REQUEST_BLOCK.
PnPSubFunction
Questo membro non viene attualmente usato. I driver miniport ignorano questo membro.
PathId
La porta SCSI o l'identificatore del bus per la richiesta. Questo valore è zero basato.
TargetId
Controller di destinazione o 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 query sulle funzionalità del dispositivo. |
StorQueryResourceRequirements (0x0B) | Eseguire query sui requisiti delle risorse per il dispositivo. |
StorFilterResourceRequirements (0x0D) | Filtrare i requisiti delle risorse per il dispositivo. |
StorSupriseRemoval (0x17) | Rimozione 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, in secondi, che la richiesta può essere eseguita prima del driver Storport determina 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 usare 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 informare il driver miniport di eventi plug and play di Windows che influiscono sui dispositivi di archiviazione connessi alla scheda.
Il driver Storport chiama HwStorBuildIo per passare SRBs al driver miniport. HwStorBuildIo controlla il membro della funzione di SRB per determinare il tipo di SRB. Se il membro della funzione è impostato su SRB_FUNCTION_PNP, SRB è una struttura di tipo SCSI_PNP_REQUEST_BLOCK.
Requisiti
Requisito | Valore |
---|---|
Intestazione | storport.h (include Storport.h, Minitape.h, Srb.h) |