]> www.infradead.org Git - users/dwmw2/linux.git/commit
ehci: fix EHCI host controller initialization sequence
authorEugene Korenevsky <ekorenevsky@astralinux.ru>
Sun, 10 Jan 2021 17:36:09 +0000 (20:36 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 30 Jan 2021 12:31:14 +0000 (13:31 +0100)
commit34dab9d7bf9def610ad11f92130aceb8456d3edf
treef04ac3dc334a007e7d84d7ba440998370726da06
parent83f8cb9aff0ffb8661fb620b7598ca5804bf75ab
ehci: fix EHCI host controller initialization sequence

commit 280a9045bb18833db921b316a5527d2b565e9f2e upstream.

According to EHCI spec, EHCI HC clears USBSTS.HCHalted whenever
USBCMD.RS=1.

However, it is a good practice to wait some time after setting USBCMD.RS
(approximately 100ms) until USBSTS.HCHalted become zero.

Without this waiting, VirtualBox's EHCI virtual HC accidentally hangs
(see BugLink).

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=211095
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Eugene Korenevsky <ekorenevsky@astralinux.ru>
Cc: stable <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20210110173609.GA17313@himera.home
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/ehci-hcd.c