From: Greg Kroah-Hartman Date: Mon, 31 May 2021 12:18:01 +0000 (+0200) Subject: 5.10-stable patches X-Git-Tag: v4.4.271~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=26185e93c1f7e0f1ed52788a416a2b44dd6cd96b;p=thirdparty%2Fkernel%2Fstable-queue.git 5.10-stable patches added patches: usb-core-reduce-power-on-good-delay-time-of-root-hub.patch --- diff --git a/queue-5.10/series b/queue-5.10/series index dd6fb139807..f4ed1960f2e 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -249,3 +249,4 @@ revert-revert-alsa-usx2y-fix-potential-null-pointer-dereference.patch net-hso-bail-out-on-interrupt-urb-allocation-failure.patch scripts-clang-tools-switch-explicitly-to-python-3.patch neighbour-prevent-race-condition-in-neighbour-subsytem.patch +usb-core-reduce-power-on-good-delay-time-of-root-hub.patch diff --git a/queue-5.10/usb-core-reduce-power-on-good-delay-time-of-root-hub.patch b/queue-5.10/usb-core-reduce-power-on-good-delay-time-of-root-hub.patch new file mode 100644 index 00000000000..843a9df3952 --- /dev/null +++ b/queue-5.10/usb-core-reduce-power-on-good-delay-time-of-root-hub.patch @@ -0,0 +1,39 @@ +From 90d28fb53d4a51299ff324dede015d5cb11b88a2 Mon Sep 17 00:00:00 2001 +From: Chunfeng Yun +Date: Sat, 10 Apr 2021 09:20:45 +0800 +Subject: usb: core: reduce power-on-good delay time of root hub + +From: Chunfeng Yun + +commit 90d28fb53d4a51299ff324dede015d5cb11b88a2 upstream. + +Return the exactly delay time given by root hub descriptor, +this helps to reduce resume time etc. + +Due to the root hub descriptor is usually provided by the host +controller driver, if there is compatibility for a root hub, +we can fix it easily without affect other root hub + +Acked-by: Alan Stern +Signed-off-by: Chunfeng Yun +Link: https://lore.kernel.org/r/1618017645-12259-1-git-send-email-chunfeng.yun@mediatek.com +Signed-off-by: Greg Kroah-Hartman +--- + drivers/usb/core/hub.h | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- a/drivers/usb/core/hub.h ++++ b/drivers/usb/core/hub.h +@@ -148,8 +148,10 @@ static inline unsigned hub_power_on_good + { + unsigned delay = hub->descriptor->bPwrOn2PwrGood * 2; + +- /* Wait at least 100 msec for power to become stable */ +- return max(delay, 100U); ++ if (!hub->hdev->parent) /* root hub */ ++ return delay; ++ else /* Wait at least 100 msec for power to become stable */ ++ return max(delay, 100U); + } + + static inline int hub_port_debounce_be_connected(struct usb_hub *hub,