From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DE7F514D719; Wed, 19 Jun 2024 13:29:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718803743; cv=none; b=La+fwBkt2I2qq1JAbJjHheKNXEcL4RGXVM6e4hi9d7QFSmirlqPX1QTTYpAg+SyNkT0sAV9Z2bSgw2IY8WCGHHVtUG5GqetvYLC+hO2DT+YtGX08KXeOjmmEuaDDDOdjiCYuA1Kv1oaVzzFJlm774SfB9p9MjX8rs4tB3kApLSM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718803743; c=relaxed/simple; bh=cMWA2zf90jtczZ3+ST91mEvBqW9ulioaLs+GFrJyax8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=APCA+1Ql87uflVmyNxHivhE1Zk9063a+D7DHX/iMJ5vxSAYPjU6S7BhBFOFm7LcFrgznniG0gCFyr2UMvapf0fB6hsQiMk4YjPTFBEzYMTC2v5yC+d8W2zIgvxKRZ3rujxEF9LdExm/j7o8C+Wn1nuvx//WgeB3/C4NetNugLGo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=aTANFRuM; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="aTANFRuM" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 61358C2BBFC; Wed, 19 Jun 2024 13:29:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1718803742; bh=cMWA2zf90jtczZ3+ST91mEvBqW9ulioaLs+GFrJyax8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=aTANFRuMcYcsTq1plMqU7rDhzL7s0Yuo69HNLQu6NjVFTzu2W9qfmIjpf9OPz4R+R bhxhWYuR5nEJM6KvGF5uH3sv6xvkwB/E2a+Tlds4zGRE440jb3WnLdYhBG+CJP5bd0 D2RHTTdenWHn0te64pu0ZobZYpPhEc+KqYbq3Ilk= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Kyle Tso , Heikki Krogerus Subject: [PATCH 6.1 088/217] usb: typec: tcpm: Ignore received Hard Reset in TOGGLING state Date: Wed, 19 Jun 2024 14:55:31 +0200 Message-ID: <20240619125600.085095231@linuxfoundation.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240619125556.491243678@linuxfoundation.org> References: <20240619125556.491243678@linuxfoundation.org> User-Agent: quilt/0.67 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.1-stable review patch. If anyone has any objections, please let me know. ------------------ From: Kyle Tso commit fc8fb9eea94d8f476e15f3a4a7addeb16b3b99d6 upstream. Similar to what fixed in Commit a6fe37f428c1 ("usb: typec: tcpm: Skip hard reset when in error recovery"), the handling of the received Hard Reset has to be skipped during TOGGLING state. [ 4086.021288] VBUS off [ 4086.021295] pending state change SNK_READY -> SNK_UNATTACHED @ 650 ms [rev2 NONE_AMS] [ 4086.022113] VBUS VSAFE0V [ 4086.022117] state change SNK_READY -> SNK_UNATTACHED [rev2 NONE_AMS] [ 4086.022447] VBUS off [ 4086.022450] state change SNK_UNATTACHED -> SNK_UNATTACHED [rev2 NONE_AMS] [ 4086.023060] VBUS VSAFE0V [ 4086.023064] state change SNK_UNATTACHED -> SNK_UNATTACHED [rev2 NONE_AMS] [ 4086.023070] disable BIST MODE TESTDATA [ 4086.023766] disable vbus discharge ret:0 [ 4086.023911] Setting usb_comm capable false [ 4086.028874] Setting voltage/current limit 0 mV 0 mA [ 4086.028888] polarity 0 [ 4086.030305] Requesting mux state 0, usb-role 0, orientation 0 [ 4086.033539] Start toggling [ 4086.038496] state change SNK_UNATTACHED -> TOGGLING [rev2 NONE_AMS] // This Hard Reset is unexpected [ 4086.038499] Received hard reset [ 4086.038501] state change TOGGLING -> HARD_RESET_START [rev2 HARD_RESET] Fixes: f0690a25a140 ("staging: typec: USB Type-C Port Manager (tcpm)") Cc: stable@vger.kernel.org Signed-off-by: Kyle Tso Reviewed-by: Heikki Krogerus Link: https://lore.kernel.org/r/20240520154858.1072347-1-kyletso@google.com Signed-off-by: Greg Kroah-Hartman --- drivers/usb/typec/tcpm/tcpm.c | 1 + 1 file changed, 1 insertion(+) --- a/drivers/usb/typec/tcpm/tcpm.c +++ b/drivers/usb/typec/tcpm/tcpm.c @@ -5448,6 +5448,7 @@ static void _tcpm_pd_hard_reset(struct t port->tcpc->set_bist_data(port->tcpc, false); switch (port->state) { + case TOGGLING: case ERROR_RECOVERY: case PORT_RESET: case PORT_RESET_WAIT_OFF: