MdeModulePkg[all]
0.98
|
Data Structures | |
struct | _PEI_USB2_HOST_CONTROLLER_PPI |
Macros | |
#define | PEI_USB2_HOST_CONTROLLER_PPI_GUID |
Typedefs | |
typedef struct _PEI_USB2_HOST_CONTROLLER_PPI | PEI_USB2_HOST_CONTROLLER_PPI |
typedef EFI_STATUS(EFIAPI * | PEI_USB2_HOST_CONTROLLER_CONTROL_TRANSFER )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 DeviceAddress, IN UINT8 DeviceSpeed, IN UINTN MaximumPacketLength, IN USB_DEVICE_REQUEST *Request, IN EFI_USB_DATA_DIRECTION TransferDirection, IN OUT VOID *Data, IN OUT UINTN *DataLength, IN UINTN TimeOut, IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Translator, OUT UINT32 *TransferResult) |
typedef EFI_STATUS(EFIAPI * | PEI_USB2_HOST_CONTROLLER_BULK_TRANSFER )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN UINT8 DeviceSpeed, IN UINTN MaximumPacketLength, IN OUT VOID *Data[EFI_USB_MAX_BULK_BUFFER_NUM], IN OUT UINTN *DataLength, IN OUT UINT8 *DataToggle, IN UINTN TimeOut, IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Translator, OUT UINT32 *TransferResult) |
typedef EFI_STATUS(EFIAPI * | PEI_USB2_HOST_CONTROLLER_GET_ROOTHUB_PORT_NUMBER )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, OUT UINT8 *PortNumber) |
typedef EFI_STATUS(EFIAPI * | PEI_USB2_HOST_CONTROLLER_GET_ROOTHUB_PORT_STATUS )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 PortNumber, OUT EFI_USB_PORT_STATUS *PortStatus) |
typedef EFI_STATUS(EFIAPI * | PEI_USB2_HOST_CONTROLLER_SET_ROOTHUB_PORT_FEATURE )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 PortNumber, IN EFI_USB_PORT_FEATURE PortFeature) |
typedef EFI_STATUS(EFIAPI * | PEI_USB2_HOST_CONTROLLER_CLEAR_ROOTHUB_PORT_FEATURE )(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 PortNumber, IN EFI_USB_PORT_FEATURE PortFeature) |
Variables | |
EFI_GUID | gPeiUsb2HostControllerPpiGuid |
Defines the USB Host Controller PPI that provides I/O services for a USB Host Controller that may be used to access recovery devices. These interfaces are modeled on the UEFI 2.3 specification EFI_USB2_HOST_CONTROLLER_PROTOCOL. Refer to section 16.1 of the UEFI 2.3 Specification for more information on these interfaces.
Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
#define PEI_USB2_HOST_CONTROLLER_PPI_GUID |
Global ID for the PEI_USB2_HOST_CONTROLLER_PPI.
typedef EFI_STATUS(EFIAPI * PEI_USB2_HOST_CONTROLLER_BULK_TRANSFER)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN UINT8 DeviceSpeed, IN UINTN MaximumPacketLength, IN OUT VOID *Data[EFI_USB_MAX_BULK_BUFFER_NUM], IN OUT UINTN *DataLength, IN OUT UINT8 *DataToggle, IN UINTN TimeOut, IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Translator, OUT UINT32 *TransferResult) |
Initiate a USB bulk transfer using a specific USB Host controller on the USB bus.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB2_HOST_CONTROLLER_PPI. |
[in] | DeviceAddress | Represents the address of the target device on the USB. |
[in] | EndPointAddress | The combination of an endpoint number and an endpoint direction of the target USB device. |
[in] | DeviceSpeed | Indicates device speed. |
[in] | MaximumPacketLength | Indicates the maximum packet size the target endpoint is capable of sending or receiving. |
[in,out] | Data | Array of pointers to the buffers of data that will be transmitted to USB device or received from USB device. |
[in,out] | DataLength | When input, indicates the size, in bytes, of the data buffers specified by Data. When output, indicates the data size actually transferred. |
[in,out] | DataToggle | A pointer to the data toggle value. |
[in] | TimeOut | Indicates the maximum time, in milliseconds, in which 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] | Translator | A pointer to the transaction translator data. |
[out] | TransferResult | A pointer to the detailed result information of the bulk transfer. |
EFI_SUCCESS | The bulk transfer was completed successfully. |
EFI_DEVICE_ERROR | The bulk transfer failed due to host controller or device error. Caller should check TransferResult for detailed error information. |
EFI_INVALID_PARAMETER | Some parameters are invalid. |
EFI_OUT_OF_RESOURCES | The bulk transfer could not be submitted due to a lack of resources. |
EFI_TIMEOUT | The bulk transfer failed due to timeout. |
typedef EFI_STATUS(EFIAPI * PEI_USB2_HOST_CONTROLLER_CLEAR_ROOTHUB_PORT_FEATURE)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 PortNumber, IN EFI_USB_PORT_FEATURE PortFeature) |
Clears a feature for the specified root hub port.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB2_HOST_CONTROLLER_PPI. |
[in] | PortNumber | Specifies the root hub port whose feature is requested to be cleared. |
[in] | PortFeature | Indicates the feature selector associated with the feature clear request. |
typedef EFI_STATUS(EFIAPI * PEI_USB2_HOST_CONTROLLER_CONTROL_TRANSFER)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 DeviceAddress, IN UINT8 DeviceSpeed, IN UINTN MaximumPacketLength, IN USB_DEVICE_REQUEST *Request, IN EFI_USB_DATA_DIRECTION TransferDirection, IN OUT VOID *Data, IN OUT UINTN *DataLength, IN UINTN TimeOut, IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Translator, OUT UINT32 *TransferResult) |
Initiate a USB control transfer using a specific USB Host controller on the USB bus.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB2_HOST_CONTROLLER_PPI. |
[in] | DeviceAddress | Represents the address of the target device on the USB. |
[in] | DeviceSpeed | Indicates device speed. |
[in] | MaximumPacketLength | Indicates the maximum packet size that the default control transfer endpoint is capable of sending or receiving. |
[in] | Request | A pointer to the USB device request that will be sent to the USB device. |
[in] | TransferDirection | Specifies the data direction for the transfer. There are three values available: EfiUsbDataIn, EfiUsbDataOut and EfiUsbNoData. |
[in,out] | Data | A pointer to the buffer of data that will be transmitted to USB device or received from USB device. |
[in,out] | DataLength | On input, indicates the size, in bytes, of the data buffer specified by Data. On output, indicates the amount of data actually transferred. |
[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] | Translator | A pointer to the transaction translator data. |
[out] | TransferResult | A pointer to the detailed result information generated by this control transfer. |
EFI_SUCCESS | The control transfer was completed successfully. |
EFI_DEVICE_ERROR | The control transfer failed due to host controller or device error. |
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. |
typedef EFI_STATUS(EFIAPI * PEI_USB2_HOST_CONTROLLER_GET_ROOTHUB_PORT_NUMBER)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, OUT UINT8 *PortNumber) |
Retrieves the number of root hub ports.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB2_HOST_CONTROLLER_PPI. |
[out] | PortNumber | The pointer to the number of the root hub ports. |
EFI_SUCCESS | The port number was retrieved successfully. |
EFI_INVALID_PARAMETER | PortNumber is NULL. |
typedef EFI_STATUS(EFIAPI * PEI_USB2_HOST_CONTROLLER_GET_ROOTHUB_PORT_STATUS)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 PortNumber, OUT EFI_USB_PORT_STATUS *PortStatus) |
Retrieves the current status of a USB root hub port.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB2_HOST_CONTROLLER_PPI. |
[in] | PortNumber | Specifies the root hub port from which the status is to be retrieved. This value is zero based. |
[out] | PortStatus | A pointer to the current port status bits and port status change bits. |
EFI_SUCCESS | The status of the USB root hub port specified by PortNumber was returned in PortStatus. |
EFI_INVALID_PARAMETER | PortNumber is invalid. |
typedef struct _PEI_USB2_HOST_CONTROLLER_PPI PEI_USB2_HOST_CONTROLLER_PPI |
Forward declaration for the PEI_USB2_HOST_CONTROLLER_PPI.
typedef EFI_STATUS(EFIAPI * PEI_USB2_HOST_CONTROLLER_SET_ROOTHUB_PORT_FEATURE)(IN EFI_PEI_SERVICES **PeiServices, IN PEI_USB2_HOST_CONTROLLER_PPI *This, IN UINT8 PortNumber, IN EFI_USB_PORT_FEATURE PortFeature) |
Sets a feature for the specified root hub port.
[in] | PeiServices | The pointer to the PEI Services Table. |
[in] | This | The pointer to this instance of the PEI_USB2_HOST_CONTROLLER_PPI. |
[in] | PortNumber | Specifies the root hub port whose feature is requested to be set. This value is zero based. |
[in] | PortFeature | Indicates the feature selector associated with the feature set request. |
EFI_SUCCESS | The feature specified by PortFeature was set for the USB root hub port specified by PortNumber. |
EFI_INVALID_PARAMETER | PortNumber is invalid or PortFeature is invalid for this function. |
EFI_TIMEOUT | The time out occurred |
EFI_GUID gPeiUsb2HostControllerPpiGuid |