Branch: refs/heads/master
Home: https://github.com/tianocore/edk2
Commit: a00ad45ea45203052491fe2b25c9393a59c75c53
https://github.com/tianocore/edk2/commit/a00ad45ea45203052491fe2b25c9393a59c75c53
Author: Alok Kulkarni <[email protected]>
Date: 2025-07-10 (Thu, 10 Jul 2025)
Changed paths:
M MdeModulePkg/Bus/Usb/UsbBusDxe/UsbEnumer.c
Log Message:
-----------
MdeModulePkg: UsbBusDxe Reset USB port GetPortStatus returns device error.
During USB device enumeration, issuing a hot reset on a port is skipped if
there is a reset change status already detected on the port. This can
happen when enumerating devices after a host controller soft reset (which
drives a hot reset down the ports).
However, in certain cases an attached device may not be responsive even if
the reset change and connection status bits are set. For e.g., according
to xHCI spec section 4.19.5.1 the port reset change bits can be set when
a hot reset driven on the port transitions to a warm reset and completes
with errors. For such instances it is worthwhile to force a hot reset
during enumeration to try and recover unresponsive devices.
During enumeration check whether querying port status returns
EFI_DEVICE_ERROR and try a port reset if there is a device attached to
the port.
Signed-off-by: Aaron Pop <[email protected]>
To unsubscribe from these emails, change your notification settings at
https://github.com/tianocore/edk2/settings/notifications
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits