!273 [openEuler-1.0-LTS] Fix mouse enumeration issue after wakeup from s4
Merge Pull Request from: @leoliu-oc There is a mouse attached in the xHCI port. Then plug out this mouse and plug to UHCI port after system go into hibernation. This mouse will random be identified after system wakeup from hibernation. During s4 wakeup, xHCI driver will cleanup this disconnect mouse (not connect to xHCI port). This will delay s4 wakeup process and UHCI root hub will goto auto suspend. Usb hub threads will be called to handle usb controller root hub's event after S4 wakeup completed. However, this are too many usb controllers to ensure EHCI and UHCI hub threads execute order. Once, EHCI giveback port to UHCI before UHCI hub event check. UHCI will try to enumerate this mouse with UHCI run bit not set. Which will cause control transfer fail during enumeration phase. In order to fix this issues, set UHCI root hub auto suspend delay value larger. UHCI run bit will be set after wakeup from S4 and mouse will be identified. ### Issue https://gitee.com/openeuler/kernel/issues/I62V77 ### Test N/A ### Knowe Issue N/A ### Default config change N/A Link:https://gitee.com/openeuler/kernel/pulls/273 Reviewed-by: Xiongfeng Wang <wangxiongfeng2@huawei.com> Reviewed-by: Laibin Qiu <qiulaibin@huawei.com> Signed-off-by: Xie XiuQi <xiexiuqi@huawei.com>
Showing
想要评论请 注册 或 登录