Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2753984pxj; Mon, 31 May 2021 09:54:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw0V8OcZuc34DGqauZPJsgCUohMrhNY3OCZhP4Be1JSws3Xpjci3xTqiGle14fdLsF4t2Yw X-Received: by 2002:a05:6602:4c:: with SMTP id z12mr17960875ioz.191.1622480057082; Mon, 31 May 2021 09:54:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622480057; cv=none; d=google.com; s=arc-20160816; b=Ej64sBTHBlZiCvgFOC83He0xW88iEkLqJPJrdcQvXCyw1yvnQuqloKMXpfJLANzuHf 25/8vzHdX3jXPe8rowe2DZVHym9rCCg1+1OlH2601LXmd9ZPFbKcoxQKYh8ecwWspc5Z 9d7bOVzmBr2lpytOpzi9GWqcnIBrjW0rXN9qxLWZekR/B8a3n6i38eA88X1e/76/1Eeb n0qmwDKl97L8I1C5EP8MYkVrVw8TdONEXlQbcJ35QQPW/j3Dlu4W9CZ1K2qW+eTJUd9l JY7EQk1nc4yaq3yeASdi6yf5TZsNDGLtcCi0qw+61j5sxfyNbDGzcaxa8bNmF3hLtp27 pIUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=weLFlOMjPLE1Zw+PyrhvA1uXSZ8aXteem8HzLQdoyFA=; b=cEi3xiVfw497D0M7KcOvTpYe0BKIKDdSJ5K1XssPbuVknzd8D+IFg6ZE/Qfv0dNbUc uK8ypzDHgg2jSqJkPf78IGeSQTzL4Y0LUNrZ2R3tkCeaWGpdYcJ/u6iMcOQf043q9mVa Y+bVyBhDrCu0rlqabn04popTt49axMzeb8UmAhSYuYvdiGrcttGjbxgmOpfw6Vu7uWVX hAtpCLM//VubzB91o6lC8QjGLppSpf9MmZCsR7VAejrfbNyqGbSP3mkpuRU8kpwxePy7 sZcdaeORYCzSRnpKqUP7KbFsAo2AOI2jPQlrt36lxIXAiDhGJLpxp0oZgNgxhWTs+4O8 URWQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=g2RmYMP8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 6si6149907ilg.15.2021.05.31.09.54.04; Mon, 31 May 2021 09:54:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=g2RmYMP8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233734AbhEaQx2 (ORCPT + 99 others); Mon, 31 May 2021 12:53:28 -0400 Received: from mail.kernel.org ([198.145.29.99]:51182 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234424AbhEaO7c (ORCPT ); Mon, 31 May 2021 10:59:32 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 352246193F; Mon, 31 May 2021 14:01:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1622469693; bh=WEChJ6jb79usMwhfXxnCXY+Floj+im3Lq2Q0hut9XTw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=g2RmYMP8zYdTEhaTmKBPtv7d5lCGEzkR43c73GX4WmBkwk4/YeQKo3NAMEdY49V2H mjTn7xGco842FTysvl57d2aNQYrBmRYOXBjPFLqB//WfFpNBfnpVmxqYIWwdp4XF2v wp3XjLwxti7jilw11sFiiI6u3ueVllDN22RHhxC8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Alan Stern , Chunfeng Yun Subject: [PATCH 5.12 296/296] usb: core: reduce power-on-good delay time of root hub Date: Mon, 31 May 2021 15:15:51 +0200 Message-Id: <20210531130713.653728152@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210531130703.762129381@linuxfoundation.org> References: <20210531130703.762129381@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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,