SERCX2_CUSTOM_RECEIVE_CONFIG構造体 (sercx.h)
SERCX2_CUSTOM_RECEIVE_CONFIG 構造体には、シリアル フレームワーク拡張機能 (SerCx2) のバージョン 2 が新しいカスタム受信オブジェクトの構成に使用する情報が含まれています。
構文
typedef struct _SERCX2_CUSTOM_RECEIVE_CONFIG {
ULONG Size;
ULONG Alignment;
ULONG MinimumTransactionLength;
ULONG MaximumTransactionLength;
ULONG MinimumTransferUnit;
BOOLEAN Exclusive;
} SERCX2_CUSTOM_RECEIVE_CONFIG, *PSERCX2_CUSTOM_RECEIVE_CONFIG;
メンバーズ
Size
この構造体のサイズ (バイト単位)。 SerCx2CustomReceiveCreate メソッドは、このメンバーを使用して、呼び出し元が使用している構造体のバージョンを決定します。 この構造体のサイズは、Sercx.h ヘッダー ファイルの将来のバージョンで変更される可能性があります。
Alignment
データの配置要件。 カスタム受信トランザクションの転送の開始アドレスをメモリ内でどのように配置する必要するかを指定します。 このメンバーを Wdm.h ヘッダー ファイル内の適切なFILE_XXX_ALIGNMENT 定数に設定します。 たとえば、FILE_WORD_ALIGNMENTは、開始アドレスをメモリ内の 2 バイト境界にアラインする必要があることを示FILE_LONG_ALIGNMENT、アドレスを 4 バイト境界にアラインする必要があることを示します。
MinimumTransactionLength
カスタム受信トランザクションでのデータ転送の最小長 (バイト単位)。 読み取り (IRP_MJ_READ) 要求内のバッファーの長さが、この最小長より小さい場合、SerCx2 はトランザクションにプログラミングされた I/O (PIO) を使用します。
MaximumTransactionLength
カスタム受信トランザクションでのデータ転送の最大長 (バイト単位)。 読み取り要求のバッファーのサイズがこの最大長を超える場合、SerCx2 は複数のカスタム受信トランザクションを使用して要求を処理し、各トランザクションを最大長に制限します。
MinimumTransferUnit
最小転送単位。 散布図/収集リスト内の要素によって指定されるバイト数は、最小転送単位の整数倍数である必要があります。 既定の最小転送単位を使用することを示すには、このメンバーを 0 に設定します。 デフォルト最小転送単位の詳細については、DMA_ADAPTER_INFO_V1を参照してください。
Exclusive
カスタム受信トランザクションを使用して書き込み (IRP_MJ_READ) 要求を処理するかどうかを指定します。 読み取り要求でカスタム受信トランザクションを排他的に使用する必要があることを示すには、TRUE を
カスタム受信トランザクションの最小転送単位が 1 バイトで、トランザクションの最小長が 1 バイトで、トランザクションの読み取りバッファーがメモリ内の任意のバイト境界で開始できる場合にのみ、このメンバーを TRUE に設定します。
排他 が TRUE
このメンバーの値に関係なく、PIO 受信トランザクションは、シリアル コントローラーが D0 デバイスの電源状態を終了して低電力状態に入る前に、未読データを受信 FIFO に保存するために使用されます。
備考
SerCx2CustomReceiveCreate メソッドは、SERCX2_CUSTOM_RECEIVE_CONFIG 構造体へのポインターを入力パラメーターとして受け取ります。 SerCx2CustomReceiveCreate
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8.1 以降でサポートされています。 |
ヘッダー | sercx.h |