Data Structures | |
struct | _PEI_USB_IO_PPI |
Defines | |
#define | PEI_USB_IO_PPI_GUID |
Typedefs | |
typedef struct _PEI_USB_IO_PPI | PEI_USB_IO_PPI |
typedef EFI_STATUS(EFIAPI * | PEI_USB_CONTROL_TRANSFER )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN EFI_USB_DEVICE_REQUEST *Request, IN EFI_USB_DATA_DIRECTION Direction, IN UINT32 Timeout, IN OUT VOID *Data, IN UINTN DataLength) |
typedef EFI_STATUS(EFIAPI * | PEI_USB_BULK_TRANSFER )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN UINT8 DeviceEndpoint, IN OUT VOID *Data, IN OUT UINTN *DataLength, IN UINTN Timeout) |
typedef EFI_STATUS(EFIAPI * | PEI_USB_GET_INTERFACE_DESCRIPTOR )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN EFI_USB_INTERFACE_DESCRIPTOR **InterfaceDescriptor) |
typedef EFI_STATUS(EFIAPI * | PEI_USB_GET_ENDPOINT_DESCRIPTOR )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN UINT8 EndpointIndex, IN EFI_USB_ENDPOINT_DESCRIPTOR **EndpointDescriptor) |
typedef EFI_STATUS(EFIAPI * | PEI_USB_PORT_RESET )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This) |
Variables | |
EFI_GUID | gPeiUsbIoPpiGuid |
Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define PEI_USB_IO_PPI_GUID |
Value:
{ \ 0x7c29785c, 0x66b9, 0x49fc, { 0xb7, 0x97, 0x1c, 0xa5, 0x55, 0xe, 0xf2, 0x83} \ }
typedef EFI_STATUS(EFIAPI * PEI_USB_BULK_TRANSFER)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN UINT8 DeviceEndpoint, IN OUT VOID *Data, IN OUT UINTN *DataLength, IN UINTN Timeout) |
Submits bulk transfer to a target USB device.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB_IO_PPI. |
[in] | DeviceEndpoint | The endpoint address. |
[in] | Data | The data buffer to be transfered. |
[in] | DataLength | The length of data buffer. |
[in] | Timeout | The timeout for the transfer, in milliseconds. If Timeout is 0, then the caller must wait for the function to be completed until EFI_SUCCESS or EFI_DEVICE_ERROR is returned. |
EFI_SUCCESS | The bulk transfer completed successfully. | |
EFI_INVALID_PARAMETER | Some parameters are invalid. | |
EFI_OUT_OF_RESOURCES | The bulk transfer could not be completed due to a lack of resources. | |
EFI_TIMEOUT | The bulk transfer failed due to timeout. | |
EFI_DEVICE_ERROR | The bulk transfer failed due to host controller or device error. Caller should check TransferResult for detailed error information. |
typedef EFI_STATUS(EFIAPI * PEI_USB_CONTROL_TRANSFER)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN EFI_USB_DEVICE_REQUEST *Request, IN EFI_USB_DATA_DIRECTION Direction, IN UINT32 Timeout, IN OUT VOID *Data, IN UINTN DataLength) |
Submits control transfer to a target USB device.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB_IO_PPI. |
[in] | Request | A pointer to the USB device request that will be sent to the USB device. |
[in] | Direction | Specifies the data direction for the transfer. There are three values available: EfiUsbDataIn, EfiUsbDataOut and EfiUsbNoData. |
[in] | Timeout | Indicates the maximum time, in milliseconds, that the transfer is allowed to complete. If Timeout is 0, then the caller must wait for the function to be completed until EFI_SUCCESS or EFI_DEVICE_ERROR is returned. |
[in,out] | Data | A pointer to the buffer of data that will be transmitted to or received from the USB device. |
[in] | DataLength | On input, indicates the size, in bytes, of the data buffer specified by Data. |
EFI_SUCCESS | The control transfer was completed successfully. | |
EFI_INVALID_PARAMETER | Some parameters are invalid. | |
EFI_OUT_OF_RESOURCES | The control transfer could not be completed due to a lack of resources. | |
EFI_TIMEOUT | The control transfer failed due to timeout. | |
EFI_DEVICE_ERROR | The control transfer failed due to host controller or device error. Caller should check TransferResult for detailed error information. |
typedef EFI_STATUS(EFIAPI * PEI_USB_GET_ENDPOINT_DESCRIPTOR)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN UINT8 EndpointIndex, IN EFI_USB_ENDPOINT_DESCRIPTOR **EndpointDescriptor) |
Get endpoint descriptor from a USB device.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB_IO_PPI. |
[in] | EndPointIndex | The index of the end point. |
[in] | EndpointDescriptor | The endpoint descriptor. |
EFI_SUCCESS | The endpoint descriptor was returned. | |
EFI_INVALID_PARAMETER | Some parameters are invalid. | |
EFI_DEVICE_ERROR | A device error occurred, the function failed to get the endpoint descriptor. |
typedef EFI_STATUS(EFIAPI * PEI_USB_GET_INTERFACE_DESCRIPTOR)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This, IN EFI_USB_INTERFACE_DESCRIPTOR **InterfaceDescriptor) |
Get interface descriptor from a USB device.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB_IO_PPI. |
[in] | InterfaceDescriptor | The interface descriptor. |
EFI_SUCCESS | The interface descriptor was returned. | |
EFI_INVALID_PARAMETER | Some parameters are invalid. | |
EFI_DEVICE_ERROR | A device error occurred, the function failed to get the interface descriptor. |
typedef struct _PEI_USB_IO_PPI PEI_USB_IO_PPI |
Forward declaration for the PEI_USB_IO_PPI.
typedef EFI_STATUS(EFIAPI * PEI_USB_PORT_RESET)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB_IO_PPI *This) |
Issue a port reset to the device.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB_IO_PPI. |
EFI_SUCCESS | The port reset was issued successfully. | |
EFI_INVALID_PARAMETER | Some parameters are invalid. | |
EFI_DEVICE_ERROR | Device error occurred. |
EFI_GUID gPeiUsbIoPpiGuid |