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一起使用时。如果 USB 控制器硬件能够在传输大小为 USB 最大数据包大小的倍数时自动处理零长度数据包,则返回 GetEndpointPolicy,则返回 TRUE;如果控制器硬件不支持此类方案,则返回 FAL标准版。

  GetEndpointPolicy SetEndpointPolicy
BufferSize 1 字节,sizeof(BOOLEAN) 不适用
返回状态 EFI_STATUS EFI_UNSUPPORTED

EfiUsbPolicyZeroLengthTermination
与EFI_USBFN_IO_PROTOCOL一起使用时。如果 USB 控制器硬件配置为在传输大小为 USB 最大数据包大小的倍数时自动处理零长度数据包,则返回 GetEndpointPolicy,则返回 TRUE;如果未将控制器硬件配置为支持此类方案,则返回 FAL标准版。

EFI_USBFN_IO_PROTOCOL。如果 USB 控制器硬件支持自动零长度数据包终止,SetEndpointPolicy 只能接受此策略类型。 如果此值设置为 TRUE,则必须将控制器配置为处理指定终结点的零长度终止;FAL标准版 值不会以此类方式配置控制器。

即使控制器硬件能够支持自动零长度终止,它也必须不是默认配置。

  GetEndpointPolicy SetEndpointPolicy
BufferSize 1 字节,sizeof(BOOLEAN) 1 字节,sizeof(BOOLEAN)
返回状态 EFI_STATUS EFI_STATUS

要求

标头: 用户生成的