11. Protocols USB Support Test#
11.1. EFI_USB2_HC_PROTOCOL Test#
Reference Document:
UEFI Specification, EFI_USB2_HC_PROTOCOL Section.
Most of functionalities rely on the real USB devices. They are not covered in below checkpoints.
11.1.1. GetCapability()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.1.1.1 |
0xbe0fffbd, 0xc5cb, 0x4ab7, 0xa0, 0x8a, 0x79, 0xd1, 0x02, 0xb3, 0x5f, 0xf8 |
EFI_USB2_HC_PROTOCOL. GetCapability - GetCapability() returns EFI_INVALID_PARAMETER with a MaxSpeed value of NULL. |
1. Call GetCapability() with a MaxSpeed value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.1.2 |
0x6dd53bd5, 0x463b, 0x46a7, 0xb0, 0x98, 0x06, 0xa6, 0xf6, 0xa5, 0x62, 0xdd |
EFI_USB2_HC_PROTOCOL. GetCapability - GetCapability () returns EFI_INVALID_PARAMETER with a PortNumber value of NULL. |
1. Call GetCapability () with a PortNumber value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.1.3 |
0x0ffa5751, 0x96dd, 0x4a70, 0xa1, 0x01, 0x63, 0x66, 0x7b, 0x15, 0xcc, 0xf5 |
EFI_USB2_HC_PROTOCOL. GetCapability - GetCapability () returns EFI_INVALID_PARAMETER with an Is64BitCapable value of NULL. |
1. Call GetCapability () with an Is64BitCapable value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.1.2. Reset()#
Number | GUID | Assertion | Test Description |
5.21.1.2.1 | 0xf8dd84cb, 0x72a2, 0x4cab, 0xac, 0x2e, 0x11, 0x6f, 0x3c, 0x0d, 0x5d, 0xb5 | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_SUCCESS with Attributes values of EFI_USB_HC_RESET_GLOBAL. | 1. Call Reset() with Attributes values of EFI_USB_HC_RESET_GLOBAL. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of the USB host controller. The controller should be in halt state. |
5.21.1.2.2 | 0x3bdb0674, 0x621b, 0x4319, 0xb2, 0x4f, 0xc6, 0x1a, 0xd4, 0x09, 0x73, 0xd0 | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_SUCCESS with Attributes values of EFI_USB_HC_RESET_HOST_CONTROLLER. | 1. Call Reset() with Attributes values of EFI_USB_HC_RESET_HOST_CONTROLLER. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of the USB host controller. The controller should be in halt state. |
5.21.1.2.3 | 0xd243c0fd, 0x7654, 0x4400, 0xb3, 0x4a, 0xe3, 0x09, 0x8f, 0x9e, 0x5e, 0xd4 | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_SUCCESS with Attributes values of EFI_USB_HC_RESET_GLOBAL | EFI_USB_HC_RESET_HOST_CONTROLLER. | 1. Call Reset() with Attributes values of EFI_USB_HC_RESET_GLOBAL | EFI_USB_HC_RESET_HOST_CONTROLLER. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of the USB host controller. The controller should be in halt state. |
5.21.1.2.4 | 0xa4f18be1, 0x15f2, 0x424f, 0xa6, 0xdb, 0x58, 0x6e, 0x0d, 0x54, 0x80, 0x25 | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_SUCCESS with Attributes values of EFI_USB_HC_RESET_GLOBAL_DEBUG. | 1. Call Reset() with Attributes values of EFI_USB_HC_RESET_GLOBAL_DEBUG. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of the USB host controller. The controller should be in halt state. |
5.21.1.2.5 | 0xe2df74c7, 0x7aea, 0x488c, 0xb9, 0xa2, 0x71, 0x94, 0xb2, 0x5f, 0xf3, 0x8b | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_SUCCESS with Attributes values of EFI_USB_HC_RESET_HOST_CONTROLLER_DEBUG. | 1. Call Reset() with an Attributes value of EFI_USB_HC_RESET_HOST_CONTROLLER_DEBUG. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of the USB host controller. The controller should be in halt state. |
5.21.1.2.6 | 0xda7ef15c, 0x01a4, 0x4004, 0x8c, 0x7a, 0x33, 0xc7, 0x89, 0x47, 0xd9, 0xfc | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_SUCCESS with an Attributes value of EFI_USB_HC_RESET_GLOBAL_DEBUG | EFI_USB_HC_RESET_HOST_CONTROLLER_DEBUG. | 1. Call Reset() with an Attributes value of EFI_USB_HC_RESET_GLOBAL_DEBUG | EFI_USB_HC_RESET_HOST_CONTROLLER_DEBUG. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of this USB host controller. This controller should be in halt state. |
5.21.1.2.7 | 0xd2e6a8f0, 0x6c97, 0x4134, 0x81, 0x2e, 0x25, 0xf1, 0x75, 0x18, 0x6a, 0xe4 | EFI_USB2_HC_PROTOCOL.Reset - Reset() returns EFI_INVALID_PARAMETER with an invalid Attributes. | 1. Call Reset() with an invalid Attributes value of 0. The return status should be EFI_INVALID_PARAMETER. |
11.1.3. GetState()#
5.21.1.3.1 | 0x19be62be, 0xf20c, 0x4fa2, 0x89, 0xcc, 0x3a, 0x89, 0x39, 0x48, 0x4d, 0x86 | EFI_USB2_HC_PROTOCOL.GetState - GetState() returns EFI_SUCCESS while the host controller is in halt state. | 1. Call SetState() with a State value of EfiUsbHcStateHalt. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of this USB host controller. This controller should be in halt state. |
5.21.1.3.2 | 0xc2b1cb6a, 0x66b4, 0x4c6d, 0xb9, 0x0a, 0xc9, 0x5d, 0x27, 0xd6, 0xa5, 0xd1 | EFI_USB2_HC_PROTOCOL.GetState - GetState() returns EFI_SUCCESS while the host controller is in an operational state. | 1. Call SetState() with a State value of EfiUsbHcStateOperational. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of this USB host controller. This controller should be in an Operational state. |
5.21.1.3.3 | 0x95e913a0, 0x5ca9, 0x4edb, 0x92, 0x4f, 0xaa, 0x2f, 0x18, 0x9b, 0x57, 0x6a | EFI_USB2_HC_PROTOCOL.GetState - GetState() returns EFI_SUCCESS while the host controller is in suspend state. | 1. Call SetState() with a State value of EfiUsbHcStateSuspend. The return status should be EFI_SUCCESS. 2. Call GetState() to get the state of this USB host controller. This controller should be in Suspend state. |
5.21.1.3.4 | 0xbc1b8f2e, 0xf1aa, 0x446f, 0x81, 0x78, 0x6e, 0x4e, 0xd5, 0x53, 0x02, 0x08 | EFI_USB2_HC_PROTOCOL.GetState - GetState() returns EFI_INVALID_PARAMETER with a State value of NULL. | 1. Call GetState() with a State value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.1.4. SetState()#
Number | GUID | Assertion | Test Description |
5.21.1.4.1 | 0x5d2282fe, 0xc37c, 0x4901, 0xbb, 0xf7, 0xf1, 0xb6, 0xf0, 0xae, 0x82, 0x91 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from halt to halt. | 1. Call SetState() with a State value of EfiUsbHcStateHalt. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateHalt again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in halt state. |
5.21.1.4.2 | 0x6f6e6713, 0x07dc, 0x4413, 0x85, 0x05, 0xee, 0x69, 0x9e, 0x32, 0x69, 0x27 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from halt state to operational state. | 1. Call SetState() with a State value of EfiUsbHcStateHalt. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateOperational again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in an Operational state. |
5.21.1.4.3 | 0x49ca37bc, 0x208d, 0x4feb, 0xa6, 0xd9, 0x68, 0xa3, 0x69, 0xca, 0xb3, 0xf1 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from halt state to suspend state. | 1. Call SetState() with a State value of EfiUsbHcStateHalt. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateSuspend again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in Suspend state. |
5.21.1.4.4 | 0xa4663706, 0xd0c0, 0x45d7, 0x9a, 0x9d, 0x5e, 0x0e, 0xf8, 0xba, 0x2c, 0x26 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from operational state to operational state. | 1. Call SetState() with a State value of EfiUsbHcStateOperational. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateOperational again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in an Operational state. |
5.21.1.4.5 | 0xa9b73b45, 0xb3ca, 0x4579, 0x87, 0x38, 0xb3, 0xcc, 0xc4, 0x50, 0x09, 0x97 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from operational state to halt state. | 1. Call SetState() with a State value of EfiUsbHcStateOperational. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateHalt again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in halt state. |
5.21.1.4.6 | 0x54936ebc, 0x9732, 0x4d9f, 0x83, 0x5c, 0x95, 0x77, 0xf5, 0xdb, 0x0e, 0xb1 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from operational state to suspend state. | 1. Call SetState() with a State value of EfiUsbHcStateOperational. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateSuspend again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in Suspend state. |
5.21.1.4.7 | 0x9da57b17, 0x7841, 0x423a, 0xb1, 0xf8, 0x6d, 0x61, 0xf0, 0xd3, 0x17, 0xf0 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from suspend state to suspend state. | 1. Call SetState() with a State value of EfiUsbHcStateSuspend. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateSuspend again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in Suspend state. |
5.21.1.4.8 | 0x5b4bf27e, 0xad64, 0x41a4, 0xa9, 0x8b, 0xd2, 0xb0, 0x7d, 0x32, 0xbb, 0xa3 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from suspend state to halt state. | 1. Call SetState() with a State value of EfiUsbHcStateSuspend. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateHalt again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in halt state. |
5.21.1.4.9 | 0xc12e9ca0, 0x0e9c, 0x4204, 0xaa, 0xc3, 0x6d, 0x12, 0x33, 0x1b, 0x28, 0x9b | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_SUCCESS when changing the state from suspend state to operational state. | 1. Call SetState() with a State value of EfiUsbHcStateSuspend. The return status should be EFI_SUCCESS. 2. Call SetState() with a State value of EfiUsbHcStateOperational again. The return status should be EFI_SUCCESS. 3. Call GetState() to get the state of this USB host controller. This controller should be in an Operational state. |
5.21.1.4.10 | 0x5168c4ef, 0x91f4, 0x48c5, 0x88, 0x1f, 0xf8, 0x01, 0x80, 0xd2, 0x98, 0x07 | EFI_USB2_HC_PROTOCOL.SetState - SetState() returns EFI_INVALID_PARAMETER with an invalid State. | 1. Call SetState() with an invalid State value of -1. The return status should be EFI_INVALID_PARAMETER. 2. Call SetState() with an invalid State value of EfiUsbHcStateMaximum. The return status should be EFI_INVALID_PARAMETER. |
11.1.5. ControlTransfer()#
Number | GUID | Assertion | Test Description |
5.21.1.5.1 | 0x36308487, 0x3a2c, 0x48fa, 0x91, 0xed, 0xec, 0xc3, 0x59, 0xd0, 0x78, 0x46 | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with an invalid TransferDirection. | 1. Call ControlTransfer() with an invalid TransferDirection value (-1). The return status should be EFI_INVALID_PARAMETER. 2. Call ControlTransfer() with an invalid TransferDirection value (0x7FFFFFFF). The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.2 | 0x26532efd, 0x62ab, 0x4d60, 0x9c, 0xd8, 0x14, 0xb7, 0x9d, 0x48, 0x8e, 0xa1 | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with a invalid Data and DataLength values. | 1. Call ControlTransfer() with an invalid Data (value of) and TransferDirection is either EfiUsbDataIn or EfiUsbDataOut. The return status should be EFI_INVALID_PARAMETER. 2. Call ControlTransfer() with an invalid DataLength (value of 0) and TransferDirection is either EfiUsbDataIn or EfiUsbDataOut. The return status should be EFI_INVALID_PARAMETER. 3. Call ControlTransfer() with an invalid Data (not value of NULL) and TransferDirection value of EfiUsbNoData.The return status should be EFI_INVALID_PARAMETER. 4. Call ControlTransfer() with an invalid DataLength( value of 1)and TransferDirection value of EfiUsbNoData.The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.3 | 0x28f002fd, 0x3797, 0x46cb, 0xaf, 0x66, 0xd5, 0xb4, 0x27, 0x23, 0x1b, 0x7a | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with an Request value of NULL. | 1. Call ControlTransfer() with an invalid Request value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.4 | 0xddf99154, 0x12ea, 0x4c99, 0x9a, 0x49, 0x6a, 0x1c, 0x51, 0xc2, 0x7a, 0x77 | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with an invalid MaximumPacketLength. | 1. Call ControlTransfer() with an invalid MaximumPacketLength ( value is not 8) when DeviceSpeed is EFI_USB_SPEED_LOW. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.5 | 0xc258056b, 0x13ae, 0x4839, 0xbb, 0xda, 0xa0, 0x1f, 0x5c, 0x14, 0x0a, 0x51 | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with an invalid MaximumPacketLength. | 1. Call ControlTransfer() with an invalid MaximumPacketLength (value of 128 not 8/16/32/64) when DeviceSpeed is EFI_USB_SPEED_FULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.6 | 0x5f6973f9, 0x9d75, 0x4e26, 0x8a, 0x30, 0xb5, 0xc2, 0x0e, 0x47, 0xf0, 0xb3 | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with an invalid MaximumPacketLength. | 1. Call ControlTransfer() with an invalid MaximumPacketLength (value of 128 not 8/16/32/64) when DeviceSpeed is EFI_USB_SPEED_HIGH. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.7 | 0x66a39c82, 0xfb44, 0x4057, 0xbb, 0xd7, 0x4b, 0x24, 0x30, 0xff, 0x19, 0xa9 | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with an invalid MaximumPacketLength. | 1. Call ControlTransfer() with an invalid MaximumPacketLength (value of 256 not 512) when DeviceSpeed is EFI_USB_SPEED_SUPER. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.5.8 | 0xf63896ea, 0x5143, 0x4b7a, 0x93, 0x51, 0x63, 0xb5, 0xb5, 0x95, 0x81, 0x5c | EFI_USB2_HC_PROTOCOL. ControlTransfer - ControlTransfer () returns EFI_INVALID_PARAMETER with a TransferResult value of NULL. | 1. Call ControlTransfer() with an invalid TransferResult (value of NULL). The return status should be EFI_INVALID_PARAMETER. |
11.1.6. BulkTransfer()#
Number | GUID | Assertion | Test Description |
5.21.1.6.1 | 0x0498c13e, 0xc21b, 0x4c4e, 0x95, 0xd2, 0x11, 0x9a, 0x10, 0x07, 0x51, 0x02 | EFI_USB2_HC_PROTOCOL. BulkTransfer - BulkTransfer () returns EFI_INVALID_PARAMETER with a Data value of NULL. | 1. Call BulkTransfer() with an invalid Data value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.6.2 | 0x2a1df585, 0xf82a, 0x42ab, 0x97, 0x4f, 0xfe, 0xfb, 0xf7, 0x89, 0xe6, 0xf5 | EFI_USB2_HC_PROTOCOL. BulkTransfer - BulkTransfer () returns EFI_INVALID_PARAMETER with a DataLength value of 0. | 1. Call BulkTransfer() with an invalid DataLength value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.6.3 | 0x26ad2292, 0x449b, 0x4545, 0x80, 0xaa, 0x13, 0x39, 0x13, 0x15, 0x04, 0xf6 | EFI_USB2_HC_PROTOCOL. BulkTransfer - BulkTransfer () returns EFI_INVALID_PARAMETER with a DeviceSpeed value of EFI_USB_SPEED_LOW. | 1. Call BulkTransfer() with an invalid DeviceSpeed value of EFI_USB_SPEED_LOW. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.6.4 | 0x1d89742e, 0xd026, 0x47d7, 0xa4, 0xcb, 0xe0, 0xb6, 0xd9, 0xc3, 0xd9, 0x54 | EFI_USB2_HC_PROTOCOL. BulkTransfer - BulkTransfer () returns EFI_INVALID_PARAMETER with an invalid MaximumPacketLength. | 1. Call BulkTransfer() with an invalid MaximumPacketLength (value of 65) when DeviceSpeed is EFI_USB_SPEED_FULL. The return status should be EFI_INVALID_PARAMETER. 2. Call BulkTransfer() with an invalid MaximumPacketLength (value of 513) when DeviceSpeed is EFI_USB_SPEED_HIGH. The return status should be EFI_INVALID_PARAMETER. 3. Call BulkTransfer() with an invalid MaximumPacketLength (value of 1025) when DeviceSpeed is EFI_USB_SPEED_SUPER. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.6.5 | 0xbc90875e, 0x0a8b, 0x4e3c, 0xbb, 0xf2, 0x5a, 0x43, 0x40, 0x3a, 0x6b, 0x05 | EFI_USB2_HC_PROTOCOL. BulkTransfer - BulkTransfer () returns EFI_INVALID_PARAMETER with a DataToggle value other than 0 and 1. | 1. Call BulkTransfer() with an invalid DataToggle (value of 2). The return status should be EFI_INVALID_PARAMETER. |
5.21.1.6.6 | 0x0dfea5a1, 0xf82a, 0x41a5, 0xbf, 0x67, 0xea, 0x89, 0xed, 0x74, 0x61, 0x21 | EFI_USB2_HC_PROTOCOL. BulkTransfer - BulkTransfer () returns EFI_INVALID_PARAMETER with a TransferResult value of NULL. | 1. Call BulkTransfer() with an invalid TransferResult ( value of NULL). The return status should be EFI_INVALID_PARAMETER. |
11.1.7. AsyncInterruptTransfer()#
Number | GUID | Assertion | Test Description |
5.21.1.7.1 | 0xec3427c4, 0xe4df, 0x4646, 0x8b, 0x63, 0xdc, 0x0b, 0x7d, 0xc0, 0x0d, 0xdd | EFI_USB2_HC_PROTOCOL. AsyncInterruptTransfer - AsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a EndPointAddress value other than EfiUsbDataIn. | 1. Call AsyncInterruptTransfer () with an EndPointAddress value other than EfiUsbDataIn. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.7.2 | 0xc0cddbce, 0x4853, 0x4d71, 0xad, 0xe1, 0x59, 0x94, 0x90, 0x7c, 0x31, 0xcc | EFI_USB2_HC_PROTOCOL. AsyncInterruptTransfer - AsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a new, invalid transfer. | 1. Call AsyncInterruptTransfer () with the IsNewTransfer value of TRUE and DataLength value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.7.3 | 0xaf26077c, 0x75e5, 0x4fbc, 0xad, 0x5e, 0x99, 0x3b, 0xce, 0x66, 0xb5, 0xc5 | EFI_USB2_HC_PROTOCOL. AsyncInterruptTransfer - AsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a new, invalid transfer. | 1. Call AsyncInterruptTransfer () with the IsNewTransfer value of TRUE and a DataToggle value other than 0 and 1. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.7.4 | 0xccd35e94, 0x51db, 0x4118, 0xa8, 0xd4, 0x40, 0xbd, 0x2e, 0xee, 0x77, 0xd9 | EFI_USB2_HC_PROTOCOL. AsyncInterruptTransfer - AsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with new, invalid transfer. | 1. Call AsyncInterruptTransfer () with the IsNewTransfer value of TRUE and PollingInterval value of 0. The return status should be EFI_INVALID_PARAMETER. 2. Call AsyncInterruptTransfer () with the IsNewTransfer value of TRUE and PollingInterval value of 256. The return status should be EFI_INVALID_PARAMETER. |
11.1.8. SyncInterruptTransfer()#
Number | GUID | Assertion | Test Description |
5.21.1.8.1 | 0x509cb496, 0x1d63, 0x4faf, 0x8d, 0xdf, 0x00, 0xbc, 0x58, 0x05, 0x0d, 0xe6 | EFI_USB2_HC_PROTOCOL. SyncInterruptTransfer - SyncInterruptTransfer () returns EFI_INVALID_PARAMETER with the EndPointAddress set other than EfiUsbDataIn. | 1. Call SyncInterruptTransfer () with the EndPointAddress set other than EfiUsbDataIn. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.8.2 | 0x3a0ad565, 0xb82c, 0x450f, 0xbc, 0xe6, 0x88, 0xb3, 0xd1, 0x6a, 0xde, 0x35 | EFI_USB2_HC_PROTOCOL. SyncInterruptTransfer - SyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a Data value of NULL. | 1. Call SyncInterruptTransfer () with a Data value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.8.3 | 0xc139127a, 0x3797, 0x482f, 0xb3, 0x5c, 0xaa, 0xf7, 0x99, 0xbd, 0xf6, 0xc6 | EFI_USB2_HC_PROTOCOL. SyncInterruptTransfer - SyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a DataLength value of 0. | 1. Call SyncInterruptTransfer () with a DataLength value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.8.4 | 0x14cb206c, 0x422b, 0x47ee, 0x8c, 0x4b, 0xf3, 0x16, 0xfe, 0x33, 0xda, 0xfb | EFI_USB2_HC_PROTOCOL. SyncInterruptTransfer - SyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid MaximumPacketLength. | 1. Call SyncInterruptTransfer () with a MaximumPacketLength value of 9 and DeviceSpeed value of EFI_USB_SPEED_LOW. The return status should be EFI_INVALID_PARAMETER. 2. Call SyncInterruptTransfer () with a MaximumPacketLength value of 65 and DeviceSpeed value of EFI_USB_SPEED_FULL. The return status should be EFI_INVALID_PARAMETER. 3. Call SyncInterruptTransfer () with a MaximumPacketLength value of 3073 and DeviceSpeed value of EFI_USB_SPEED_HIGH. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.8.5 | 0xf4353439, 0x47e4, 0x4df3, 0x85, 0xe9, 0x9e, 0xfe, 0x72, 0x3a, 0x1e, 0x4b | EFI_USB2_HC_PROTOCOL. SyncInterruptTransfer - SyncInterruptTransfer () returns EFI_INVALID_PARAMETER with DataToggle pointing to a value other than 0 and 1. | 1. Call SyncInterruptTransfer () with DataToggle points to a value other than 0 and 1. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.8.6 | 0x81dfdb23, 0x681e, 0x4df7, 0xa7, 0x73, 0x6d, 0x41, 0x58, 0xdb, 0x88, 0x3e | EFI_USB2_HC_PROTOCOL. SyncInterruptTransfer - SyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a TransferResult value of NULL. | 1. Call SyncInterruptTransfer () with a TransferResult value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.1.9. IsochronousTransfer()#
Number | GUID | Assertion | Test Description |
5.21.1.9.1 | 0x74e2dcbf, 0xae9f, 0x4499, 0x82, 0x74, 0xcb, 0xbe, 0x86, 0x59, 0x5d, 0xb7 | EFI_USB2_HC_PROTOCOL. IsochronousTransfer - IsochronousTransfer () returns EFI_INVALID_PARAMETER with a Data value of NULL. | 1. Call IsochronousTransfer () with a Data value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.9.2 | 0xd93babd4, 0xd7de, 0x4e87, 0x9b, 0x5c, 0x68, 0xd2, 0xa6, 0x77, 0x33, 0xc4 | EFI_USB2_HC_PROTOCOL. IsochronousTransfer - IsochronousTransfer () returns EFI_INVALID_PARAMETER with a DataLength value of 0. | 1. Call IsochronousTransfer () with a DataLength value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.9.3 | 0x9b220909, 0x662c, 0x4b5e, 0x9e, 0x42, 0xdc, 0x66, 0x4c, 0xdb, 0xb1, 0x5f | EFI_USB2_HC_PROTOCOL. IsochronousTransfer - IsochronousTransfer () returns EFI_INVALID_PARAMETER with a MaxiumPacketLenth set larger than 1023. | 1. Call IsochronousTransfer () with a MaxiumPacketLenth value of 1024. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.9.4 | 0x68898a17, 0x5ae9, 0x456a, 0xb1, 0xe0, 0xa3, 0xc0, 0x42, 0xeb, 0x50, 0x8d | EFI_USB2_HC_PROTOCOL. IsochronousTransfer - IsochronousTransfer () returns EFI_INVALID_PARAMETER with a TransferResult value of NULL. | 1. Call IsochronousTransfer () with a TransferResult value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.9.5 | 0xfa4f5868, 0xf004, 0x4cbe, 0x88, 0x97, 0xfd, 0x6, 0xb2, 0x72, 0x76, 0x71 | EFI_USB2_HC_PROCOTOL.IsochronousTransfer IsochronousTransfer () returns
EFI_INVALID_PARAMETER
when DeviceSpeed is not one of the supported values. |
IsochronousTransfer() returns EFI_INVALID_PARAMETER when DeviceSpeed is not one of the supported values. |
11.1.10. AsyncIsochronousTransfer()#
Number | GUID | Assertion | Test Description |
5.21.1.10.1 | 0x55a7ea0c, 0x9ffc, 0x47dc, 0xb7, 0x5e, 0x5c, 0xfa, 0x8c, 0xed, 0xe1, 0x53 | EFI_USB2_HC_PROTOCOL. AsyncIsochronousTransfer - AsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with a Data value of NULL. | 1. Call AsyncIsochronousTransfer () with a Data value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.10.2 | 0xfa310dd6, 0x4b8a, 0x4799, 0xa5, 0xdc, 0x80, 0xe7, 0xbb, 0xe0, 0x4e, 0xac | EFI_USB2_HC_PROTOCOL. AsyncIsochronousTransfer - AsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with a DataLength value of 0. | 1. Call AsyncIsochronousTransfer () with a DataLength value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.10.3 | 0x4083742a, 0x6c43, 0x49b4, 0x8d, 0xe1, 0x7a, 0xf8, 0x0c, 0x8b, 0x02, 0x33 | EFI_USB2_HC_PROTOCOL. AsyncIsochronousTransfer - AsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with a MaxiumPacketLenth value of larger than 1023. | 1. Call AsyncIsochronousTransfer () with a MaxiumPacketLenth value of 1024. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.10.4 | 0x474590c4, 0x8410, 0x4871, 0x93, 0xb4, 0x2b, 0xe, 0x9f, 0xb5, 0xe8, 0x30 | USB2_HC_PROCOTOL.AsyncIsochronousTransfer –AsyncIsochronousTransfer () returns EFI_INVALID_PARAMETERwhen DeviceSpeed is not one of the supported values. | AsyncIsochronousTransfer() returns EFI_INVALID_PARAMETER when DeviceSpeed is not one of the supported values. |
11.1.11. GetRootHubPortStatus()#
Number | GUID | Assertion | Test Description |
5.21.1.11.1 | 0x089705c5, 0xf134, 0x42b4, 0xbd, 0xeb, 0x7a, 0x74, 0xc7, 0x93, 0xa0, 0xf5 | EFI_USB2_HC_PROTOCOL. GetRootHubPortStatus - GetRootHubPortStatus () returns EFI_INVALID_PARAMETER with an invalid PortNumber. | 1. Call GetCapability() to get the number of ports. The return status should be EFI_SUCCESS. 2. Call GetRootHubPortStatus() with PortNumber greater than the number of ports. The return status should be EFI_INVALID_PARAMETER. |
11.1.12. SetRootHubPortFeature()#
Number | GUID | Assertion | Test Description |
5.21.1.12.1 | 0xf74da277, 0x4ac2, 0x422c, 0x90, 0xda, 0xb4, 0x9f, 0xc7, 0x4f, 0x2a, 0x65 | EFI_USB2_HC_PROTOCOL. SetRootHubPortFeature - SetRootHubPortFeature () returns EFI_INVALID_PARAMETER with an invalid PortNumber. | 1. Call GetRootHubPortNumber () to get the number of ports. The return status should be EFI_SUCCESS. 2. Call SetRootHubPortFeature() with a PortNumber greater than the number of ports. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.12.2 | 0xd7071255, 0x61db, 0x446a, 0xad, 0x65, 0x01, 0xb4, 0x54, 0x72, 0x1f, 0x80 | EFI_USB2_HC_PROTOCOL. SetRootHubPortFeature - SetRootHubPortFeature () returns EFI_INVALID_PARAMETER with an invalid PortFeature. | 1. Call GetRootHubPortNumber () to get the number of ports. The return status should be EFI_SUCCESS. 2. Call SetRootHubPortFeature() with a PortFeature not value of EfiUsbPortEnable, EfiUsbPortSuspend, EfiUsbPortReset nor EfiUsbPortPower. The return status should be EFI_INVALID_PARAMETER. |
11.1.13. ClearRootHubPortFeature()#
Number | GUID | Assertion | Test Description |
5.21.1.13.1 | 0x88cda060, 0xbe70, 0x4c49, 0x95, 0xac, 0xae, 0xa0, 0x37, 0xfa, 0x7f, 0x51 | EFI_USB2_HC_PROTOCOL. ClearRootHubPortFeature - ClearRootHubPortFeature () returns EFI_INVALID_PARAMETER with an invalid PortNumber. | 1. Call GetRootHubPortNumber () to get the number of ports. The return status should be EFI_SUCCESS. 2. Call ClearRootHubPortFeature() with a PortNumber greater than the number of ports. The return status should be EFI_INVALID_PARAMETER. |
5.21.1.13.2 | 0x59de7e7c, 0x078d, 0x4217, 0xa5, 0xfd, 0xf0, 0x1e, 0x15, 0xeb, 0xa3, 0x67 | EFI_USB2_HC_PROTOCOL. ClearRootHubPortFeature - ClearRootHubPortFeature () returns EFI_INVALID_PARAMETER with an invalid PortFeature. | 1. Call GetRootHubPortNumber () to get the number of ports. The return status should be EFI_SUCCESS. 2. Call ClearRootHubPortFeature() with a PortFeature not value of EfiUsbPortEnable, EfiUsbPortSuspend, EfiUsbPortPower, EfiUsbPortConnectChange, EfiUsbPortResetChange, EfiUsbPortEnableChange, EfiUsbPortSuspendChange, nor EfiUsbPortOverCurrentChange. The return status should be EFI_INVALID_PARAMETER. |
11.2. EFI_USB_IO_PROTOCOL Test#
Reference Document:
UEFI Specification, EFI_USB_IO_PROTOCOL Section.
Most of functionalities rely on real USB devices. They are not covered in below checkpoints.
11.2.1. UsbControlTransfer()#
Number | GUID | Assertion | Test Description |
5.21.2.1.1 | 0xe687694c, 0xc7ec, 0x444b, 0xac, 0xc5, 0xa3, 0x56, 0xf2, 0xb6, 0x3f, 0x15 | EFI_USB_IO_PROTOCOL. UsbControlTransfer - UsbControlTransfer () returns EFI_INVALID_PARAMETER with an invalid TransferDirection. | 1. Call UsbControlTransfer() with an invalid TransferDirection ( value of -1). The return status should be EFI_INVALID_PARAMETER. 2. Call UsbControlTransfer() with an invalid TransferDirection ( value of 0x7FFFFFFF). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.1.2 | 0x4aa535ad, 0x7985, 0x49f3, 0x81, 0x53, 0xa3, 0xd7, 0x04, 0x1e, 0x3f, 0xd0 | EFI_USB_IO_PROTOCOL. UsbControlTransfer - UsbControlTransfer () returns EFI_INVALID_PARAMETER with a Request value of NULL. | 1. Call UsbControlTransfer() with a Request value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.1.3 | 0xc6bfebde, 0xd2d6, 0x44fa, 0xa6, 0xd9, 0x9b, 0x3c, 0x88, 0x9a, 0x52, 0x81 | EFI_USB_IO_PROTOCOL. UsbControlTransfer - UsbControlTransfer () returns EFI_INVALID_PARAMETER with a Status value of NULL. | 1. Call UsbControlTransfer() with a Status value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.1.4 | 0x937f99d5, 0x18ef, 0x424c, 0xb4, 0x4c, 0x54, 0xaf, 0xf6, 0x20, 0xe0, 0xdc |
EFI_USB_IO_PROTOCOL. UsbControlTransfer - UsbControlTransfer () returns EFI_SUCCESS or EFI_DEVICE_ERROR when the parameter Timeout is 0. |
1. Call UsbControlTransfer () when the parameter Timeout is 0. The return code must be EFI_SUCCESS or EFI_DEVICE_ERROR. . |
11.2.2. UsbBulkTransfer()#
Number | GUID | Assertion | Test Description |
5.21.2.2.1 | 0xf7c2276a, 0xfcd0, 0x4aeb, 0x99, 0x79, 0xf8, 0x79, 0x24, 0xd4, 0xc4, 0x83 | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. | 1. Call UsbBulkTransfer() with an invalid DeviceEndpoint value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.2 | 0xa0365348, 0xba4c, 0x43fe, 0xba, 0xde, 0x8e, 0x35, 0x26, 0x39, 0x7e, 0xbd | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. | 1. Call UsbBulkTransfer() with an invalid DeviceEndpoint ( value of 0x10). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.3 | 0xafcf7b82, 0x16ad, 0x4721, 0x92, 0x46, 0x0d, 0x7b, 0xbb, 0xbd, 0xc9, 0x3a | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. | 1. Call UsbBulkTransfer() with an invalid DeviceEndpoint ( value of 0x80 ). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.4 | 0x88c28425, 0xfbc6, 0x4441, 0x91, 0x23, 0x88, 0x83, 0x76, 0x9c, 0xed, 0x1e | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. | 1. Call UsbBulkTransfer() with an invalid DeviceEndpoint ( value of 0x90). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.5 | 0x383c6bd1, 0xb1f3, 0x4987, 0x8c, 0x6f, 0xb5, 0xd5, 0x23, 0xb4, 0x93, 0xc1 | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with a DeviceEndpoint value of not a BULK endpoint. | 1. Call UsbBulkTransfer() with an invalid DeviceEndpoint which is not a BULK endpoint. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.6 | 0x141aa66b, 0x7628, 0x4275, 0xae, 0xe3, 0x8c, 0xe1, 0x17, 0x65, 0x0d, 0xcc | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with a Data value of NULL. | 1. Call UsbBulkTransfer() with a Data value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.7 | 0x486552a5, 0x9863, 0x4eed, 0x8b, 0x37, 0x92, 0xb3, 0x8b, 0xc3, 0xe3, 0xeb | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with a DataLength value of NULL. | 1. Call UsbBulkTransfer() with a DataLength value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.8 | 0x582d809f, 0x88ce, 0x4a35, 0x89, 0xc6, 0xb5, 0x79, 0xf3, 0x70, 0x54, 0x66 | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_INVALID_PARAMETER with a Status value of NULL. | 1. Call UsbBulkTransfer() with a Status value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.2.9 | 0x3d1b8608, 0x8c1e, 0x4b09, 0x81, 0x0f, 0xd9, 0x5c, 0x2a, 0xd7, 0x66, 0xae | EFI_USB_IO_PROTOCOL. UsbBulkTransfer - UsbBulkTransfer () returns EFI_SUCCESS or EFI_DEVICE_ERROR when the parameter Timeout is 0. |
1. Call UsbBulkTransfer () when the parameter Timeout is 0. The return code must be EFI_SUCCESS or EFI_DEVICE_ERROR. |
11.2.3. UsbAsyncInterruptTransfer()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.3.1 |
0x551fbef7, 0xd9e9, 0x4302, 0xa4, 0xcd, 0x2d, 0xb6, 0x83, 0x47, 0xc9, 0x4a |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncInterruptTransfer () with an invalid DeviceEndpoint value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.3.2 |
0xbb293ec7, 0x3a01, 0x493d, 0xa2, 0x2b, 0x71, 0x97, 0x48, 0x0b, 0x4f, 0x64 |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncInterruptTransfer () with an invalid DeviceEndpoint value of 0x10. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.3.3 |
0xf2436425, 0xee55, 0x41ee, 0x81, 0x3d, 0xa4, 0x64, 0x47, 0x17, 0x18, 0xfa |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncInterruptTransfer () with an invalid DeviceEndpoint**(** value of 0x80). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.3.4 |
0x7ab9696d, 0x6687, 0x4f7f, 0xac, 0x16, 0x6a, 0x60, 0x23, 0x57, 0x41, 0xa7 |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncInterruptTransfer () with an invalid DeviceEndpoint ( value of 0x90). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.3.5 |
0x17646b64, 0x413f, 0x41cc, 0xbd, 0x8c, 0x91, 0x66, 0xe4, 0xef, 0x3e, 0x4c |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a DeviceEndpoint value of not an Interrupt endpoint. |
1. Call UsbAsyncInterruptTransfer () with a DeviceEndpoint value of not an Interrupt endpoint. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.3.6 |
0x4d89db86, 0x4acc, 0x4ed8, 0xb8, 0xd1, 0xc3, 0xaa, 0x75, 0x08, 0xb3, 0xee |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid PollingInterval. |
1. Call UsbAsyncInterruptTransfer () with an invalid PollingInterval value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.3.7 |
0x808d9c7c, 0x2397, 0x406d, 0x97, 0x69, 0xcd, 0xeb, 0x4f, 0xde, 0x11, 0x16 |
EFI_USB_IO_PROTOCOL. UsbAsyncInterruptTransfer - UsbAsyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid PollingInterval. |
1. Call UsbAsyncInterruptTransfer () with an invalid PollingInterval (value of 256. The return status should be EFI_INVALID_PARAMETER. |
11.2.4. UsbSyncInterruptTransfer()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.4.1 |
0x59735398, 0x5d31, 0x42e2, 0x8e, 0x65, 0x68, 0xbd, 0x6c, 0x1e, 0xbb, 0xb6 |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbSyncInterruptTransfer () with an invalid DeviceEndpoint (value of 0). The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.2 |
0xdd2221a8, 0x7dc1, 0x4d2a, 0x85, 0x99, 0x6b, 0x86, 0x9d, 0x74, 0xf0, 0xa7 |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbSyncInterruptTransfer () with an invalid DeviceEndpoint value of 0x10. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.3 |
0x15c6a9c5, 0x9912, 0x4474, 0xac, 0xe5, 0xa3, 0x1d, 0x49, 0xde, 0x63, 0x28 |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbSyncInterruptTransfer () with an invalid DeviceEndpoint value of 0x80. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.4 |
0x833ca596, 0xf83d, 0x455f, 0x95, 0x95, 0xe5, 0x77, 0xa6, 0xaf, 0x62, 0xdc |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbSyncInterruptTransfer () with an invalid DeviceEndpoint value of 0x90. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.5 |
0x60a2a3d0, 0xb657, 0x413d, 0x9b, 0x1c, 0xa7, 0x2b, 0x46, 0xaa, 0xa6, 0x77 |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a DeviceEndpoint value of not an Interrupt endpoint. |
1. Call UsbSyncInterruptTransfer () with a DeviceEndpoint value of not an Interrupt endpoint. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.6 |
0xd4730bf3, 0x8b92, 0x4bcf, 0x99, 0xef, 0xe1, 0xdb, 0x65, 0xe9, 0x86, 0xec |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a Data value of NULL. |
1. Call UsbSyncInterruptTransfer () with a Data value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.7 |
0x0dbc8bd6, 0x4405, 0x49c0, 0xa5, 0xd1, 0xbc, 0x01, 0xca, 0x61, 0x67, 0xb2 |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a DataLength value of NULL. |
1. Call UsbSyncInterruptTransfer () with a DataLength value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.4.8 |
0xa5e94a41, 0xc3ef, 0x4172, 0x94, 0xc2, 0xc7, 0xba, 0xa8, 0x72, 0xc3, 0x74 |
EFI_USB_IO_PROTOCOL. UsbSyncInterruptTransfer - UsbSyncInterruptTransfer () returns EFI_INVALID_PARAMETER with a Status value of NULL. |
1. Call UsbSyncInterruptTransfer () with a Status value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.2.5. UsbIsochronousTransfer()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.5.1 |
0x006bb343, 0x842a, 0x417a, 0xa8, 0x23, 0x29, 0x75, 0x68, 0x9b, 0x9e, 0x2a |
EFI_USB_IO_PROTOCOL. UsbIsochronousTransfer - UsbIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbIsochronousTransfer () with an invalid DeviceEndpoint value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.5.2 |
0xd4f5400e, 0x3ed0, 0x4659, 0xa4, 0x80, 0xff, 0xf5, 0xeb, 0x8b, 0xae, 0x9b |
EFI_USB_IO_PROTOCOL. UsbIsochronousTransfer - UsbIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbIsochronousTransfer () with an invalid DeviceEndpoint value of 0x10. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.5.3 |
0xcfbc4d53, 0x07b7, 0x4366, 0x85, 0x98, 0x85, 0xf1, 0x6a, 0x15, 0x82, 0xb3 |
EFI_USB_IO_PROTOCOL. UsbIsochronousTransfer - UsbIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbIsochronousTransfer () with an invalid DeviceEndpoint value of 0x80. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.5.4 |
0xc9cc277e, 0x02a3, 0x4392, 0x82, 0x24, 0x87, 0xe5, 0x26, 0x21, 0xfd, 0xd6 |
EFI_USB_IO_PROTOCOL. UsbIsochronousTransfer - UsbIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbIsochronousTransfer () with an invalid DeviceEndpoint value of 0x90. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.5.5 |
0x686e7854, 0xe518, 0x41c1, 0xb1, 0x71, 0x60, 0x4e, 0x6f, 0x7e, 0xe2, 0x91 |
EFI_USB_IO_PROTOCOL. UsbIsochronousTransfer - UsbIsochronousTransfer () returns EFI_INVALID_PARAMETER with a DeviceEndpoint which is not an Isochronous endpoint. |
1. Call UsbIsochronousTransfer () with a DeviceEndpoint value of not an Isochronous endpoint. The return status should be EFI_INVALID_PARAMETER. |
11.2.6. UsbAsyncIsochronousTransfer()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.6.1 |
0x5a8a2a48, 0xd6cc, 0x4993, 0x82, 0x1e, 0xf7, 0x2f, 0x48, 0x40, 0xa7, 0x26 |
EFI_USB_IO_PROTOCOL. UsbAsyncIsochronousTransfer - UsbAsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncIsochronousTransfer () with an invalid DeviceEndpoint value of 0. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.6.2 |
0x7df33f6b, 0x7525, 0x4999, 0x83, 0x9c, 0xb2, 0xc7, 0x73, 0xd1, 0xa2, 0xa5 |
EFI_USB_IO_PROTOCOL. UsbAsyncIsochronousTransfer - UsbAsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncIsochronousTransfer () with an invalid DeviceEndpoint value of 0x10. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.6.3 |
0x586d899f, 0x34f8, 0x474d, 0x99, 0x5e, 0x9e, 0x3e, 0x98, 0x9f, 0xf0, 0xee |
EFI_USB_IO_PROTOCOL. UsbAsyncIsochronousTransfer - UsbAsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncIsochronousTransfer () with an invalid DeviceEndpoint value of 0x80. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.6.4 |
0xfbe98aec, 0xeab8, 0x45a3, 0x85, 0xd3, 0x00, 0x32, 0x0d, 0x1c, 0xaa, 0xe3 |
EFI_USB_IO_PROTOCOL. UsbAsyncIsochronousTransfer - UsbAsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with an invalid DeviceEndpoint. |
1. Call UsbAsyncIsochronousTransfer () with an invalid DeviceEndpoint value of 0x90. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.6.5 |
0x7588b124, 0xdaa7, 0x4715, 0xa1, 0x99, 0xa4, 0xdc, 0x32, 0x19, 0x1c, 0xc9 |
EFI_USB_IO_PROTOCOL. UsbAsyncIsochronousTransfer - UsbAsyncIsochronousTransfer () returns EFI_INVALID_PARAMETER with a DeviceEndpoint value of not an Isochronous endpoint. |
1. Call UsbAsyncIsochronousTransfer () with a DeviceEndpoint value of not an Isochronous endpoint. The return status should be EFI_INVALID_PARAMETER. |
11.2.7. UsbGetDeviceDescriptor()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.7.1 |
0xe789ba3f, 0x2405, 0x4d45, 0xbf, 0xdb, 0x7e, 0xa7, 0xe8, 0x33, 0xc6, 0x8b |
EFI_USB_IO_PROTOCOL. UsbGetDeviceDescriptor - UsbGetDeviceDescriptor () returns EFI_INVALID_PARAMETER with a DeviceDescriptor value of NULL. |
1. Call UsbGetDeviceDescriptor () with a DeviceDescriptor value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.2.8. UsbGetConfigDescriptor()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.8.1 |
0x387570c3, 0x6923, 0x4cbb, 0x82, 0xb2, 0x59, 0xc7, 0x41, 0xab, 0x92, 0x4b |
EFI_USB_IO_PROTOCOL. UsbGetConfigDescriptor - UsbGetConfigDescriptor () returns EFI_INVALID_PARAMETER with a ConfigurationDescriptor value of NULL. |
1. Call UsbGetConfigDescriptor () with a ConfigurationDescriptor value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.2.9. UsbGetInterfaceDescriptor()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.9.1 |
0x47c33713, 0x8fbc, 0x43a4, 0xa2, 0xcd, 0xc1, 0x6b, 0xc7, 0xa5, 0xd4, 0x37 |
EFI_USB_IO_PROTOCOL. UsbGetInterfaceDescriptor - UsbGetInterfaceDescriptor () returns EFI_INVALID_PARAMETER with a InterfaceDescriptor value of NULL. |
1. Call UsbGetInterfaceDescriptor () with a InterfaceDescriptor value of NULL. The return status should be EFI_INVALID_PARAMETER. |
11.2.10. UsbGetEndpointDescriptor()#
Number | GUID | Assertion | Test Description |
5.21.2.10.1 | 0x8167f778, 0xa58c, 0x4837, 0xaf, 0xfb, 0x5e, 0x10, 0x69, 0x66, 0xa8, 0x74 | EFI_USB_IO_PROTOCOL. UsbGetEndpointDescriptor - UsbGetEndpointDescriptor () returns EFI_INVALID_PARAMETER with an EndpointDescriptor value of NULL. | 1. Call UsbGetEndpointDescriptor () with an EndpointDescriptor value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.10.2 | 0xb0da5669, 0x163d, 0x4d93, 0xae, 0xf0, 0x7b, 0x28, 0x53, 0x5f, 0x47, 0x3e | EFI_USB_IO_PROTOCOL. UsbGetEndpointDescriptor - UsbGetEndpointDescriptor () returns EFI_INVALID_PARAMETER with an EndpointIndex value of larger than 15. | 1. Call UsbGetEndpointDescriptor () with an EndpointIndex value of larger than 15. The return status should be EFI_INVALID_PARAMETER. |
5.21.2.10.3 | 0x692ec6a6, 0x057d, 0x43c3, 0x94, 0x74, 0x5c, 0x29, 0xb2, 0x5e, 0x5c, 0xe5 | EFI_USB_IO_PROTOCOL. UsbGetEndpointDescriptor - UsbGetEndpointDescriptor () returns EFI_INVALID_PARAMETER with an EndpointIndex value of equal to the number of endpoints. | 1. Call UsbGetInterfaceDescriptor () to get the number of endpoints. The return status should be EFI_SUCCESS. 2. Call UsbGetEndpointDescriptor () with an EndpointIndex value of equal to the number of endpoints. The return status should be EFI_INVALID_PARAMETER. |
11.2.11. UsbPortReset()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.21.2.11.1 |
0x27431330, 0x54c8, 0x40fe, 0x93, 0x74, 0x9d, 0x39, 0x4d, 0x10, 0x75, 0x3b |
EFI_USB_IO_PROTOCOL. UsbPortReset - UsbPortReset () returns EFI_INVALID_PARAMETER with a USB hub. |
1. Call UsbPortReset () with a USB hub. The return status should be EFI_INVALID_PARAMETER. |