Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1879886ybz; Thu, 30 Apr 2020 07:07:51 -0700 (PDT) X-Google-Smtp-Source: APiQypIlesvje6aIyWVRJocF0i/Gwrc6osxxdMSFBGIAxYSTttT5x3XH/aQ1DMd1sZuES3MFWJRy X-Received: by 2002:a17:906:a3da:: with SMTP id ca26mr2894104ejb.125.1588255670670; Thu, 30 Apr 2020 07:07:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588255670; cv=none; d=google.com; s=arc-20160816; b=DDbtOB/TCxaGFeWXYIlPg4ry2ae9LRBgUAFFeHUfD93GL9Eo4DCBoqSP80cPh+Sqed PpxUmJkePtgEh9vkh46BLg6A7MiCgtYiLhCKJZ4Z8t41akegCTivrTzu4AlSPx+IVVw/ esG0YInNC44hheylXsa+l/D8NYs94KL+/ktNTYrZa3N+jZxIRUaWJqYcI/4uwTUOtk7A 8WJP+M4RG9ORB/Q00TlsAmD+IkrKq8cMQIDdya6TFyeffZBN36USWSln6gfqkdRN/pzY DPOIlplYR5QRo2araE/RJilZi4iyMtXmzrJemuK9A0fYLkMV3XRriVYRqgEdz911yBfJ iEhQ== 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=ZnDMHrc3rvOzLa/Sur9PCEgHhWAWdRPrfCieFb+lUK0=; b=mkcULI2qrrwWnQghJhvApVvGlZAFVzOdc563RhMFCp4AH/eAzW3UMRzffjybJ+5NaV aBxgPUtWvixhoTQJ6ZoZ5nPk/XQru5fqZ/4HpiZzsO9vS7NbndD71tbFw4BsazhQ8Y5R HDOwTcz9p+zA7+rMgcnpcLGsXzXBuuYzNAiLC61sqqTLunsGp+/dZ98CPBWSUWNqVmJW wsUAmGhLuRLBD0iMVKIO6vaT2PWjBSxyg1NIGafIZElK2GAm8we37n7by/7/EwB7A6Mr bLAxSQDeZCV5ZFqMJAFAGAmh3hgwmxEY0PRg+kL+2fkdo3opuP0IbpvpJpqgfg+p/TV8 8AHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=D4vYjEcM; 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 y15si5748576ejp.5.2020.04.30.07.07.12; Thu, 30 Apr 2020 07:07:50 -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=D4vYjEcM; 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 S1728621AbgD3NxG (ORCPT + 99 others); Thu, 30 Apr 2020 09:53:06 -0400 Received: from mail.kernel.org ([198.145.29.99]:33848 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727054AbgD3Nwh (ORCPT ); Thu, 30 Apr 2020 09:52:37 -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 C157820870; Thu, 30 Apr 2020 13:52:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588254756; bh=QHdbclAjkFXrPIVSdW4YTECwXnQaBy0SXyVNNk1TTZs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=D4vYjEcMOpiI7zY02oJNYmd5ucOk2LHm5gz3jo4L1Nm58oIF25JY3PA5GA/kCCa+H 7SmYDEJvnfe70NH0+fGxzlp2qkpRrsiK/5AsbSXRkxNbZ0jPP03cFiyXEeaiDgvVdb beEOL8PXiVJXNFDUOp+tfOZJOFgVOj3ehZCbsHSE= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Thinh Nguyen , Thinh Nguyen , Felipe Balbi , Sasha Levin , linux-usb@vger.kernel.org, linux-omap@vger.kernel.org Subject: [PATCH AUTOSEL 5.4 15/57] usb: dwc3: gadget: Do link recovery for SS and SSP Date: Thu, 30 Apr 2020 09:51:36 -0400 Message-Id: <20200430135218.20372-15-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200430135218.20372-1-sashal@kernel.org> References: <20200430135218.20372-1-sashal@kernel.org> MIME-Version: 1.0 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: Thinh Nguyen [ Upstream commit d0550cd20e52558ecf6847a0f96ebd5d944c17e4 ] The controller always supports link recovery for device in SS and SSP. Remove the speed limit check. Also, when the device is in RESUME or RESET state, it means the controller received the resume/reset request. The driver must send the link recovery to acknowledge the request. They are valid states for the driver to send link recovery. Fixes: 72246da40f37 ("usb: Introduce DesignWare USB3 DRD Driver") Fixes: ee5cd41c9117 ("usb: dwc3: Update speed checks for SuperSpeedPlus") Signed-off-by: Thinh Nguyen Signed-off-by: Felipe Balbi Signed-off-by: Sasha Levin --- drivers/usb/dwc3/gadget.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 77c50d43df03b..3d30dec42c81a 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -1725,7 +1725,6 @@ static int __dwc3_gadget_wakeup(struct dwc3 *dwc) u32 reg; u8 link_state; - u8 speed; /* * According to the Databook Remote wakeup request should @@ -1735,16 +1734,13 @@ static int __dwc3_gadget_wakeup(struct dwc3 *dwc) */ reg = dwc3_readl(dwc->regs, DWC3_DSTS); - speed = reg & DWC3_DSTS_CONNECTSPD; - if ((speed == DWC3_DSTS_SUPERSPEED) || - (speed == DWC3_DSTS_SUPERSPEED_PLUS)) - return 0; - link_state = DWC3_DSTS_USBLNKST(reg); switch (link_state) { + case DWC3_LINK_STATE_RESET: case DWC3_LINK_STATE_RX_DET: /* in HS, means Early Suspend */ case DWC3_LINK_STATE_U3: /* in HS, means SUSPEND */ + case DWC3_LINK_STATE_RESUME: break; default: return -EINVAL; -- 2.20.1