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 |
要求
标头: 用户生成的