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 AB733C43458 for ; Sat, 4 Jul 2026 00:01:34 +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=KvEPMJu6Ko3o6VqOXg3dtrQZsBYyDwN/x8ybBtiq21k=; b=IIQJyAwYAe8vvp A6XHfQBCjPHEoFKzHoA6Uxacay1S9DlWjBoUa7v7+4J26RVlsowRN4gR8O5guH1IAUodAJuc71Wrs nUEWOfxTZzLCtUn2oGwmXZ39/S9frMboYqBq9dRYxxV9LxPf9bdnR6b0b4t2xaZBbhPkREf2cU3DE sOx9DmQ0+a79ixGG/0a3TZiOxazrjgtaYwqEMJBu7xVUiSQEOAscxEo94YES4j8kuAVglb3FH+Bi5 tDqNAsa7b1iaHSwIyO0GA27d+8N8v4AxYtoisPTstM+eDaBnIoRmJltH9IqqbKccMSDJUIIo8Lumf 2YhFkRTUdDWj4ZQg5+SA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wfnp8-0000000829R-0fOL; Sat, 04 Jul 2026 00:01:34 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wfnp7-0000000829L-2yL3 for linux-phy@lists.infradead.org; Sat, 04 Jul 2026 00:01:33 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 2B3D741858; Sat, 4 Jul 2026 00:01:33 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B72D91F000E9; Sat, 4 Jul 2026 00:01:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783123293; bh=4mSV+jyu93ebGylRRemEboIhGJgcsyEcBLUInNIbHf4=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=hyIFlHzY5llRnD+8Glf5pTX32zEBt3C4FvAVGGaLVEa8MGgi0ZoQ0AOwK9STqaZ9Z K4PEncVPWFlak5kcskjDOaRffa62QJOu1u+onMH4zwjDl426lNZkISkR2szUATOqGm CFvQsr4bJg2/iB5fDel/nWrvhol2B0S7lN4xvXhqOgB9Y/2hcrvY9ngKe2pMlTjwWa WwK1deVJe0nZESeXt5LZd6SnjNAUv9n1MJF/GCvumJ0gLR1EcK/vRmi9YGHWJyHkoC 5LDe+iJMT45Y/dNlwPnOeqEjfHQED2IM8catRQNd3jBl4dvFbupFw3uL3AZP28I9EL vPUYgU0goOLiA== From: sashiko-bot@kernel.org Subject: Re: [PATCH v10 36/36] phy: rockchip: usbdp: Add USB-C state without DP enabled To: "Sebastian Reichel" Cc: devicetree@vger.kernel.org, robh@kernel.org, vkoul@kernel.org, neil.armstrong@linaro.org, olteanv@gmail.com, linux-phy@lists.infradead.org, conor+dt@kernel.org In-Reply-To: <20260703-rockchip-usbdp-cleanup-v10-36-a392711ca8a9@collabora.com> References: <20260703-rockchip-usbdp-cleanup-v10-0-a392711ca8a9@collabora.com> <20260703-rockchip-usbdp-cleanup-v10-36-a392711ca8a9@collabora.com> Date: Sat, 04 Jul 2026 00:01:32 +0000 Message-Id: <20260704000132.B72D91F000E9@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 MyBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpOZXcgaXNzdWVzOgotIFtIaWdoXSBF YXJseSByZXR1cm4gaW4gYHJrX3VkcGh5X21vZGVfc2V0YCBwcmV2ZW50cyBgbGFuZV9tdXhfc2Vs YCBmcm9tIGJlaW5nIHVwZGF0ZWQgd2hlbiBvbmx5IHRoZSBjYWJsZSBvcmllbnRhdGlvbiBjaGFu Z2VzLgotIFtNZWRpdW1dIE1hcHBpbmcgYFRZUEVDX1NUQVRFX1VTQmAgdG8gYFVEUEhZX01PREVf VVNCYCBjYXVzZXMgUEhZIHJlc2V0cyBhbmQgVVNCIGRpc2Nvbm5lY3Rpb25zIGR1cmluZyBEUCBB bHQgTW9kZSBlbnRyeS4KClByZS1leGlzdGluZyBpc3N1ZXM6Ci0gW0hpZ2hdIERldnJlcyByZWdp c3RyYXRpb24gb3JkZXJpbmcgY2F1c2VzIGEgVXNlLUFmdGVyLUZyZWUgb2YgYHBoeV91M2AgZHVy aW5nIHVuYmluZC4KLS0KCmNvbW1pdCAwNTQ4NzBmNTEyNTljYWFhMjk5NzU4YWRjNzE1NDhmYTli ZjcxMTU5CkF1dGhvcjogU2ViYXN0aWFuIFJlaWNoZWwgPHNlYmFzdGlhbi5yZWljaGVsQGNvbGxh Ym9yYS5jb20+CgpwaHk6IHJvY2tjaGlwOiB1c2JkcDogQWRkIFVTQi1DIHN0YXRlIHdpdGhvdXQg RFAgZW5hYmxlZAoKVGhpcyBjb21taXQgYWRkcyBhIHNlcGFyYXRlIHN0YXRlIGZvciBVU0Itb25s eSBtb2RlIHdpdGhvdXQgRGlzcGxheVBvcnQgZW5hYmxlZAp0byBpbXByb3ZlIHBvd2VyIG1hbmFn ZW1lbnQuIEl0IHNwbGl0cyB0aGUgcHJldmlvdXMgRFAgKyBVU0IzIGNvbWJpbmVkIG1vZGUKd2hl biBEUCBBbHRNb2RlIGlzIG5vdCBwcmVzZW50LgoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9waHkv cm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVzYmRwLmMgYi9kcml2ZXJzL3BoeS9yb2NrY2hpcC9waHkt cm9ja2NoaXAtdXNiZHAuYwo+IC0tLSBhL2RyaXZlcnMvcGh5L3JvY2tjaGlwL3BoeS1yb2NrY2hp cC11c2JkcC5jCj4gKysrIGIvZHJpdmVycy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVzYmRw LmMKPiBAQCAtNjE3LDEyICs1OTksNDAgQEAgc3RhdGljIHZvaWQgcmtfdWRwaHlfc2V0X3R5cGVj X3N0YXRlKHN0cnVjdCBya191ZHBoeSAqdWRwaHksIHVuc2lnbmVkIGxvbmcgc3RhdGUKPiAgCQkJ dWRwaHktPmxhbmVfbXV4X3NlbFsyXSA9IFBIWV9MQU5FX01VWF9EUDsKPiAgCQkJdWRwaHktPmxh bmVfbXV4X3NlbFszXSA9IFBIWV9MQU5FX01VWF9EUDsKPiAgCQl9Cj4gLQkJaHdfbW9kZSA9IFVE UEhZX01PREVfRFBfVVNCOwo+IC0JCXVkcGh5LT5kcF9sYW5lcyA9IDI7Cj4gKwl9Cj4gK30KPiAr Cj4gK3N0YXRpYyB2b2lkIHJrX3VkcGh5X21vZGVfc2V0KHN0cnVjdCBya191ZHBoeSAqdWRwaHks IHU4IGh3X21vZGUsIHU4IGRwX2xhbmVzKQo+ICt7Cj4gKwlpZiAodWRwaHktPmh3X21vZGUgPT0g aHdfbW9kZSAmJiB1ZHBoeS0+ZHBfbGFuZXMgPT0gZHBfbGFuZXMpCj4gKwkJcmV0dXJuOwoKW1Nl dmVyaXR5OiBIaWdoXQpEb2VzIHRoaXMgZWFybHkgcmV0dXJuIHByZXZlbnQgdXBkYXRpbmcgdGhl IGxhbmUgbXV4IGlmIG9ubHkgdGhlIGNhYmxlCm9yaWVudGF0aW9uIGNoYW5nZXM/CgpJZiBhIGNh YmxlIGlzIHBoeXNpY2FsbHkgZmxpcHBlZCwgdGhlIGNvZGUgdXBkYXRlcyB1ZHBoeS0+ZmxpcCBh bmQgY2FsbHMKcmtfdWRwaHlfc2V0X3R5cGVjX2RlZmF1bHRfbWFwcGluZygpLCB3aGljaCB0aGVu IHNldHMgdGhlIHN0YXRlIHRvClRZUEVDX0RQX1NUQVRFX0QuCgpJZiB0aGUgUEhZIHdhcyBhbHJl YWR5IGluIFVEUEhZX01PREVfRFBfVVNCIHdpdGggMiBEUCBsYW5lcywgdGhpcyBjaGVjawpjYXVz ZXMgYW4gZWFybHkgcmV0dXJuLCBza2lwcGluZyB0aGUgbmV3bHkgbW92ZWQgcmtfdWRwaHlfc2V0 X2xhbmVfbXV4KCkKY2FsbCBiZWxvdy4gVGhpcyB3b3VsZCBsZWF2ZSBzdGFsZSBpbnZlcnRlZCBs YW5lIGFzc2lnbm1lbnRzIHdoZW4KcmtfdWRwaHlfaW5pdCgpIHN1YnNlcXVlbnRseSBjb25maWd1 cmVzIHRoZSBoYXJkd2FyZS4KCj4gKwo+ICsJdWRwaHktPnBoeV9uZWVkc19yZWluaXQgPSB0cnVl Owo+ICsJdWRwaHktPmh3X21vZGUgPSBod19tb2RlOwo+ICsJdWRwaHktPmRwX2xhbmVzID0gZHBf bGFuZXM7Cj4gKwo+ICsJcmtfdWRwaHlfc2V0X2xhbmVfbXV4KHVkcGh5KTsKPiArfQo+ICsKPiAr c3RhdGljIHZvaWQgcmtfdWRwaHlfc2V0X3R5cGVjX3N0YXRlKHN0cnVjdCBya191ZHBoeSAqdWRw aHksIHVuc2lnbmVkIGxvbmcgc3RhdGUpCj4gK3sKPiArCXN3aXRjaCAoc3RhdGUpIHsKPiBbIC4u LiBdCj4gKwljYXNlIFRZUEVDX1NUQVRFX1NBRkU6Cj4gKwljYXNlIFRZUEVDX1NUQVRFX1VTQjoK PiArCWRlZmF1bHQ6Cj4gKwkJcmtfdWRwaHlfbW9kZV9zZXQodWRwaHksIFVEUEhZX01PREVfVVNC LCAwKTsKPiArCQlicmVhazsKCltTZXZlcml0eTogTWVkaXVtXQpXaWxsIG1hcHBpbmcgdGhpcyBp bnRlcm1lZGlhdGUgc3RhdGUgdG8gVVNCLW9ubHkgZm9yY2UgYSBkaXNydXB0aXZlIGhhcmR3YXJl Cm1vZGUgY2hhbmdlIHdoZW4gdHJhbnNpdGlvbmluZyB0byBEUCBBbHQgTW9kZT8KClR5cGUtQyBw b3J0IG1hbmFnZXJzIHR5cGljYWxseSByZXF1ZXN0IFRZUEVDX1NUQVRFX1VTQiB1cG9uIGNvbm5l Y3Rpb24uClNldHRpbmcgdGhpcyB0byBVRFBIWV9NT0RFX1VTQiBjb25maWd1cmVzIDAgRFAgbGFu ZXMuCgpXaGVuIERQIEFsdCBNb2RlIHN1Y2Nlc3NmdWxseSBuZWdvdGlhdGVzIHNob3J0bHkgYWZ0 ZXIgYW5kIHRyYW5zaXRpb25zIHRvClRZUEVDX0RQX1NUQVRFX0QsIGh3X21vZGUgY2hhbmdlcyB0 byBVRFBIWV9NT0RFX0RQX1VTQi4gVGhpcyB0cmlnZ2VycyBhCmZ1bGwgUEhZIHJlc2V0IGluIHJr X3VkcGh5X3VwZGF0ZV9wb3dlcl9zdGF0ZSgpIGFuZCBpbnRlcnJ1cHRzIGFjdGl2ZQpVU0IgdHJh bnNmZXJzLgoKVGhlIGNvbW1pdCBtZXNzYWdlIG1lbnRpb25zIGtlZXBpbmcgYWxsIFBIWSBwYXJ0 cyBwb3dlcmVkIHVwIHRvIGF2b2lkIGRhdGEKc3RyZWFtIGludGVycnVwdGlvbnMsIGJ1dCBjb3Vs ZCB0aGlzIGludGVybWVkaWF0ZSBzdGF0ZSBtYXBwaW5nIG5lZ2F0ZSB0aGF0CmJlbmVmaXQgZHVy aW5nIGluaXRpYWwgY29ubmVjdGlvbj8KCj4gIAl9Cj4gIAo+ICB9CgpbU2V2ZXJpdHk6IEhpZ2hd ClRoaXMgaXMgYSBwcmUtZXhpc3RpbmcgaXNzdWUsIGJ1dCBkb2VzIHRoZSBkZXZyZXMgcmVnaXN0 cmF0aW9uIG9yZGVyaW5nIGluCnJrX3VkcGh5X3Byb2JlKCkgY2F1c2UgYSB1c2UtYWZ0ZXItZnJl ZSBvZiBwaHlfdTMgZHVyaW5nIHVuYmluZD8KClRoZSBUeXBlLUMgb3JpZW50YXRpb24gc3dpdGNo IGFuZCBtdXggYXJlIHJlZ2lzdGVyZWQgd2l0aCBkZXZyZXMgYmVmb3JlCnRoZSBQSFlzIGFyZSBj cmVhdGVkOgoKcmtfdWRwaHlfcHJvYmUoKSB7CiAgICAuLi4KICAgIGlmIChkZXZpY2VfcHJvcGVy dHlfcHJlc2VudChkZXYsICJtb2RlLXN3aXRjaCIpKSB7CiAgICAgICAgcmV0ID0gcmtfdWRwaHlf c2V0dXBfdHlwZWNfbXV4KHVkcGh5KTsKICAgIC4uLgogICAgdWRwaHktPnBoeV91MyA9IGRldm1f cGh5X2NyZWF0ZShkZXYsIGRldi0+b2Zfbm9kZSwgJnJrX3VkcGh5X3VzYjNfcGh5X29wcyk7CiAg ICAuLi4KfQoKRHVyaW5nIHVuYmluZCwgZGV2cmVzIGV4ZWN1dGVzIGNsZWFudXAgaW4gcmV2ZXJz ZSBvcmRlci4gVGhlIFBIWSBzdHJ1Y3R1cmVzCmFyZSBmcmVlZCB3aGlsZSB0aGUgVHlwZS1DIG11 eCByZW1haW5zIHJlZ2lzdGVyZWQuCgpJZiBhIGNvbmN1cnJlbnQgVHlwZS1DIGV2ZW50IGFycml2 ZXMgYW5kIGNhbGxzIHJrX3VkcGh5X3R5cGVjX211eF9zZXQoKSwKaXQgaW52b2tlcyBya191ZHBo eV91cGRhdGVfcG93ZXJfc3RhdGUoKSB3aGljaCB1c2VzIHRoZSBmcmVlZCBwb2ludGVyOgoKcmtf dWRwaHlfdXBkYXRlX3Bvd2VyX3N0YXRlKCkgewogICAgLi4uCiAgICBwaHlfbm90aWZ5X3Jlc2V0 KHVkcGh5LT5waHlfdTMsIFBIWV9OT1RJRllfUFJFX1JFU0VUKTsKICAgIC4uLgp9CgotLSAKU2Fz aGlrbyBBSSByZXZpZXcgwrcgaHR0cHM6Ly9zYXNoaWtvLmRldi8jL3BhdGNoc2V0LzIwMjYwNzAz LXJvY2tjaGlwLXVzYmRwLWNsZWFudXAtdjEwLTAtYTM5MjcxMWNhOGE5QGNvbGxhYm9yYS5jb20/ cGFydD0zNgoKLS0gCmxpbnV4LXBoeSBtYWlsaW5nIGxpc3QKbGludXgtcGh5QGxpc3RzLmluZnJh ZGVhZC5vcmcKaHR0cHM6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGlu dXgtcGh5Cg== 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 58340256D for ; Sat, 4 Jul 2026 00:01:33 +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=1783123294; cv=none; b=WoqVP92W31Js2/FOUzUcm37eEoYmBFMWKjeXWxwwWqRyEx15JPNa1ZhJ34p9fdJV/4oRDMFsjZABBjt4wOm8sg8umlBSd5AEDAzY+WugIWKKfjKJnNuUOm5CEhgQWDy0qEK+3saGZFNGKFdrsqLn4cJZYovzliwkQtMbdCqtHSo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783123294; c=relaxed/simple; bh=Lx0tqP6KGq1LONcm88ITSxZpEbYHbNJ3BPWH6V53tDU=; h=From:Subject:To:Cc:In-Reply-To:References:Content-Type:Date: Message-Id; b=Zt+a+Mic4bxHLTEjLfH3u4rDg+b8UpUVIqdaid+3I6Oc76x/4RT242WfY1WysbfqKRhbi/dnJTdkGZU5qz8PmnGyjRpXwBHREzDrYN6cTvgqTX27/5gDE8k7ut7EHN6kMS5jOf7xhJpCyRQXc4Ym7FK3opM/ifS+kKdo+emRVhQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hyIFlHzY; 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="hyIFlHzY" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B72D91F000E9; Sat, 4 Jul 2026 00:01:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783123293; bh=4mSV+jyu93ebGylRRemEboIhGJgcsyEcBLUInNIbHf4=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=hyIFlHzY5llRnD+8Glf5pTX32zEBt3C4FvAVGGaLVEa8MGgi0ZoQ0AOwK9STqaZ9Z K4PEncVPWFlak5kcskjDOaRffa62QJOu1u+onMH4zwjDl426lNZkISkR2szUATOqGm CFvQsr4bJg2/iB5fDel/nWrvhol2B0S7lN4xvXhqOgB9Y/2hcrvY9ngKe2pMlTjwWa WwK1deVJe0nZESeXt5LZd6SnjNAUv9n1MJF/GCvumJ0gLR1EcK/vRmi9YGHWJyHkoC 5LDe+iJMT45Y/dNlwPnOeqEjfHQED2IM8catRQNd3jBl4dvFbupFw3uL3AZP28I9EL vPUYgU0goOLiA== From: sashiko-bot@kernel.org Subject: Re: [PATCH v10 36/36] phy: rockchip: usbdp: Add USB-C state without DP enabled Reply-To: sashiko-reviews@lists.linux.dev To: "Sebastian Reichel" Cc: devicetree@vger.kernel.org, robh@kernel.org, vkoul@kernel.org, neil.armstrong@linaro.org, olteanv@gmail.com, linux-phy@lists.infradead.org, conor+dt@kernel.org In-Reply-To: <20260703-rockchip-usbdp-cleanup-v10-36-a392711ca8a9@collabora.com> References: <20260703-rockchip-usbdp-cleanup-v10-0-a392711ca8a9@collabora.com> <20260703-rockchip-usbdp-cleanup-v10-36-a392711ca8a9@collabora.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Sat, 04 Jul 2026 00:01:32 +0000 Message-Id: <20260704000132.B72D91F000E9@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 3 potential issue(= s) to consider: New issues: - [High] Early return in `rk_udphy_mode_set` prevents `lane_mux_sel` from b= eing updated when only the cable orientation changes. - [Medium] Mapping `TYPEC_STATE_USB` to `UDPHY_MODE_USB` causes PHY resets = and USB disconnections during DP Alt Mode entry. Pre-existing issues: - [High] Devres registration ordering causes a Use-After-Free of `phy_u3` d= uring unbind. -- commit 054870f51259caaa299758adc71548fa9bf71159 Author: Sebastian Reichel phy: rockchip: usbdp: Add USB-C state without DP enabled This commit adds a separate state for USB-only mode without DisplayPort ena= bled to improve power management. It splits the previous DP + USB3 combined mode when DP AltMode is not present. > diff --git a/drivers/phy/rockchip/phy-rockchip-usbdp.c b/drivers/phy/rock= chip/phy-rockchip-usbdp.c > --- a/drivers/phy/rockchip/phy-rockchip-usbdp.c > +++ b/drivers/phy/rockchip/phy-rockchip-usbdp.c > @@ -617,12 +599,40 @@ static void rk_udphy_set_typec_state(struct rk_udph= y *udphy, unsigned long state > udphy->lane_mux_sel[2] =3D PHY_LANE_MUX_DP; > udphy->lane_mux_sel[3] =3D PHY_LANE_MUX_DP; > } > - hw_mode =3D UDPHY_MODE_DP_USB; > - udphy->dp_lanes =3D 2; > + } > +} > + > +static void rk_udphy_mode_set(struct rk_udphy *udphy, u8 hw_mode, u8 dp_= lanes) > +{ > + if (udphy->hw_mode =3D=3D hw_mode && udphy->dp_lanes =3D=3D dp_lanes) > + return; [Severity: High] Does this early return prevent updating the lane mux if only the cable orientation changes? If a cable is physically flipped, the code updates udphy->flip and calls rk_udphy_set_typec_default_mapping(), which then sets the state to TYPEC_DP_STATE_D. If the PHY was already in UDPHY_MODE_DP_USB with 2 DP lanes, this check causes an early return, skipping the newly moved rk_udphy_set_lane_mux() call below. This would leave stale inverted lane assignments when rk_udphy_init() subsequently configures the hardware. > + > + udphy->phy_needs_reinit =3D true; > + udphy->hw_mode =3D hw_mode; > + udphy->dp_lanes =3D dp_lanes; > + > + rk_udphy_set_lane_mux(udphy); > +} > + > +static void rk_udphy_set_typec_state(struct rk_udphy *udphy, unsigned lo= ng state) > +{ > + switch (state) { > [ ... ] > + case TYPEC_STATE_SAFE: > + case TYPEC_STATE_USB: > + default: > + rk_udphy_mode_set(udphy, UDPHY_MODE_USB, 0); > + break; [Severity: Medium] Will mapping this intermediate state to USB-only force a disruptive hardware mode change when transitioning to DP Alt Mode? Type-C port managers typically request TYPEC_STATE_USB upon connection. Setting this to UDPHY_MODE_USB configures 0 DP lanes. When DP Alt Mode successfully negotiates shortly after and transitions to TYPEC_DP_STATE_D, hw_mode changes to UDPHY_MODE_DP_USB. This triggers a full PHY reset in rk_udphy_update_power_state() and interrupts active USB transfers. The commit message mentions keeping all PHY parts powered up to avoid data stream interruptions, but could this intermediate state mapping negate that benefit during initial connection? > } > =20 > } [Severity: High] This is a pre-existing issue, but does the devres registration ordering in rk_udphy_probe() cause a use-after-free of phy_u3 during unbind? The Type-C orientation switch and mux are registered with devres before the PHYs are created: rk_udphy_probe() { ... if (device_property_present(dev, "mode-switch")) { ret =3D rk_udphy_setup_typec_mux(udphy); ... udphy->phy_u3 =3D devm_phy_create(dev, dev->of_node, &rk_udphy_usb3_phy= _ops); ... } During unbind, devres executes cleanup in reverse order. The PHY structures are freed while the Type-C mux remains registered. If a concurrent Type-C event arrives and calls rk_udphy_typec_mux_set(), it invokes rk_udphy_update_power_state() which uses the freed pointer: rk_udphy_update_power_state() { ... phy_notify_reset(udphy->phy_u3, PHY_NOTIFY_PRE_RESET); ... } --=20 Sashiko AI review =C2=B7 https://sashiko.dev/#/patchset/20260703-rockchip-u= sbdp-cleanup-v10-0-a392711ca8a9@collabora.com?part=3D36