Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp3015356ybt; Mon, 29 Jun 2020 12:59:26 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxK3sd7mM9TauNyfTMtSypd/KR1i6XQHOGbGDX2++BYuvd3o5sd7m418JFegcvJF2QsUKWa X-Received: by 2002:a05:6402:1250:: with SMTP id l16mr19798692edw.362.1593460766350; Mon, 29 Jun 2020 12:59:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593460766; cv=none; d=google.com; s=arc-20160816; b=vf2cGdRS8ebm2cgCBZ0CICrqixnjjHkAwxXo2+gnwpeQjk30TUVNOf7myjY80rp9C2 r1S9lnAxq6aEYAn/ksXuLzc34otXpcWofYvqyAo4gt5jy06ISnLbwJDdInEiyNPz0SQW utGEQQ3jYthiYpfipJd60oD8VHSZbCa85BXjury0x8qXo8Fxxzkr8cE38Ff1126gQRps VBg/KFuR5JBYzQC8MCZ7N6mKGLRh/76sshYV0db6Ac66iZuU+wvP29LZz/lN9EKK02Mn Q43BWP8h7KgsVt/crbxGnxEZ4pdKcppMgbOYgUBUjYiWPQmc8tjbJAxHcUujFcIdZ6H8 z6/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=eLVdt2BHN39kdit9Db4+ZZtDNXgzE2Nd/HYdnz6hgLo=; b=if1KetgdsSTZpiIGSMCizHScV1Lq0ZJRDZq2c9F1Q1uDiGDw9ZExlEwSVmdE15a6D6 pLAyJTAr3Hq3tO4ez7NmN6xDEV1n66B0HiycK81oNokP76aQc2pmMpTkY8kCHjLiZpSy tOODkFb34yPs1/Pp774Hu2knir8ShyLnbMAVRZS3bTxrhtVj3/GyLAoZNxGbWJCGam3F xo6piLJZKL33UnYs5TE0WIbCGyj7vuaVQTvZLBVGr6S3pAuCKswMstspIX9hTbfteby9 NGiR3rc3ufV/QpO1NXgLiN9f9oxRBkIJM9X+evxoYx9jz7R09fLp3w+wa7cug467WNhk ieuQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=utWAqH3o; 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=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k13si355762ejb.579.2020.06.29.12.59.02; Mon, 29 Jun 2020 12:59:26 -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=@kernel.org header.s=default header.b=utWAqH3o; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731877AbgF2T5w (ORCPT + 99 others); Mon, 29 Jun 2020 15:57:52 -0400 Received: from mail.kernel.org ([198.145.29.99]:47658 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387623AbgF2TkV (ORCPT ); Mon, 29 Jun 2020 15:40:21 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CB5C52487D; Mon, 29 Jun 2020 15:26:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1593444379; bh=0ojqZ3xSEL6DtPWJWKShNDGexKeRTIPRH9yGm9GLi8U=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=utWAqH3o3s2ijbdR3AoguaIoBDYiID+B0jNZbTcagb4SAtUDZH6uP1kSwCo12cB1n Nv4KDm46K+10dWJAg5FUkknbBLXq7GUh5AXiXjQ1b2Fv18gg3iQSWwgHfebppflBY8 nXrOan6l/Iw0R90LTYEImXzEGi0fkjrFZB5Kilyw= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kai-Heng Feng , Mathias Nyman , Greg Kroah-Hartman Subject: [PATCH 5.4 056/178] xhci: Return if xHCI doesn't support LPM Date: Mon, 29 Jun 2020 11:23:21 -0400 Message-Id: <20200629152523.2494198-57-sashal@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200629152523.2494198-1-sashal@kernel.org> References: <20200629152523.2494198-1-sashal@kernel.org> MIME-Version: 1.0 X-KernelTest-Patch: http://kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.50-rc1.gz X-KernelTest-Tree: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git X-KernelTest-Branch: linux-5.4.y X-KernelTest-Patches: git://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git X-KernelTest-Version: 5.4.50-rc1 X-KernelTest-Deadline: 2020-07-01T15:25+00:00 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Kai-Heng Feng commit f0c472a6da51f9fac15e80fe2fd9c83b68754cff upstream. Just return if xHCI is quirked to disable LPM. We can save some time from reading registers and doing spinlocks. Add stable tag as we want this patch together with the next one, "Poll for U0 after disabling USB2 LPM" which fixes a suspend issue for some USB2 LPM devices Cc: stable@vger.kernel.org Signed-off-by: Kai-Heng Feng Signed-off-by: Mathias Nyman Link: https://lore.kernel.org/r/20200624135949.22611-5-mathias.nyman@linux.intel.com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Greg Kroah-Hartman --- drivers/usb/host/xhci.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 13d2971c35445..11a65854d3f09 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -4391,6 +4391,9 @@ static int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd, int hird, exit_latency; int ret; + if (xhci->quirks & XHCI_HW_LPM_DISABLE) + return -EPERM; + if (hcd->speed >= HCD_USB3 || !xhci->hw_lpm_support || !udev->lpm_capable) return -EPERM; @@ -4413,7 +4416,7 @@ static int xhci_set_usb2_hardware_lpm(struct usb_hcd *hcd, xhci_dbg(xhci, "%s port %d USB2 hardware LPM\n", enable ? "enable" : "disable", port_num + 1); - if (enable && !(xhci->quirks & XHCI_HW_LPM_DISABLE)) { + if (enable) { /* Host supports BESL timeout instead of HIRD */ if (udev->usb2_hw_lpm_besl_capable) { /* if device doesn't have a preferred BESL value use a -- 2.25.1