Fungsi ScsiPortGetBusData (srb.h)
Rutinitas ScsiPortGetBusData mengembalikan informasi konfigurasi khusus jenis bus yang mungkin digunakan oleh rutinitas HwScsiFindAdapter driver miniport untuk menentukan apakah ia mendukung adaptor tertentu pada bus I/O tertentu, dan untuk mengonfigurasi HBA jika ya.
Sintaks
SCSIPORT_API ULONG ScsiPortGetBusData(
[in] PVOID DeviceExtension,
[in] ULONG BusDataType,
[in] ULONG SystemIoBusNumber,
[in] ULONG SlotNumber,
[in] PVOID Buffer,
[in] ULONG Length
);
Parameter
[in] DeviceExtension
Arahkan ke area penyimpanan per HBA driver miniport.
[in] BusDataType
Berisi nilai jenis BUS_DATA_TYPE yang menentukan jenis data konfigurasi khusus bus yang akan dikembalikan. Saat ini, nilai ini bisa menjadi salah satu dari yang berikut: Cmos, EisaConfiguration, Pos, atau PCIConfiguration. Namun, jenis konfigurasi bus tambahan akan didukung di masa mendatang. Batas atas pada jenis yang didukung selalu MaximumBusDataType.
[in] SystemIoBusNumber
Menentukan nomor bus I/O yang ditetapkan sistem. Rutinitas HwScsiFindAdapter driver miniport mendapatkan nilai ini dari input PORT_CONFIGURATION_INFORMATION anggota SystemIoBusNumber .
[in] SlotNumber
Menentukan nomor slot logis atau lokasi perangkat.
Jika PCIConfiguration ditentukan sebagai BusDataType, parameter ini harus ditentukan sebagai nilai jenis PCI_SLOT_NUMBER.
[in] Buffer
Penunjuk ke buffer atau area tempat data konfigurasi dikembalikan atau, jika Panjang yang diberikan adalah nol, menunjuk ke lokasi di mana driver port khusus sistem operasi mengembalikan penunjuk ke buffer yang dialokasikannya.
[in] Length
Menentukan jumlah maksimum byte yang akan dikembalikan di Buffer, atau nol jika pemanggil memerlukan driver port khusus sistem operasi untuk mengalokasikan buffer untuk memuat data.
Nilai kembali
ScsiPortGetBusData mengembalikan jumlah byte informasi konfigurasi yang disimpannya di buffer. Ketika input BusDataType adalah PCIConfiguration, ScsiPortGetBusData dapat mengembalikan salah satu nilai berikut untuk menunjukkan kesalahan.
Menampilkan kode | Deskripsi |
---|---|
|
Bus PCI tidak ada. |
|
Bus PCI ada, tetapi tidak ada perangkat di SlotNumber PCI yang diberikan. Buffer berisi nilai yang PCI_INVALID_VENDOR_ID pada anggota PCI_COMMON_CONFIG VendorId. |
Keterangan
ScsiPortGetBusData hanya dapat dipanggil dari rutinitas HwScsiFindAdapter driver miniport atau dari HwScsiAdapterControl ketika jenis kontrolnya adalah ScsiSetRunningConfig. Panggilan dari rutinitas driver miniport lainnya akan mengakibatkan kegagalan sistem atau operasi yang salah untuk pemanggil.
Data konfigurasi yang dikembalikan oleh ScsiPortGetBusData hanya berlaku sampai driver miniport memanggil ScsiPortGetBusData lagi. Segera setelah rutinitas HwScsiFindAdapter penelepon mengembalikan kontrol, data konfigurasi yang dikembalikan menjadi tidak valid.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | srb.h (termasuk Miniport.h, Scsi.h) |
Pustaka | Scsiport.lib |