次の方法で共有


PCI_X_CAPABILITY構造 (miniport.h)

PCI_X_CAPABILITY構造体は、PCI-X 補遺に準拠しているデバイスのコマンドおよびステータス レジスタの内容を PCI ローカル バス仕様に報告します。

構文

typedef struct {
  PCI_CAPABILITIES_HEADER Header;
  union {
    struct {
      USHORT DataParityErrorRecoveryEnable : 1;
      USHORT EnableRelaxedOrdering : 1;
      USHORT MaxMemoryReadByteCount : 2;
      USHORT MaxOutstandingSplitTransactions : 3;
      USHORT Reserved : 9;
    } bits;
    USHORT AsUSHORT;
  } Command;
  union {
    struct {
      ULONG FunctionNumber : 3;
      ULONG DeviceNumber : 5;
      ULONG BusNumber : 8;
      ULONG Device64Bit : 1;
      ULONG Capable133MHz : 1;
      ULONG SplitCompletionDiscarded : 1;
      ULONG UnexpectedSplitCompletion : 1;
      ULONG DeviceComplexity : 1;
      ULONG DesignedMaxMemoryReadByteCount : 2;
      ULONG DesignedMaxOutstandingSplitTransactions : 3;
      ULONG DesignedMaxCumulativeReadSize : 3;
      ULONG ReceivedSplitCompletionErrorMessage : 1;
      ULONG CapablePCIX266 : 1;
      ULONG CapablePCIX533 : 1;
    } bits;
    ULONG AsULONG;
  } Status;
} PCI_X_CAPABILITY, *PPCI_X_CAPABILITY;

メンバー

Header

機能を識別し、次の機能の説明へのリンクを 提供する PCI_CAPABILITIES_HEADER 型の構造体が含まれます。

Command

コマンド共用体を定義 します

Command.bits

Command.bits 構造体を定義します。

Command.bits.DataParityErrorRecoveryEnable

データ パリティ エラー回復ビットがデバイスのコマンド レジスタに設定され、デバイスがデータ パリティ エラーからの回復を試行することを示します。 パリティ エラー回復ビットの値の重要性の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Command.bits.EnableRelaxedOrdering

デバイスのコマンド レジスタで、有効な緩やかな順序付けビットが設定されていることを示します。 これにより、デバイスは自由に、より緩やかなトランザクション注文ポリシーを採用できます。 このビットがトランザクションの順序にどのように影響するかの詳細については、「 PCI ローカル バスの仕様」を参照してください。

Command.bits.MaxMemoryReadByteCount

バースト メモリ読み取りコマンドを開始するときにデバイスが使用する、コマンド レジスタに記録された最大バイト数を報告します。 このビットが読み取りコマンドにどのように影響するかの詳細については、「 PCI ローカル バス仕様」を参照してください。

Command.bits.MaxOutstandingSplitTransactions

デバイスが非同期的に開始できる分割トランザクションの最大数をコマンド レジスタに記録して報告します。 この値が分割トランザクションに及ぼす影響の詳細については、「 PCI ローカル バス仕様」を参照してください。

Command.bits.Reserved

予約済み。

Command.AsUSHORT

デバイスのコマンド レジスタ内のデータを、符号なし long 整数の形式で報告します。

Status

状態共用体を定義 します

Status.bits

Status.bits 構造体を定義します。

Status.bits.FunctionNumber

タイプ 0 構成トランザクションのアドレスの関数番号フィールドの値を示します。 この番号の意味の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.DeviceNumber

タイプ 0 構成トランザクションのアドレスのデバイス番号フィールドの値を示します。 この番号の意味の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.BusNumber

デバイスが配置されているバス セグメントの番号を示します。 この番号の意味の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.Device64Bit

バスの幅が 64 ビットであることを 1 で示します。 0 の場合、バスの幅は 32 ビットです。 ステータス レジスタのデバイス 64 ビットの意味の詳細については、「 PCI ローカル バス仕様」を参照してください。

Status.bits.Capable133MHz

デバイスの最大動作周波数が 133 MHz であることを 1 に示します。 デバイスの最大動作周波数が 66 MHz であることを 0 に示します。 ステータス レジスタの対応 133 Mhz ビットの意味の詳細については、「 PCI ローカル バス仕様」を参照してください。

Status.bits.SplitCompletionDiscarded

要求者が拒否したためにデバイスが分割完了トランザクションを破棄したタイミングを 1 で示します。 値 0 は、状態レジスタの分割完了破棄ビットが最後にクリアされたため、デバイスが分割完了トランザクションを破棄していないことを示します。 状態レジスタの分割完了破棄ビットの詳細については、「 PCI ローカル バス仕様」を参照してください。

Status.bits.UnexpectedSplitCompletion

デバイスがデバイスの要求元 ID を持つ分割完了トランザクションを受信したことを 1 に示します。 デバイスがこの種類のトランザクションを受信していない場合に 0 を示します。 状態レジスタの予期しない分割完了ビットの意味の詳細については、「 PCI ローカル バス仕様」を参照してください。

Status.bits.DeviceComplexity

デバイスがブリッジ デバイスであることを 1 で示します。 0 の場合、デバイスはブリッジ デバイスではありません。 ステータス レジスタのデバイスの複雑さビットの意味の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.DesignedMaxMemoryReadByteCount

デバイスが読み取りシーケンスを開始するときに使用する、状態レジスタで定義されている最大バイト数を報告します。 この値の意味の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.DesignedMaxOutstandingSplitTransactions

デバイスが一度に許可できる分割トランザクションの最大数 (状態レジスタで定義) を報告します。 この値の意味の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.DesignedMaxCumulativeReadSize

デバイスが一度に許可するバースト メモリ読み取りトランザクションの最大数 (状態レジスタで定義) を報告します。 この値の詳細については、「 PCI ローカル バスの仕様」を参照してください。

Status.bits.ReceivedSplitCompletionErrorMessage

デバイスが分割完了エラー メッセージを受信したことを 1 に示します。 デバイスが分割完了エラー メッセージを受け取っていない場合に 0 を示します。

Status.bits.CapablePCIX266

ULONG メンバーの CapablePCIX266 を定義します

Status.bits.CapablePCIX533

ULONG メンバーの CapablePCIX533 を定義します。

Status.AsULONG

デバイスの状態レジスタのデータを、符号なし long 整数の形式で報告します。

要件

要件
Header miniport.h (Wdm.h、Miniport.h を含む)

こちらもご覧ください

PCI_CAPABILITIES_HEADER