]> git.ipfire.org Git - people/arne_f/kernel.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>
Wed, 27 Jan 2021 10:05:40 +0000 (11:05 +0100)
commit1d18b110dc1f6dbd4a667dfbc3af0f1ea2efe6ff
treefc592514ee23f6637dbbca173973384a8917db06
parent0c6cfc109e5d2f6f72f93b27f77583a8d67c0f86
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