Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2641700pxj; Mon, 31 May 2021 07:12:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzXYkrzfnVwdRbSrr1wQkCBCDb9RrpFJF7bDGnVVGhJsLbo7V3joapOL8OsbZAJgEATIaHL X-Received: by 2002:a02:384b:: with SMTP id v11mr7621178jae.90.1622470361660; Mon, 31 May 2021 07:12:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622470361; cv=none; d=google.com; s=arc-20160816; b=FV368s6OKqIG3EmhDRLx0lkF7AcvVUnyZwxcjcH42ZSx973FB5uQQf090Kx6eeokAf 6qiNW9zauwXbwESK8VdPsj9H6hDvB6yc6Kn3Gx2GaLtJ/ndN2A0mIVCtRDCgt1fCf4Aw 2+tBr91th2U/22a62hnBED4K8140vS4I5gWgOKqp/3IrvrRDyt3H5YoTrt+s94onUB+Y wz0kxRrEp9Unmcenx9KEhfbq5JQGFO1IL/WanIhrjdhoskc7F04JjtXvtnb5nfo7JMsf lbV+xkeHn8mJcX5BiIZDpRRLtUlAs4ZkJKDwsggkOUR6B37pLtpYUhMqF6QWd8uq+sUL BLjQ== 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=E8lp/UC7dFn0ufeQixZllW2y5LGP2jbPCDpgICQAF30=; b=xpJxv/ZzeZCYdZPeTayBhM+eNO4hBtClID5L/wHBlOTwy0MxaQDuOQXw8UyqpXMBum hHE0MuLCEo7HbnKQTC/RqwzTd178KG//qSLPVO62TQMrAUyPUPzYvgw/0WfIn8t5aUgM KsutMMSg7SFqCX+KaNz3z2lBQlDH0UOonzZc8W+uTQrSvoN1f2a4WP9Hm8+fbxpfPxb8 8nZm0y2CJ/5D+vfcrX1vUY8U+lLgkPZrZvWwjIY8ThOnMPxlHIrk42Rv4MSLsaCLE11L shFRMB1AOMjZWQyIFxrq4aD942Ix42+jEWMLDpdcgM0MeH9xnu83xXc/3mhsfcVO+VqE T1Kw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="sUUjB/AE"; 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 x18si12997463iol.35.2021.05.31.07.12.28; Mon, 31 May 2021 07:12:41 -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="sUUjB/AE"; 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 S233436AbhEaOM6 (ORCPT + 99 others); Mon, 31 May 2021 10:12:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:50374 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232707AbhEaNpt (ORCPT ); Mon, 31 May 2021 09:45:49 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id B53BE613F1; Mon, 31 May 2021 13:30:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1622467803; bh=rf7cPGlsr9r9IO8aorgESSi4+8J3E7tJY5mVpyKmSEU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=sUUjB/AEn8jve2LVXmmLtkGaS/ShZApcx6DZuR8Dc5Z2NSgEABRlah8vsCwSb+DIU eL/Cy+Jxcto+duADvv3de2l9CNKQOVC7XROvCUmPyoUUpbZL+etR9sZ5Zeur1723+I GdsBM7F7q9RIQeviCxKg0+IvWvOEkjlc+zVrmDVA= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Alan Stern , Chunfeng Yun Subject: [PATCH 4.14 79/79] usb: core: reduce power-on-good delay time of root hub Date: Mon, 31 May 2021 15:15:04 +0200 Message-Id: <20210531130638.527025575@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210531130636.002722319@linuxfoundation.org> References: <20210531130636.002722319@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 @@ -152,8 +152,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,