Status code returned, Examples – Intel Extensible Firmware Interface User Manual
Page 600

Extensible Firmware Interface Specification
14-60 12/01/02
Version
1.10
Status Code Returned
EFI_SUCCESS
The endpoint descriptor was retrieved successfully.
EFI_INVALID_PARAMETER
EndpointIndex
is not valid.
EFI_INVALID_PARAMETER
EndpointDescriptor
is
NULL
.
EFI_NOT_FOUND
The endpoint descriptor cannot be found. The device may not be
correctly configured.
Examples
The following code fragment shows how to retrieve all the endpoint descriptors from a
USB controller.
EFI_USB_IO_PROTOCOL
*UsbIo;
EFI_USB_INTERFACE_DESCRIPTOR InterfaceDesc;
EFI_USB_ENDPOINT_DESCRIPTOR EndpointDesc;
UINTN
Index;
Status = UsbIo->GetInterfaceDescriptor (
UsbIo,
&InterfaceDesc
);
. . .
for(Index = 0; Index < InterfaceDesc.NumEndpoints; Index++) {
Status = UsbIo->GetEndpointDescriptor(
UsbIo,
Index,
&EndpointDesc
);
. . .
}