1 #ifndef _IPXE_EFI_USBHOSTCONTROLLER_H 2 #define _IPXE_EFI_USBHOSTCONTROLLER_H 16 #ifndef _USB_HOSTCONTROLLER_H_ 17 #define _USB_HOSTCONTROLLER_H_ 23 #define EFI_USB_HC_PROTOCOL_GUID \ 25 0xf5089266, 0x1aa0, 0x4953, {0x97, 0xd8, 0x56, 0x2f, 0x8a, 0x73, 0xb5, 0x19 } \ #define OPTIONAL
Passing the datum to the function is optional, and a NULL is passed if the value is not supplied.
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_GET_STATE)(IN EFI_USB_HC_PROTOCOL *This, OUT EFI_USB_HC_STATE *State)
Retrieves current state of the USB host controller.
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_ISOCHRONOUS_TRANSFER)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN UINT8 MaximumPacketLength, IN OUT VOID *Data, IN UINTN DataLength, OUT UINT32 *TransferResult)
Submits isochronous transfer to an isochronous endpoint of a USB device.
EFI_USB_HC_PROTOCOL_GET_ROOTHUB_PORT_STATUS GetRootHubPortStatus
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_GET_ROOTHUB_PORT_NUMBER)(IN EFI_USB_HC_PROTOCOL *This, OUT UINT8 *PortNumber)
Retrieves the number of root hub ports.
128 bit buffer containing a unique identifier value.
EFI_USB_HC_PROTOCOL_BULK_TRANSFER BulkTransfer
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_SYNC_INTERRUPT_TRANSFER)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN BOOLEAN IsSlowDevice, IN UINT8 MaximumPacketLength, IN OUT VOID *Data, IN OUT UINTN *DataLength, IN OUT UINT8 *DataToggle, IN UINTN TimeOut, OUT UINT32 *TransferResult)
Submits synchronous interrupt transfer to an interrupt endpoint of a USB device.
UINT16 MajorRevision
The major revision number of the USB host controller.
EFI_USB_DATA_DIRECTION
USB data transfer direction.
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_SET_STATE)(IN EFI_USB_HC_PROTOCOL *This, IN EFI_USB_HC_STATE State)
Sets the USB host controller to a specific state.
EFI_USB_HC_PROTOCOL_CLEAR_ROOTHUB_PORT_FEATURE ClearRootHubPortFeature
The EFI_USB_HC_PROTOCOL provides USB host controller management, basic data transactions over a USB b...
EFI_USB_HC_PROTOCOL_ASYNC_INTERRUPT_TRANSFER AsyncInterruptTransfer
EFI_USB_HC_PROTOCOL_CONTROL_TRANSFER ControlTransfer
Format of Setup Data for USB Device Requests USB 2.0 spec, Section 9.3.
EFI_USB_HC_PROTOCOL_SET_STATE SetState
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_BULK_TRANSFER)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN UINT8 MaximumPacketLength, IN OUT VOID *Data, IN OUT UINTN *DataLength, IN OUT UINT8 *DataToggle, IN UINTN TimeOut, OUT UINT32 *TransferResult)
Submits bulk transfer to a bulk endpoint of a USB device.
EFI_USB_HC_PROTOCOL_SET_ROOTHUB_PORT_FEATURE SetRootHubPortFeature
EFI_USB_PORT_FEATURE
Usb port features value Each value indicates its bit index in the port status and status change bitma...
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_GET_ROOTHUB_PORT_STATUS)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 PortNumber, OUT EFI_USB_PORT_STATUS *PortStatus)
Retrieves the current status of a USB root hub port.
EFI_USB_HC_PROTOCOL_ISOCHRONOUS_TRANSFER IsochronousTransfer
EFI_USB2_HC_PROTOCOL as defined in UEFI 2.0.
EFI_GUID gEfiUsbHcProtocolGuid
UINT64 UINTN
Unsigned value of native width.
#define VOID
Undeclared type.
EFI_USB_HC_PROTOCOL_SYNC_INTERRUPT_TRANSFER SyncInterruptTransfer
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_SET_ROOTHUB_PORT_FEATURE)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 PortNumber, IN EFI_USB_PORT_FEATURE PortFeature)
Sets a feature for the specified root hub port.
EFI_USB_HC_PROTOCOL_GET_ROOTHUB_PORT_NUMBER GetRootHubPortNumber
FILE_LICENCE(BSD2_PATENT)
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_CONTROL_TRANSFER)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 DeviceAddress, IN BOOLEAN IsSlowDevice, IN UINT8 MaximumPacketLength, IN EFI_USB_DEVICE_REQUEST *Request, IN EFI_USB_DATA_DIRECTION TransferDirection, IN OUT VOID *Data OPTIONAL, IN OUT UINTN *DataLength OPTIONAL, IN UINTN TimeOut, OUT UINT32 *TransferResult)
Submits control transfer to a target USB device.
EFI_USB_HC_STATE
Enumration value for status of USB HC.
EFI_USB_HC_PROTOCOL_GET_STATE GetState
RETURN_STATUS EFI_STATUS
Function return status for EFI API.
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_CLEAR_ROOTHUB_PORT_FEATURE)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 PortNumber, IN EFI_USB_PORT_FEATURE PortFeature)
Clears a feature for the specified root hub port.
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_ASYNC_ISOCHRONOUS_TRANSFER)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN UINT8 MaximumPacketLength, IN OUT VOID *Data, IN UINTN DataLength, IN EFI_ASYNC_USB_TRANSFER_CALLBACK IsochronousCallBack, IN VOID *Context OPTIONAL)
Submits nonblocking isochronous transfer to an isochronous endpoint of a USB device.
volatile unsigned int DataLength
EFI_USB_HC_PROTOCOL_RESET Reset
EFI_USB_HC_PROTOCOL_ASYNC_ISOCHRONOUS_TRANSFER AsyncIsochronousTransfer
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_RESET)(IN EFI_USB_HC_PROTOCOL *This, IN UINT16 Attributes)
Provides software reset for the USB host controller.
EFI_STATUS(EFIAPI * EFI_USB_HC_PROTOCOL_ASYNC_INTERRUPT_TRANSFER)(IN EFI_USB_HC_PROTOCOL *This, IN UINT8 DeviceAddress, IN UINT8 EndPointAddress, IN BOOLEAN IsSlowDevice, IN UINT8 MaxiumPacketLength, IN BOOLEAN IsNewTransfer, IN OUT UINT8 *DataToggle, IN UINTN PollingInterval OPTIONAL, IN UINTN DataLength OPTIONAL, IN EFI_ASYNC_USB_TRANSFER_CALLBACK CallBackFunction OPTIONAL, IN VOID *Context OPTIONAL)
Submits an asynchronous interrupt transfer to an interrupt endpoint of a USB device.
EFI_STATUS(EFIAPI * EFI_ASYNC_USB_TRANSFER_CALLBACK)(IN VOID *Data, IN UINTN DataLength, IN VOID *Context, IN UINT32 Status)
Async USB transfer callback routine.
UINT16 MinorRevision
The minor revision number of the USB host controller.