Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp63774pxb; Fri, 9 Apr 2021 18:22:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxXkGaHtbUC9jJETnAYZvqLkqp7X01Z6jJZZWsz3BTzuzD8DiAg5DV34v0XNBHpAl1UZXMc X-Received: by 2002:a17:90b:1e0a:: with SMTP id pg10mr16622700pjb.129.1618017720425; Fri, 09 Apr 2021 18:22:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618017720; cv=none; d=google.com; s=arc-20160816; b=tD38q9VPUqvDJuC8aeX2zj2UswJxWKX7RLMeJf+qf+MV5bz4bMZIsGfKYMvYETuIX2 fxx1ZG+ju+zQz0azPPZhmM8xRolGNWT7ztAAtu+Tz6NGb7AmxBDvvASPkAGoakWXjmX0 5+0Upm0ShUrxjNNNUnQ8ZFzFRfXV8qpzno9ztik1iT0Kbqy8SS4t3XYsch2mfgazuJQv OsXijPmjJEytAX889awlX9rf3kPXMIGZT47y+N0cc/Dr9iwdqy3gZPrpiEGR165coV3x MY59L4QIq4M+WmgfMPdmt0Id2rq+8wEBZzMhyU2TlE7ePMQUmJf154PQU9/87w1vX8zl WQ1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from; bh=8X0RUpSjBxTr5YU2YwuvF2MGvnQsoh5tzEM935Wxsto=; b=E4VGh9JNclBe3Pvpj84bMHJg7MhCszYjofOOzeM1+Qc0pKYtbHnvopy+Q4rWXgbJSw RSsr1jeJvjPS+cbFP19GTmZ9gNZ0bZo1kgYLxpHZ/DZaOe0ZIAArwHL7FbMfVZsCzOYQ sFAuHvqB8ij6sQqzM7u0JH60ORNXDRbkFKxCvHMGMbJilrho61EyTLKR6KgR4cv8TNxv /9wfDfzyo1BrLfsCCgrzr6fdHUQcXkOht0T44WK2iC0YVSrv2yN4jpj22tF/BlHxlWWi ysoA+kc48WKE21kT9QcFpA1XpcZ2K/enyQnZioKgXVzwlbJrICN296aNCgArySeUg0oz oxhw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d197si4255671pga.196.2021.04.09.18.21.46; Fri, 09 Apr 2021 18:22:00 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235379AbhDJBV0 (ORCPT + 99 others); Fri, 9 Apr 2021 21:21:26 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:43271 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S235215AbhDJBVZ (ORCPT ); Fri, 9 Apr 2021 21:21:25 -0400 X-UUID: 0552d5ee4a19427dba5c0f3cce0da988-20210410 X-UUID: 0552d5ee4a19427dba5c0f3cce0da988-20210410 Received: from mtkcas06.mediatek.inc [(172.21.101.30)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.14 Build 0819 with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 786209695; Sat, 10 Apr 2021 09:21:07 +0800 Received: from mtkcas11.mediatek.inc (172.21.101.40) by mtkmbs06n1.mediatek.inc (172.21.101.129) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sat, 10 Apr 2021 09:21:06 +0800 Received: from localhost.localdomain (10.17.3.153) by mtkcas11.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Sat, 10 Apr 2021 09:21:05 +0800 From: Chunfeng Yun To: Greg Kroah-Hartman , Alan Stern CC: Matthias Brugger , Chunfeng Yun , Nishad Kamdar , , , , , Eddie Hung Subject: [PATCH v2] usb: core: reduce power-on-good delay time of root hub Date: Sat, 10 Apr 2021 09:20:45 +0800 Message-ID: <1618017645-12259-1-git-send-email-chunfeng.yun@mediatek.com> X-Mailer: git-send-email 1.8.1.1.dirty MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- v2: remove RFC tag, and add acked-by Alan --- drivers/usb/core/hub.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/usb/core/hub.h b/drivers/usb/core/hub.h index 73f4482d833a..22ea1f4f2d66 100644 --- a/drivers/usb/core/hub.h +++ b/drivers/usb/core/hub.h @@ -148,8 +148,10 @@ static inline unsigned hub_power_on_good_delay(struct usb_hub *hub) { 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, -- 2.18.0