From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id F0403C5CFC1 for ; Fri, 14 Aug 2026 03:57:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: References:In-Reply-To:Cc:To:Subject:From:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=hb+asU/SkerlaKXT0AUZL+YWkKjKOIdHCcSbFKwiuGI=; b=th3P4CcTju+3QQ sjrvbLsxT7dlcewVNoei6IfhMK2Um3itvhmjyB42fln1WuwoyqO/XC/L8+Pdz+Fs6wF7ZGFQr1cxK T21b9FY/OsbwOv+qvu/GIuSmXqhtBEekSmR0ci9ZCBiOP4GSD7lXuWUtRZB5fNNBkvkrYjNjVuP0z PwSlKYzkizNZZ+B10LXzPTt3StV7q5MzoQhmAqDpRGU1vuKgFX3MOFQfafC5nWLW3nFMYnYVNHBmx Zigy5dlzA19in8lhslDPL2QflLqJCIF/5Sw29M8X1MBAZMRwAQYei54OGbkKKf8iu+wfhlqWKCg2z iNRHu4TDDKGsW8qIhcZA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wuj3N-00000001vBb-0mis; Fri, 14 Aug 2026 03:57:57 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wuj3M-00000001vBV-1BsE for linux-phy@lists.infradead.org; Fri, 14 Aug 2026 03:57:56 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 4D018601DE; Fri, 14 Aug 2026 03:57:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9B9F91F000E9; Fri, 14 Aug 2026 03:57:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1786679875; bh=6ON5mIt7Is6oZwpsbZ6ExbGPRA+cK+XyojDc4+eYXXw=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=nYWu9VBhUPnMF84np4azvhqPstk9/3p9sOcsq/BuBRmGoCZAdWJeINtf+kNyTDMHI Q3sSxexrUxGCIZS7eKjKTeuM30aWqJBVFphZkSYHhAwVNZAn7KYrhWWb8D+EnUctEE ZJLPu9dLcOSNA6F29v5EaBgjUn7D1qzk5L88MBdSeSaCajnW3bIEsgJo2/LCmSM19F cMioH2xgVwcLXOpF6PrC84/oRIyEIUaF+KaR5CI4yiJ984FRsV4KoZlP2FmfZSiJ2N ctPu6pZAkIGMOBBJ32a/sFA4FD3WH5xWG5KyQGrC7IuskYKV5d/0zjrGP6mvOMj2hX UirNYTDY5YPpg== From: sashiko-bot@kernel.org Subject: Re: [PATCH v14 19/38] phy: rockchip: usbdp: Re-init the PHY on orientation change To: "Sebastian Reichel" Cc: devicetree@vger.kernel.org, linux-phy@lists.infradead.org, robh@kernel.org, neil.armstrong@linaro.org, vkoul@kernel.org, olteanv@gmail.com, conor+dt@kernel.org In-Reply-To: <20260813-rockchip-usbdp-cleanup-v14-19-b5ad9c68fa11@collabora.com> References: <20260813-rockchip-usbdp-cleanup-v14-0-b5ad9c68fa11@collabora.com> <20260813-rockchip-usbdp-cleanup-v14-19-b5ad9c68fa11@collabora.com> Date: Fri, 14 Aug 2026 03:57:48 +0000 Message-Id: <20260814035752.9B9F91F000E9@smtp.kernel.org> X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: sashiko-reviews@lists.linux.dev MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg MiBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpQcmUtZXhpc3RpbmcgaXNzdWVzOgot IFtIaWdoXSBNaXNzaW5nIGhhcmR3YXJlIHJlLWluaXRpYWxpemF0aW9uIGZvciBhY3RpdmUgVVNC IGNvbm5lY3Rpb25zIHVwb24gb3JpZW50YXRpb24gc3dhcC4KLSBbSGlnaF0gRGF0YSByYWNlIGlu IGBya191ZHBoeV9kcF9waHlfY29uZmlndXJlYCBkdWUgdG8gbWlzc2luZyBgdWRwaHktPm11dGV4 YCBhY3F1aXNpdGlvbi4KLS0KCi0tLSBQYXRjaCBbMTldOiBbUEFUQ0ggdjE0IDE5LzM4XSBwaHk6 IHJvY2tjaGlwOiB1c2JkcDogUmUtaW5pdCB0aGUgUEhZIG9uIG9yaWVudGF0aW9uIGNoYW5nZSAt LS0KY29tbWl0IGM1N2RmN2Y1NmVlZmJhNzk0NjhlOGI3MGMwY2NjMDFjMDkwZTExNmQKQXV0aG9y OiBTZWJhc3RpYW4gUmVpY2hlbCA8c2ViYXN0aWFuLnJlaWNoZWxAY29sbGFib3JhLmNvbT4KCnBo eTogcm9ja2NoaXA6IHVzYmRwOiBSZS1pbml0IHRoZSBQSFkgb24gb3JpZW50YXRpb24gY2hhbmdl CgpUaGlzIGNvbW1pdCBhZGRyZXNzZXMgRGlzcGxheVBvcnQgZnVuY3Rpb25hbGl0eSBicmVha2lu ZyB1cG9uIGNhYmxlCnJlLXBsdWdnaW5nIHdpdGggc3dhcHBlZCBvcmllbnRhdGlvbi4gSXQgdHJh Y2tzIHRoZSBvcmllbnRhdGlvbiBmbGlwIGFuZApzZXRzIGEgZmxhZyB0byB0cmlnZ2VyIFBIWSBy ZS1pbml0aWFsaXphdGlvbi4KCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L3JvY2tjaGlwL3Bo eS1yb2NrY2hpcC11c2JkcC5jIGIvZHJpdmVycy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVz YmRwLmMKPiBpbmRleCBlNDRkMTljOWQxMTkzLi40YjQ1NDc5OGM0ZWQ0IDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvcGh5L3JvY2tjaGlwL3BoeS1yb2NrY2hpcC11c2JkcC5jCj4gKysrIGIvZHJpdmVy cy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVzYmRwLmMKClsgLi4uIF0KCj4gQEAgLTYzMSw3 ICs2MzIsMTAgQEAgc3RhdGljIGludCBya191ZHBoeV9vcmllbl9zd19zZXQoc3RydWN0IHR5cGVj X3N3aXRjaF9kZXYgKnN3LAo+ICAJCWdvdG8gdW5sb2NrX3JldDsKPiAgCX0KPiAgCj4gLQl1ZHBo eS0+ZmxpcCA9IG9yaWVuID09IFRZUEVDX09SSUVOVEFUSU9OX1JFVkVSU0U7Cj4gKwlpZiAodWRw aHktPmZsaXAgIT0gZmxpcHBlZCkKPiArCQl1ZHBoeS0+cGh5X25lZWRzX3JlaW5pdCA9IHRydWU7 CgpbU2V2ZXJpdHk6IEhpZ2hdClRoaXMgaXMgYSBwcmUtZXhpc3RpbmcgaXNzdWUsIGJ1dCBkb2Vz IHNldHRpbmcgdGhpcyBmbGFnIGFjdHVhbGx5CnJlLWluaXRpYWxpemUgdGhlIGhhcmR3YXJlIHN5 bmNocm9ub3VzbHkgaWYgdGhlIFVTQiBQSFkgaXMgYWxyZWFkeSBhY3RpdmU/CgpJZiBhIHB1cmUg VVNCIDMuMCBUeXBlLUMgZGV2aWNlIGlzIHBsdWdnZWQgaW4gYSBmbGlwcGVkIG9yaWVudGF0aW9u LCB0aGUKVHlwZS1DIHN1YnN5c3RlbSBjYWxscyBya191ZHBoeV9vcmllbl9zd19zZXQoKSB3aGlj aCBkZWZlcnMgdGhlIHN0YXRlIHZpYQpwaHlfbmVlZHNfcmVpbml0LgoKU2luY2UgVVNCIGNvbnRy b2xsZXJzIGxpa2UgRFdDMyBkbyBub3QgdHlwaWNhbGx5IHBvd2VyLWN5Y2xlIHRoZSBQSFkgb24K b3JpZW50YXRpb24gY2hhbmdlcywgd29uJ3QgdGhlIGhhcmR3YXJlIHJlbWFpbiBpbiB0aGUgcHJl dmlvdXMgb3JpZW50YXRpb24sCmNhdXNpbmcgU3VwZXJTcGVlZCBVU0IgY29ubmVjdGlvbnMgdG8g c2lsZW50bHkgZmFpbCBhbmQgZmFsbCBiYWNrIHRvIFVTQiAyLjA/Cgo+ICsKPiArCXVkcGh5LT5m bGlwID0gZmxpcHBlZDsKPiAgCXJrX3VkcGh5X3NldF90eXBlY19kZWZhdWx0X21hcHBpbmcodWRw aHkpOwo+ICAJcmtfdWRwaHlfdXNiX2J2YWxpZF9lbmFibGUodWRwaHksIHRydWUpOwo+ICAKCkFk ZGl0aW9uYWxseSwgd2hpbGUgcmV2aWV3aW5nIHRoaXMgZmlsZSwgSSBub3RpY2VkIGFub3RoZXIg cHJlLWV4aXN0aW5nCmlzc3VlIHJlZ2FyZGluZyBjb25jdXJyZW5jeToKCltTZXZlcml0eTogSGln aF0KVGhpcyBpc24ndCBhIGJ1ZyBpbnRyb2R1Y2VkIGJ5IHRoaXMgcGF0Y2gsIGJ1dCBkb2VzCnJr X3VkcGh5X2RwX3BoeV9jb25maWd1cmUoKSByYWNlIHdpdGggVHlwZS1DIGV2ZW50cz8KClRoZSBE UCBjb250cm9sbGVyIGRyaXZlciBjYWxscyBwaHlfY29uZmlndXJlKCkgd2hpY2ggZXhlY3V0ZXMK cmtfdWRwaHlfZHBfcGh5X2NvbmZpZ3VyZSgpIGhvbGRpbmcgb25seSB0aGUgZ2VuZXJpYyBwaHkt Pm11dGV4OgoKZHJpdmVycy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVzYmRwLmM6cmtfdWRw aHlfZHBfcGh5X2NvbmZpZ3VyZSgpIHsKICAgICAgICBzdHJ1Y3QgcmtfdWRwaHkgKnVkcGh5ID0g cGh5X2dldF9kcnZkYXRhKHBoeSk7CiAgICAgICAgLi4uCn0KCkNvbmN1cnJlbnRseSwgVHlwZS1D IGV2ZW50cyBsaWtlIHVucGx1ZyBvciBvcmllbnRhdGlvbiBzd2FwIHRyaWdnZXIKcmtfdWRwaHlf b3JpZW5fc3dfc2V0KCkgb3IgcmtfdWRwaHlfdHlwZWNfbXV4X3NldCgpLCB3aGljaCBtb2RpZnkg c2hhcmVkCnN0YXRlICh1ZHBoeS0+ZHBfbGFuZV9zZWwsIHVkcGh5LT5sYW5lX211eF9zZWwsIGFu ZCB1ZHBoeS0+ZHBfbGFuZXMpIHdoaWxlCmhvbGRpbmcgdWRwaHktPm11dGV4LgoKQmVjYXVzZSBy a191ZHBoeV9kcF9waHlfY29uZmlndXJlKCkgYWNjZXNzZXMgYW5kIHdyaXRlcyB0byB0aGlzIHNo YXJlZApoYXJkd2FyZSBzdGF0ZSB3aXRob3V0IGFjcXVpcmluZyB1ZHBoeS0+bXV0ZXgsIGNhbiB0 aGUgRGlzcGxheVBvcnQgUEhZIGJlCnByb2dyYW1tZWQgd2l0aCBpbmNvbnNpc3RlbnQgbGFuZSBh c3NpZ25tZW50cyBpZiBhIFR5cGUtQyB1bnBsdWcgb3IKb3JpZW50YXRpb24gZXZlbnQgb2NjdXJz IGR1cmluZyBEaXNwbGF5UG9ydCBsaW5rIHRyYWluaW5nPwoKLS0gClNhc2hpa28gQUkgcmV2aWV3 IMK3IGh0dHBzOi8vc2FzaGlrby5kZXYvIy9wYXRjaHNldC8yMDI2MDgxMy1yb2NrY2hpcC11c2Jk cC1jbGVhbnVwLXYxNC0wLWI1YWQ5YzY4ZmExMUBjb2xsYWJvcmEuY29tP3BhcnQ9MTkKCi0tIAps aW51eC1waHkgbWFpbGluZyBsaXN0CmxpbnV4LXBoeUBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHBz Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXBoeQo= From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 5AE2835E944 for ; Fri, 14 Aug 2026 03:57:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786679876; cv=none; b=uZZsjy7P14KBQI1nW3Rz2/NdmOeqJBYkdTPue+nfSmEyJNjpCTZzLvjurp2MV6Ka6KZqBDlWBo1/N9HKTy1qceF3RJLkeALlWdcipcITLtG0++hGkphOkcrKPYk3Ujd8auBRHAU69o14oWe308ddmULKrsn0axdbZjjkSbAYqI8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786679876; c=relaxed/simple; bh=XUdOIJVwFmqATchMnmkNPs/TRAozTpopVr5H9ZiMTas=; h=From:Subject:To:Cc:In-Reply-To:References:Content-Type:Date: Message-Id; b=t9X1vtfN5NeN9S2D+vtBA5sG87xZnKOPSofo9ZGhnL97lJtaR04zoaUmCjlcqhVW4lHBmi6LSfK+2EG2H1+ePxmOXI8mb5d1b1pmw8qURAC4NWj9Z60lRP2KPHVvCeIthYcKRjlFFaYskIwj5OZK8HR8l//Z/h8kGotv94bWc+U= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=nYWu9VBh; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="nYWu9VBh" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9B9F91F000E9; Fri, 14 Aug 2026 03:57:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1786679875; bh=6ON5mIt7Is6oZwpsbZ6ExbGPRA+cK+XyojDc4+eYXXw=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=nYWu9VBhUPnMF84np4azvhqPstk9/3p9sOcsq/BuBRmGoCZAdWJeINtf+kNyTDMHI Q3sSxexrUxGCIZS7eKjKTeuM30aWqJBVFphZkSYHhAwVNZAn7KYrhWWb8D+EnUctEE ZJLPu9dLcOSNA6F29v5EaBgjUn7D1qzk5L88MBdSeSaCajnW3bIEsgJo2/LCmSM19F cMioH2xgVwcLXOpF6PrC84/oRIyEIUaF+KaR5CI4yiJ984FRsV4KoZlP2FmfZSiJ2N ctPu6pZAkIGMOBBJ32a/sFA4FD3WH5xWG5KyQGrC7IuskYKV5d/0zjrGP6mvOMj2hX UirNYTDY5YPpg== From: sashiko-bot@kernel.org Subject: Re: [PATCH v14 19/38] phy: rockchip: usbdp: Re-init the PHY on orientation change Reply-To: sashiko-reviews@lists.linux.dev To: "Sebastian Reichel" Cc: devicetree@vger.kernel.org, linux-phy@lists.infradead.org, robh@kernel.org, neil.armstrong@linaro.org, vkoul@kernel.org, olteanv@gmail.com, conor+dt@kernel.org In-Reply-To: <20260813-rockchip-usbdp-cleanup-v14-19-b5ad9c68fa11@collabora.com> References: <20260813-rockchip-usbdp-cleanup-v14-0-b5ad9c68fa11@collabora.com> <20260813-rockchip-usbdp-cleanup-v14-19-b5ad9c68fa11@collabora.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Fri, 14 Aug 2026 03:57:48 +0000 Message-Id: <20260814035752.9B9F91F000E9@smtp.kernel.org> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Thank you for your contribution! Sashiko AI review found 2 potential issue(= s) to consider: Pre-existing issues: - [High] Missing hardware re-initialization for active USB connections upon= orientation swap. - [High] Data race in `rk_udphy_dp_phy_configure` due to missing `udphy->mu= tex` acquisition. -- --- Patch [19]: [PATCH v14 19/38] phy: rockchip: usbdp: Re-init the PHY on = orientation change --- commit c57df7f56eefba79468e8b70c0ccc01c090e116d Author: Sebastian Reichel phy: rockchip: usbdp: Re-init the PHY on orientation change This commit addresses DisplayPort functionality breaking upon cable re-plugging with swapped orientation. It tracks the orientation flip and sets a flag to trigger PHY re-initialization. > diff --git a/drivers/phy/rockchip/phy-rockchip-usbdp.c b/drivers/phy/rock= chip/phy-rockchip-usbdp.c > index e44d19c9d1193..4b454798c4ed4 100644 > --- a/drivers/phy/rockchip/phy-rockchip-usbdp.c > +++ b/drivers/phy/rockchip/phy-rockchip-usbdp.c [ ... ] > @@ -631,7 +632,10 @@ static int rk_udphy_orien_sw_set(struct typec_switch= _dev *sw, > goto unlock_ret; > } > =20 > - udphy->flip =3D orien =3D=3D TYPEC_ORIENTATION_REVERSE; > + if (udphy->flip !=3D flipped) > + udphy->phy_needs_reinit =3D true; [Severity: High] This is a pre-existing issue, but does setting this flag actually re-initialize the hardware synchronously if the USB PHY is already active? If a pure USB 3.0 Type-C device is plugged in a flipped orientation, the Type-C subsystem calls rk_udphy_orien_sw_set() which defers the state via phy_needs_reinit. Since USB controllers like DWC3 do not typically power-cycle the PHY on orientation changes, won't the hardware remain in the previous orientation, causing SuperSpeed USB connections to silently fail and fall back to USB 2.= 0? > + > + udphy->flip =3D flipped; > rk_udphy_set_typec_default_mapping(udphy); > rk_udphy_usb_bvalid_enable(udphy, true); > =20 Additionally, while reviewing this file, I noticed another pre-existing issue regarding concurrency: [Severity: High] This isn't a bug introduced by this patch, but does rk_udphy_dp_phy_configure() race with Type-C events? The DP controller driver calls phy_configure() which executes rk_udphy_dp_phy_configure() holding only the generic phy->mutex: drivers/phy/rockchip/phy-rockchip-usbdp.c:rk_udphy_dp_phy_configure() { struct rk_udphy *udphy =3D phy_get_drvdata(phy); ... } Concurrently, Type-C events like unplug or orientation swap trigger rk_udphy_orien_sw_set() or rk_udphy_typec_mux_set(), which modify shared state (udphy->dp_lane_sel, udphy->lane_mux_sel, and udphy->dp_lanes) while holding udphy->mutex. Because rk_udphy_dp_phy_configure() accesses and writes to this shared hardware state without acquiring udphy->mutex, can the DisplayPort PHY be programmed with inconsistent lane assignments if a Type-C unplug or orientation event occurs during DisplayPort link training? --=20 Sashiko AI review =C2=B7 https://sashiko.dev/#/patchset/20260813-rockchip-u= sbdp-cleanup-v14-0-b5ad9c68fa11@collabora.com?part=3D19