Protocols — USB Support
Version 1.10 12/01/02 14-63
EFI_USB_IO_PROTOCOL.UsbPortReset()
Summary
Resets and reconfigures the USB controller. This function will work for all USB devices except
USB Hub Controllers.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_USB_IO_PORT_RESET) (
IN EFI_USB_IO_PROTOCOL *This
);
Parameters
This A pointer to the EFI_USB_IO_PROTOCOL instance. Type
EFI_USB_IO_PROTOCOL is defined in Section 14.2.5.
Description
This function provides a reset mechanism by sending a RESET signal from the parent hub port. A
reconfiguration process will happen (that includes setting the address and setting the configuration).
This reset function does not change the bus topology. A USB hub controller cannot be reset using
this function, because it would impact the downstream USB devices. So if the controller is a USB
hub controller, then EFI_INVALID_PARAMETER is returned.
Status Code Returned
EFI_SUCCESS The USB controller was reset.
EFI_INVALID_PARAMETER
If the controller specified by This is a USB hub.
EFI_DEVICE_ERROR An error occurred during the reconfiguration process.