VideoPortGetBusData 関数 (video.h)
VideoPortGetBusData 関数は、バスの種類固有の構成情報を返します。
構文
VIDEOPORT_DEPRECATED VIDEOPORT_API ULONG VideoPortGetBusData(
PVOID HwDeviceExtension,
BUS_DATA_TYPE BusDataType,
ULONG SlotNumber,
[out] PVOID Buffer,
ULONG Offset,
ULONG Length
);
パラメーター
HwDeviceExtension
ミニポート ドライバーのデバイス拡張機能へのポインター。
BusDataType
返すバス構成データの種類を指定します。 このパラメーターの値には、 Cmos、 EisaConfiguration、または PCIConfiguration を指定できます。 ただし、今後、追加の種類のバス構成がサポートされる可能性があります。 サポートされる型の上限は常に MaximumBusDataType です。
SlotNumber
Cmos BusDataType のバス上のデバイスの場所を指定します。他のすべてのバスの種類の場合は 0。
[out] Buffer
VideoPortGetBusData が構成情報を返すバッファーへのポインター。 バッファーの内容は、次のように BusDataType によって異なります。
- Cmos が指定されている場合、バッファーには、SlotNumber に指定された位置から始まる CMOS (バス番号が 0) または ECMOS (バス番号が 1 と等しい) の場所の内容が含まれます。 ミニポート ドライバーの HwVidFindAdapter 関数は、VIDEO_PORT_CONFIG_INFO入力構造体の SystemIoBusNumber メンバーからバスの数を決定できます。
- EisaConfiguration が指定されている場合、バッファーにはCM_EISA_SLOT_INFORMATION構造体が格納され、その後に指定されたスロットの 0 個以上のCM_EISA_FUNCTION_INFORMATION構造体が格納されます。
- PCIConfiguration が指定されている場合、バッファーには、指定したスロットのPCI_COMMON_CONFIG情報が含まれます。
Offset
BusDataType が PCIConfiguration の場合に取得する必要がある PCI 構成領域へのオフセットをバイト単位で指定します。それ以外の場合は 0。 詳細については、「解説」を参照してください。
Length
Buffer の長さをバイト単位で指定 します。
戻り値
VideoPortGetBusData は 、Buffer で書き込まれた構成情報のバイト数を返します。 指定された BusDataType が現在のプラットフォームに対して有効でない場合、通常、この関数は 0 を返します。
リターン コード | 説明 |
---|---|
0 | PCI バスが存在しません。 |
2 | PCI バスは存在しますが、Buffer には PCI_COMMON_CONFIG VendorId メンバーでPCI_INVALID_VENDOR_ID値が含まれています。 |
注釈
構成情報の一部のみを取得するには、ミニポート ドライバーが必要な情報のバイト オフセットに オフセット を設定し、 長さを 必要な情報のバイト数に設定する必要があります。 たとえば、コマンド レジスタのみが必要な場合は、 Offset を このレジスタのオフセットに設定し、 Length を sizeof(USHORT) に設定します。
ドライバーは、ハードウェア リソースを取得するために VideoPortGetBusData ではなく VideoPortGetAccessRanges を呼び出す必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。 |
対象プラットフォーム | デスクトップ |
Header | video.h (Video.h を含む) |
Library | Videoprt.lib |
[DLL] | Videoprt.sys |
IRQL | PASSIVE_LEVEL |