--*/\r
{\r
USB_IO_CONTROLLER_DEVICE *UsbIoController;\r
- EFI_USB_HC_PROTOCOL *UsbHCInterface;\r
+\r
EFI_STATUS RetStatus;\r
- USB_IO_DEVICE *UsbIoDevice;\r
+ USB_IO_DEVICE *UsbIoDev;\r
UINT8 MaxPacketLength;\r
UINT32 TransferResult;\r
BOOLEAN Disconnected;\r
// to perform other parameters checking\r
//\r
UsbIoController = USB_IO_CONTROLLER_DEVICE_FROM_USB_IO_THIS (This);\r
- UsbIoDevice = UsbIoController->UsbDevice;\r
- UsbHCInterface = UsbIoDevice->BusController->UsbHCInterface;\r
- MaxPacketLength = UsbIoDevice->DeviceDescriptor.MaxPacketSize0;\r
+ UsbIoDev = UsbIoController->UsbDevice;\r
+\r
+ MaxPacketLength = UsbIoDev->DeviceDescriptor.MaxPacketSize0;\r
\r
\r
if (Request->Request == USB_DEV_CLEAR_FEATURE && \r
return EFI_DEVICE_ERROR;\r
}\r
}\r
-\r
-\r
-\r
//\r
// using HostController's ControlTransfer to complete the request\r
//\r
- RetStatus = UsbHCInterface->ControlTransfer (\r
- UsbHCInterface,\r
- UsbIoDevice->DeviceAddress,\r
- UsbIoDevice->IsSlowDevice,\r
- MaxPacketLength,\r
- Request,\r
- Direction,\r
- Data,\r
- &DataLength,\r
- (UINTN) Timeout,\r
- &TransferResult\r
- );\r
+ RetStatus = UsbVirtualHcControlTransfer (\r
+ UsbIoDev->BusController,\r
+ UsbIoDev->DeviceAddress,\r
+ UsbIoDev->DeviceSpeed,\r
+ MaxPacketLength,\r
+ Request,\r
+ Direction,\r
+ Data,\r
+ &DataLength,\r
+ (UINTN) Timeout,\r
+ UsbIoDev->Translator,\r
+ &TransferResult\r
+ );\r
+\r
*Status = TransferResult;\r
\r
if (Request->Request == USB_DEV_CLEAR_FEATURE && \r
--*/\r
{\r
USB_IO_DEVICE *UsbIoDev;\r
- UINT8 MaxPacketLength;\r
+ UINTN MaxPacketLength;\r
UINT8 DataToggle;\r
UINT8 OldToggle;\r
EFI_STATUS RetStatus;\r
- EFI_USB_HC_PROTOCOL *UsbHCInterface;\r
+\r
USB_IO_CONTROLLER_DEVICE *UsbIoController;\r
ENDPOINT_DESC_LIST_ENTRY *EndPointListEntry;\r
UINT32 TransferResult;\r
-\r
- UsbIoController = USB_IO_CONTROLLER_DEVICE_FROM_USB_IO_THIS (This);\r
- UsbIoDev = UsbIoController->UsbDevice;\r
- UsbHCInterface = UsbIoDev->BusController->UsbHCInterface;\r
+ UINT8 DataBuffersNumber;\r
+ \r
+ DataBuffersNumber = 1;\r
+ UsbIoController = USB_IO_CONTROLLER_DEVICE_FROM_USB_IO_THIS (This);\r
+ UsbIoDev = UsbIoController->UsbDevice;\r
\r
//\r
// Parameters Checking\r
//\r
// using HostController's BulkTransfer to complete the request\r
//\r
- RetStatus = UsbHCInterface->BulkTransfer (\r
- UsbHCInterface,\r
- UsbIoDev->DeviceAddress,\r
- DeviceEndpoint,\r
- MaxPacketLength,\r
- Data,\r
- DataLength,\r
- &DataToggle,\r
- Timeout,\r
- &TransferResult\r
- );\r
+ RetStatus = UsbVirtualHcBulkTransfer (\r
+ UsbIoDev->BusController,\r
+ UsbIoDev->DeviceAddress,\r
+ DeviceEndpoint,\r
+ UsbIoDev->DeviceSpeed,\r
+ MaxPacketLength,\r
+ DataBuffersNumber,\r
+ &Data,\r
+ DataLength,\r
+ &DataToggle,\r
+ Timeout,\r
+ UsbIoDev->Translator,\r
+ &TransferResult\r
+ );\r
\r
if (OldToggle != DataToggle) {\r
//\r
\r
--*/\r
{\r
- USB_IO_DEVICE *UsbIoDev;\r
- UINT8 MaxPacketLength;\r
- UINT8 DataToggle;\r
- UINT8 OldToggle;\r
- EFI_STATUS RetStatus;\r
- EFI_USB_HC_PROTOCOL *UsbHCInterface;\r
- USB_IO_CONTROLLER_DEVICE *UsbIoController;\r
- ENDPOINT_DESC_LIST_ENTRY *EndPointListEntry;\r
+ USB_IO_DEVICE *UsbIoDev;\r
+ UINTN MaxPacketLength;\r
+ UINT8 DataToggle;\r
+ UINT8 OldToggle;\r
+ EFI_STATUS RetStatus;\r
+ USB_IO_CONTROLLER_DEVICE *UsbIoController;\r
+ ENDPOINT_DESC_LIST_ENTRY *EndPointListEntry;\r
\r
//\r
// Parameters Checking\r
//\r
UsbIoController = USB_IO_CONTROLLER_DEVICE_FROM_USB_IO_THIS (This);\r
UsbIoDev = UsbIoController->UsbDevice;\r
- UsbHCInterface = UsbIoDev->BusController->UsbHCInterface;\r
-\r
GetDeviceEndPointMaxPacketLength (\r
This,\r
DeviceEndpoint,\r
//\r
// using HostController's SyncInterruptTransfer to complete the request\r
//\r
- RetStatus = UsbHCInterface->SyncInterruptTransfer (\r
- UsbHCInterface,\r
- UsbIoDev->DeviceAddress,\r
- DeviceEndpoint,\r
- UsbIoDev->IsSlowDevice,\r
- MaxPacketLength,\r
- Data,\r
- DataLength,\r
- &DataToggle,\r
- Timeout,\r
- Status\r
- );\r
+ RetStatus = UsbVirtualHcSyncInterruptTransfer (\r
+ UsbIoDev->BusController,\r
+ UsbIoDev->DeviceAddress,\r
+ DeviceEndpoint,\r
+ UsbIoDev->DeviceSpeed,\r
+ MaxPacketLength,\r
+ Data,\r
+ DataLength,\r
+ &DataToggle,\r
+ Timeout,\r
+ UsbIoDev->Translator,\r
+ Status\r
+ );\r
\r
if (OldToggle != DataToggle) {\r
//\r
the transfer is to be executed.\r
DataLength - Specifies the length, in bytes, of the data to be\r
received from the USB device.\r
- InterruptCallback - The Callback function. This function is called if\r
+ InterruptCallBack - The Callback function. This function is called if\r
the asynchronous interrupt transfer is completed.\r
Context - Passed to InterruptCallback \r
Returns:\r
\r
--*/\r
{\r
- USB_IO_DEVICE *UsbIoDev;\r
- UINT8 MaxPacketLength;\r
- UINT8 DataToggle;\r
- EFI_USB_HC_PROTOCOL *UsbHCInterface;\r
- EFI_STATUS RetStatus;\r
- USB_IO_CONTROLLER_DEVICE *UsbIoController;\r
- ENDPOINT_DESC_LIST_ENTRY *EndpointListEntry;\r
+ USB_IO_DEVICE *UsbIoDev;\r
+ UINTN MaxPacketLength;\r
+ UINT8 DataToggle;\r
+ EFI_STATUS RetStatus;\r
+ USB_IO_CONTROLLER_DEVICE *UsbIoController;\r
+ ENDPOINT_DESC_LIST_ENTRY *EndpointListEntry;\r
\r
//\r
// Check endpoint\r
\r
UsbIoController = USB_IO_CONTROLLER_DEVICE_FROM_USB_IO_THIS (This);\r
UsbIoDev = UsbIoController->UsbDevice;\r
- UsbHCInterface = UsbIoDev->BusController->UsbHCInterface;\r
\r
if (!IsNewTransfer) {\r
//\r
// Delete this transfer\r
//\r
- UsbHCInterface->AsyncInterruptTransfer (\r
- UsbHCInterface,\r
- UsbIoDev->DeviceAddress,\r
- DeviceEndpoint,\r
- UsbIoDev->IsSlowDevice,\r
- 0,\r
- FALSE,\r
- &DataToggle,\r
- PollingInterval,\r
- DataLength,\r
- NULL,\r
- NULL\r
- );\r
+ UsbVirtualHcAsyncInterruptTransfer (\r
+ UsbIoDev->BusController,\r
+ UsbIoDev->DeviceAddress,\r
+ DeviceEndpoint,\r
+ UsbIoDev->DeviceSpeed,\r
+ 0,\r
+ FALSE,\r
+ &DataToggle,\r
+ PollingInterval,\r
+ DataLength,\r
+ UsbIoDev->Translator,\r
+ NULL,\r
+ NULL\r
+ );\r
\r
//\r
// We need to store the toggle value\r
&DataToggle\r
);\r
\r
- RetStatus = UsbHCInterface->AsyncInterruptTransfer (\r
- UsbHCInterface,\r
- UsbIoDev->DeviceAddress,\r
- DeviceEndpoint,\r
- UsbIoDev->IsSlowDevice,\r
- MaxPacketLength,\r
- TRUE,\r
- &DataToggle,\r
- PollingInterval,\r
- DataLength,\r
- InterruptCallBack,\r
- Context\r
- );\r
+ RetStatus = UsbVirtualHcAsyncInterruptTransfer (\r
+ UsbIoDev->BusController,\r
+ UsbIoDev->DeviceAddress,\r
+ DeviceEndpoint,\r
+ UsbIoDev->DeviceSpeed,\r
+ MaxPacketLength,\r
+ TRUE,\r
+ &DataToggle,\r
+ PollingInterval,\r
+ DataLength,\r
+ UsbIoDev->Translator,\r
+ InterruptCallBack,\r
+ Context\r
+ );\r
\r
return RetStatus;\r
}\r
EFI_SUCCESS\r
EFI_NOT_FOUND\r
EFI_OUT_OF_RESOURCES\r
+ EFI_UNSUPPORTED\r
\r
--*/\r
{\r