次の方法で共有


EFI_USBFN_POLICY_TYPE

EFI_USBFN_POLICY_TYPE 列挙体には、エンドポイントの種類を示すために使用される値が含まれています。

構文

typedef enum _EFI_USBFN_POLICY_TYPE{
  EfiUsbPolicyUndefined = 0, 
  EfiUsbPolicyMaxTransactionSize, 
  EfiUsbPolicyZeroLengthTerminationSupport, 
  EfiUsbPolicyZeroLengthTermination
} EFI_USBFN_POLICY_TYPE;

定数

EfiUsbPolicyUndefined
ドライバーの境界を越えて使用できない無効なポリシー値。 これを使用と、呼び出し先の関数が成功状態のコードを返すことはありません。

EfiUsbPolicyMaxTransactionSize
このポリシーは読み取り専用です。 EFI_USBFN_IO_PROTOCOL.GetEndpointPolicy と共に使用する場合、コントローラーがサポートする最大の単一トランザクション(片度ポイントへのサービス配信)のサイズが返されます。 EFI_USBFN_IO_PROTOCOL.GetMaxTransferSize を呼び出して取得できる最大転送サイズ以上であることが必要です。

  GetEndpointPolicy SetEndpointPolicy
BufferSize 4 バイト、sizeof(UINT32) 適用なし
リターン状態 EFI_STATUS EFI_UNSUPPORTED

EfiUsbPolicyZeroLengthTerminationSupport
このポリシーは読み取り専用です。 EFI_USBFN_IO_PROTOCOL.GetEndpointPolicy と共に使用する場合、転送サイズが USB 最大パケット サイズの倍数である際にUSB コントローラー ハードウェアが長さゼロのパケットを自動的に処理できるなら TRUE、このようなシナリオがコントローラー ハードウェアにでサポートされていないなら FALSE が返されます。

  GetEndpointPolicy SetEndpointPolicy
BufferSize 1 バイト、sizeof(BOOLEAN) 適用なし
リターン状態 EFI_STATUS EFI_UNSUPPORTED

EfiUsbPolicyZeroLengthTermination
EFI_USBFN_IO_PROTOCOL.GetEndpointPolicy と共に使用する場合、転送サイズが USB 最大パケット サイズの倍数である際にUSB コントローラー ハードウェアが長さゼロのパケットを自動的に処理するように構成されているなら TRUE、コントローラー ハードウェアがこのようなシナリオをサポートするように構成されていないなら FALSE が返されます。

EFI_USBFN_IO_PROTOCOL.SetEndpointPolicy は、USB コントローラー ハードウェアが長さゼロのパケットの自動的な終了をサポートできる場合にのみ、このポリシーの種類を受け入れます。 この値が TRUE に設定されている場合、指定したエンドポイントの長さゼロの終了を処理するようにコントローラーを構成する必要があります。FALSE 値はこのような設定でコントローラを構成しません。

コントローラー ハードウェアが長さゼロの自動的な終了をサポートできる場合でも、これをデフォルトの構成にすることはできません。

  GetEndpointPolicy SetEndpointPolicy
BufferSize 1 バイト、sizeof(BOOLEAN) 1 バイト、sizeof(BOOLEAN)
リターン状態 EFI_STATUS EFI_STATUS

要件

ヘッダー: ユーザー生成