struktur SCSI_PNP_REQUEST_BLOCK (minitape.h)
StrukturSCSI_PNP_REQUEST_BLOCK adalah versi khusus dari SCSI_REQUEST_BLOCK yang digunakan untuk permintaan plug and play (PNP).
Sintaks
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;
Anggota
Length
Ukuran, dalam byte, dari struktur SCSI_PNP_REQUEST_BLOCK .
Function
Operasi yang akan dilakukan. Untuk struktur SCSI_PNP_REQUEST_BLOCK , anggota ini selalu diatur ke SRB_FUNCTION_PNP.
SrbStatus
Status permintaan yang telah selesai. Driver miniport harus mengatur nilai ini sebelum memberi tahu driver Storport bahwa permintaan telah selesai. Driver miniport memberi tahu driver Storport bahwa permintaan telah selesai dengan memanggil rutinitas StorPortNotification dengan jenis pemberitahuan RequestComplete. Untuk daftar kemungkinan nilai status, lihat SCSI_REQUEST_BLOCK.
PnPSubFunction
Anggota ini saat ini tidak digunakan. Driver Miniport mengabaikan anggota ini.
PathId
Port SCSI atau pengidentifikasi bus untuk permintaan tersebut. Nilai ini berbasis nol.
TargetId
Pengontrol target atau pengidentifikasi perangkat pada bus.
Lun
Nomor unit logis (LUN) perangkat.
PnPAction
Tindakan plug and play untuk dilakukan. Anggota ini bisa memiliki salah satu nilai berikut ini:
SrbFlags
Driver Miniport harus mengabaikan anggota ini.
DataTransferLength
Driver Miniport harus mengabaikan anggota ini.
TimeOutValue
Interval, dalam detik, bahwa permintaan dapat dijalankan sebelum driver Storport menentukan bahwa permintaan telah kehabisan waktu.
DataBuffer
Driver Miniport harus mengabaikan anggota ini.
SenseInfoBuffer
Driver Miniport harus mengabaikan anggota ini.
NextSrb
Driver Miniport harus mengabaikan anggota ini.
OriginalRequest
Driver Miniport harus mengabaikan anggota ini.
SrbExtension
Penunjuk ke ekstensi SRB. Driver miniport tidak boleh menggunakan anggota ini jika mengatur SrbExtensionSize ke nol dalam struktur HW_INITIALIZATION_DATA . Driver Storport tidak menginisialisasi memori yang dituju anggota ini. HBA dapat langsung mengakses data yang ditulis driver miniport ke ekstensi SRB. Driver miniport dapat memperoleh alamat fisik ekstensi SRB dengan memanggil rutinitas StorPortGetPhysicalAddress .
SrbPnPFlags
Bendera PNP. Saat ini, satu-satunya bendera yang diizinkan adalah SRB_PNP_FLAGS_ADAPTER_REQUEST, yang menunjukkan bahwa permintaan PNP adalah untuk adaptor, dan bukan untuk salah satu perangkat pada adaptor. Jika bendera ini diatur, driver miniport harus mengabaikan nilai di PathId, TargetId, dan Lun.
Reserved
Dicadangkan untuk penggunaan sistem.
Reserved4[16]
Dicadangkan untuk penggunaan sistem.
Keterangan
Driver Storport mengirimkan SCSI_PNP_REQUEST_BLOCK permintaan ke driver miniport untuk memberi tahu driver miniport peristiwa plug and play Windows yang memengaruhi perangkat penyimpanan yang terhubung ke adaptor.
Driver Storport memanggil HwStorBuildIo untuk meneruskan SRB ke driver miniport. HwStorBuildIo memeriksa anggota Fungsi SRB untuk menentukan jenis SRB. Jika anggota Fungsi diatur ke SRB_FUNCTION_PNP, SRB adalah struktur jenis SCSI_PNP_REQUEST_BLOCK.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | minitape.h (termasuk Storport.h, Minitape.h, Srb.h) |