summaryrefslogtreecommitdiffstats
path: root/src/interface/linux/linux_time.c
diff options
context:
space:
mode:
authorMichael Brown2020-09-29 15:32:57 +0200
committerMichael Brown2020-09-29 15:32:57 +0200
commit627b0ba2a0ee6be1ebe863c54a6c3154d6c40e2e (patch)
tree5abff5caa5f54439c475a55e47160d255213f6f1 /src/interface/linux/linux_time.c
parent[efi] Leave USB endpoint descriptors in existence until device is removed (diff)
downloadipxe-627b0ba2a0ee6be1ebe863c54a6c3154d6c40e2e.tar.gz
ipxe-627b0ba2a0ee6be1ebe863c54a6c3154d6c40e2e.tar.xz
ipxe-627b0ba2a0ee6be1ebe863c54a6c3154d6c40e2e.zip
[efi] Report any USB errors as EFI_USB_ERR_SYSTEM
Some UEFI USB drivers (e.g. the UsbKbDxe driver in EDK2) will react to a reported EFI_USB_ERR_STALL by attempting to clear the endpoint halt. This is redundant with iPXE's EFI_USB_IO_PROTOCOL implementation, since endpoint stalls are cleared automatically by the USB core as needed. The UEFI USB driver's attempt to clear the endpoint halt can introduce an unwanted 5 second delay per endpoint if the USB error was the result of a device being physically removed, since the control transfer will always time out. Fix by reporting all USB errors as EFI_USB_ERR_SYSTEM instead of EFI_USB_ERR_STALL. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/interface/linux/linux_time.c')
0 files changed, 0 insertions, 0 deletions