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 C542D3AA50A for ; Fri, 17 Jul 2026 11:10:42 +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=1784286644; cv=none; b=uCIyaHxAQTUgczZ8BddaVJXNh+pHkxXnIFwp/gNpwYlcLwMNf2UX435ln6t38ubaOCQ3syjbsc3SBhfbwOamO5RgXzWjfKlVuBi87rLXHj7BI9hEwd7i6oT2Sa9rYA6w7RO2n0xWbj95kXSfGbHkYv/6QdnKzxKlLKEFi8NeL7U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784286644; c=relaxed/simple; bh=LinDNEQSdchdKnLboPS5A7mOdsrX9dN9gW7TfyKTsBY=; h=From:Subject:To:Cc:In-Reply-To:References:Content-Type:Date: Message-Id; b=QKpQRTJp7OaENrnfiLQqG6l6l/Csi4+urIdfoqoHS0M2MQgYO4xbJFw/olwUeiLJTIicJDKM/cDQ3ENalLynqt2NRM2QFZ/BwkE824iOvLUPzu4T5/lhFN4Kzwxzp8Srwx/lRxFUksSUPqSCcRBr5BV090lH1dgN3jXAcvznkT8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=E6lJyKjZ; 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="E6lJyKjZ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3C2921F00A3A; Fri, 17 Jul 2026 11:10:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1784286642; bh=cwwY2OZpkNKIB4qmNeRcaCgRMJwuI8rUnOERUeFhDKc=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=E6lJyKjZkXuV9U2deRpfqwWwivoQYmFQkXPTnW6d8rEd8CJGjKyAdw4apT30R1y6Y +W3MdrtHFGAS1+fpuEodo6GO7kjLJpI782K1CPMvnkKAGdMPm/GIBlfSqfdlrZ4YZN r1X82rJ/C8YDvykSl/ykgxM6KchBp90bY3x71HSxUaHA0h9Qkcz9h9F8eteFIlbfBi jcch3yx+gmJbTR7EBWCBJ58tPZuGgXFFUhdCLOmpgIcDAGdMyFSg7x1mxQ1F2oLuFK tM95EGkwbXCQ+QC29731jvT1O7EBZHrJPXUIvbmRIm7x4IpMbdegYFh8OaojrS0wxM fCGycjW540Gag== From: sashiko-bot@kernel.org Subject: Re: [PATCH] dt-bindings: i3c: dw: Document missing optional core reset Reply-To: sashiko-reviews@lists.linux.dev To: "Shubham Patil" Cc: linux-i3c@lists.infradead.org, robh@kernel.org, devicetree@vger.kernel.org, Frank.Li@kernel.org, conor+dt@kernel.org, "Alexandre Belloni" In-Reply-To: <20260717105829.567522-1-shubhamsanjay.patil@amd.com> References: <20260717105829.567522-1-shubhamsanjay.patil@amd.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Fri, 17 Jul 2026 11:10:41 +0000 Message-Id: <20260717111042.3C2921F00A3A@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] The dt-binding specifies the APB clock name as 'apb', but the driv= er attempts to fetch it using the name 'pclk'. - [High] Mixing devm_clk_get_enabled() with manual runtime PM clock togglin= g causes unbalanced clock disables. -- --- Patch [1]: [PATCH] dt-bindings: i3c: dw: Document missing optional core= reset --- commit 3d9cd37483dab62bf65ce3e70bf1ff17d3bd87d7 Author: Shubham Patil dt-bindings: i3c: dw: Document missing optional core reset The DesignWare I3C master IP supports a core reset input, but the binding is missing the corresponding reset description. Document the reset property and name in the binding. Keep the reset optional because the reset line is integration-specific. > diff --git a/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yam= l b/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml > index e803457d3f554..822faf8d221b8 100644 > --- a/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml > +++ b/Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml > @@ -38,6 +38,12 @@ properties: > interrupts: > maxItems: 1 > =20 [Severity: High] This is a pre-existing issue, but I noticed a potential mismatch between the DT binding and the driver for the APB clock while reviewing this file. The binding enforces the name 'apb': Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml: - const: apb However, the driver requests it by the name 'pclk': drivers/i3c/master/dw-i3c-master.c:dw_i3c_common_probe() { ... master->pclk =3D devm_clk_get_optional_enabled(&pdev->dev, "pclk"); ... } If a device tree is created strictly following the binding using clock-name= s =3D "core", "apb", won't dw_i3c_common_probe() fail to find the "pclk" clock? Since it is requested as optional, the probe will succeed but subsequent register accesses will occur without the APB clock enabled. Could this lead= to a synchronous external abort or system freeze during operation? > + resets: > + maxItems: 1 > + > + reset-names: > + const: core_rst > + > power-domains: > maxItems: 1 [Severity: High] This is also a pre-existing issue, but I noticed a potential runtime PM imbalance with how the clocks are handled in the driver. The clocks are acquired using devres, which ties enablement strictly to the device lifecycle: drivers/i3c/master/dw-i3c-master.c:dw_i3c_common_probe() { ... master->core_clk =3D devm_clk_get_enabled(&pdev->dev, NULL); ... master->pclk =3D devm_clk_get_optional_enabled(&pdev->dev, "pclk"); ... } However, they are manually disabled during runtime suspend: drivers/i3c/master/dw-i3c-master.c:dw_i3c_master_runtime_suspend() { ... dw_i3c_master_disable_clks(master); ... } And runtime PM is disabled on removal without waking the device: drivers/i3c/master/dw-i3c-master.c:dw_i3c_common_remove() { ... pm_runtime_disable(master->dev); ... } If the driver is unbound via sysfs while the device is idle in runtime susp= end, the clocks remain disabled. When the devres actions fire during cleanup, wo= n't they attempt to disable the clocks a second time? Could this unbalanced clock disable turn off a shared clock and affect other active peripherals? --=20 Sashiko AI review =C2=B7 https://sashiko.dev/#/patchset/20260717105829.5675= 22-1-shubhamsanjay.patil@amd.com?part=3D1 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 A6BEAC44507 for ; Fri, 17 Jul 2026 11:10:44 +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=9d90fDpHJjGQFIFJc82f0mOO+IaqUJC5LRlTZISdT0Y=; b=yvyKu7u08TDkTk BDdb/oIANzGHEuZGae1rZVtmALe3snbwN4tE++ChF98+LGzqOB1uM+uzBSTHmleZLFcj7lMh2ApCI VkKt6gKjuCKwtj2jCYuRZnJ7Qx8Z05cLzi698+izjRdpByb4I5o/Co6NW11cUsguGTgGNQYSCRs1e O4E+ZcocQzrww03YuTOoA8QaYjXBGaQkwiGW3mT4Hx6jXYa9pJcmdtBqApC6PMf2ewlixEwwvqUZR c1YJQhKZqCL5IVgNkYSbWjH2/HavbzGrX3suOk0LJzGOidEh0RbGpcMajdwuh50gfgWQbyZ1sCUee ej/ZXyAF2xdj1jmL09JA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wkgSq-000000027ln-1SmP; Fri, 17 Jul 2026 11:10:44 +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 1wkgSp-000000027ld-3NWB for linux-i3c@lists.infradead.org; Fri, 17 Jul 2026 11:10:43 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id DFE9860A61; Fri, 17 Jul 2026 11:10:42 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3C2921F00A3A; Fri, 17 Jul 2026 11:10:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1784286642; bh=cwwY2OZpkNKIB4qmNeRcaCgRMJwuI8rUnOERUeFhDKc=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=E6lJyKjZkXuV9U2deRpfqwWwivoQYmFQkXPTnW6d8rEd8CJGjKyAdw4apT30R1y6Y +W3MdrtHFGAS1+fpuEodo6GO7kjLJpI782K1CPMvnkKAGdMPm/GIBlfSqfdlrZ4YZN r1X82rJ/C8YDvykSl/ykgxM6KchBp90bY3x71HSxUaHA0h9Qkcz9h9F8eteFIlbfBi jcch3yx+gmJbTR7EBWCBJ58tPZuGgXFFUhdCLOmpgIcDAGdMyFSg7x1mxQ1F2oLuFK tM95EGkwbXCQ+QC29731jvT1O7EBZHrJPXUIvbmRIm7x4IpMbdegYFh8OaojrS0wxM fCGycjW540Gag== From: sashiko-bot@kernel.org Subject: Re: [PATCH] dt-bindings: i3c: dw: Document missing optional core reset To: "Shubham Patil" Cc: linux-i3c@lists.infradead.org, robh@kernel.org, devicetree@vger.kernel.org, Frank.Li@kernel.org, conor+dt@kernel.org, "Alexandre Belloni" In-Reply-To: <20260717105829.567522-1-shubhamsanjay.patil@amd.com> References: <20260717105829.567522-1-shubhamsanjay.patil@amd.com> Date: Fri, 17 Jul 2026 11:10:41 +0000 Message-Id: <20260717111042.3C2921F00A3A@smtp.kernel.org> X-BeenThere: linux-i3c@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: 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-i3c" Errors-To: linux-i3c-bounces+linux-i3c=archiver.kernel.org@lists.infradead.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg MiBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpQcmUtZXhpc3RpbmcgaXNzdWVzOgot IFtIaWdoXSBUaGUgZHQtYmluZGluZyBzcGVjaWZpZXMgdGhlIEFQQiBjbG9jayBuYW1lIGFzICdh cGInLCBidXQgdGhlIGRyaXZlciBhdHRlbXB0cyB0byBmZXRjaCBpdCB1c2luZyB0aGUgbmFtZSAn cGNsaycuCi0gW0hpZ2hdIE1peGluZyBkZXZtX2Nsa19nZXRfZW5hYmxlZCgpIHdpdGggbWFudWFs IHJ1bnRpbWUgUE0gY2xvY2sgdG9nZ2xpbmcgY2F1c2VzIHVuYmFsYW5jZWQgY2xvY2sgZGlzYWJs ZXMuCi0tCgotLS0gUGF0Y2ggWzFdOiBbUEFUQ0hdIGR0LWJpbmRpbmdzOiBpM2M6IGR3OiBEb2N1 bWVudCBtaXNzaW5nIG9wdGlvbmFsIGNvcmUgcmVzZXQgLS0tCmNvbW1pdCAzZDljZDM3NDgzZGFi NjJiZjY1Y2UzZTcwYmYxZmYxN2QzYmQ4N2Q3CkF1dGhvcjogU2h1YmhhbSBQYXRpbCA8c2h1Ymhh bXNhbmpheS5wYXRpbEBhbWQuY29tPgoKZHQtYmluZGluZ3M6IGkzYzogZHc6IERvY3VtZW50IG1p c3Npbmcgb3B0aW9uYWwgY29yZSByZXNldAoKVGhlIERlc2lnbldhcmUgSTNDIG1hc3RlciBJUCBz dXBwb3J0cyBhIGNvcmUgcmVzZXQgaW5wdXQsIGJ1dCB0aGUKYmluZGluZyBpcyBtaXNzaW5nIHRo ZSBjb3JyZXNwb25kaW5nIHJlc2V0IGRlc2NyaXB0aW9uLiBEb2N1bWVudCB0aGUKcmVzZXQgcHJv cGVydHkgYW5kIG5hbWUgaW4gdGhlIGJpbmRpbmcuIEtlZXAgdGhlIHJlc2V0IG9wdGlvbmFsIGJl Y2F1c2UKdGhlIHJlc2V0IGxpbmUgaXMgaW50ZWdyYXRpb24tc3BlY2lmaWMuCgo+IGRpZmYgLS1n aXQgYS9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvaTNjL3NucHMsZHctaTNjLW1h c3Rlci55YW1sIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2kzYy9zbnBzLGR3 LWkzYy1tYXN0ZXIueWFtbAo+IGluZGV4IGU4MDM0NTdkM2Y1NTQuLjgyMmZhZjhkMjIxYjggMTAw NjQ0Cj4gLS0tIGEvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2kzYy9zbnBzLGR3 LWkzYy1tYXN0ZXIueWFtbAo+ICsrKyBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5n cy9pM2Mvc25wcyxkdy1pM2MtbWFzdGVyLnlhbWwKPiBAQCAtMzgsNiArMzgsMTIgQEAgcHJvcGVy dGllczoKPiAgICBpbnRlcnJ1cHRzOgo+ICAgICAgbWF4SXRlbXM6IDEKPiAgCgpbU2V2ZXJpdHk6 IEhpZ2hdClRoaXMgaXMgYSBwcmUtZXhpc3RpbmcgaXNzdWUsIGJ1dCBJIG5vdGljZWQgYSBwb3Rl bnRpYWwgbWlzbWF0Y2ggYmV0d2VlbiB0aGUKRFQgYmluZGluZyBhbmQgdGhlIGRyaXZlciBmb3Ig dGhlIEFQQiBjbG9jayB3aGlsZSByZXZpZXdpbmcgdGhpcyBmaWxlLgoKVGhlIGJpbmRpbmcgZW5m b3JjZXMgdGhlIG5hbWUgJ2FwYic6CgpEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3Mv aTNjL3NucHMsZHctaTNjLW1hc3Rlci55YW1sOgogICAgICAtIGNvbnN0OiBhcGIKCkhvd2V2ZXIs IHRoZSBkcml2ZXIgcmVxdWVzdHMgaXQgYnkgdGhlIG5hbWUgJ3BjbGsnOgoKZHJpdmVycy9pM2Mv bWFzdGVyL2R3LWkzYy1tYXN0ZXIuYzpkd19pM2NfY29tbW9uX3Byb2JlKCkgewogICAgLi4uCiAg ICBtYXN0ZXItPnBjbGsgPSBkZXZtX2Nsa19nZXRfb3B0aW9uYWxfZW5hYmxlZCgmcGRldi0+ZGV2 LCAicGNsayIpOwogICAgLi4uCn0KCklmIGEgZGV2aWNlIHRyZWUgaXMgY3JlYXRlZCBzdHJpY3Rs eSBmb2xsb3dpbmcgdGhlIGJpbmRpbmcgdXNpbmcgY2xvY2stbmFtZXMgPQoiY29yZSIsICJhcGIi LCB3b24ndCBkd19pM2NfY29tbW9uX3Byb2JlKCkgZmFpbCB0byBmaW5kIHRoZSAicGNsayIgY2xv Y2s/CgpTaW5jZSBpdCBpcyByZXF1ZXN0ZWQgYXMgb3B0aW9uYWwsIHRoZSBwcm9iZSB3aWxsIHN1 Y2NlZWQgYnV0IHN1YnNlcXVlbnQKcmVnaXN0ZXIgYWNjZXNzZXMgd2lsbCBvY2N1ciB3aXRob3V0 IHRoZSBBUEIgY2xvY2sgZW5hYmxlZC4gQ291bGQgdGhpcyBsZWFkIHRvCmEgc3luY2hyb25vdXMg ZXh0ZXJuYWwgYWJvcnQgb3Igc3lzdGVtIGZyZWV6ZSBkdXJpbmcgb3BlcmF0aW9uPwoKPiArICBy ZXNldHM6Cj4gKyAgICBtYXhJdGVtczogMQo+ICsKPiArICByZXNldC1uYW1lczoKPiArICAgIGNv bnN0OiBjb3JlX3JzdAo+ICsKPiAgICBwb3dlci1kb21haW5zOgo+ICAgICAgbWF4SXRlbXM6IDEK CltTZXZlcml0eTogSGlnaF0KVGhpcyBpcyBhbHNvIGEgcHJlLWV4aXN0aW5nIGlzc3VlLCBidXQg SSBub3RpY2VkIGEgcG90ZW50aWFsIHJ1bnRpbWUgUE0KaW1iYWxhbmNlIHdpdGggaG93IHRoZSBj bG9ja3MgYXJlIGhhbmRsZWQgaW4gdGhlIGRyaXZlci4KClRoZSBjbG9ja3MgYXJlIGFjcXVpcmVk IHVzaW5nIGRldnJlcywgd2hpY2ggdGllcyBlbmFibGVtZW50IHN0cmljdGx5IHRvIHRoZQpkZXZp Y2UgbGlmZWN5Y2xlOgoKZHJpdmVycy9pM2MvbWFzdGVyL2R3LWkzYy1tYXN0ZXIuYzpkd19pM2Nf Y29tbW9uX3Byb2JlKCkgewogICAgLi4uCiAgICBtYXN0ZXItPmNvcmVfY2xrID0gZGV2bV9jbGtf Z2V0X2VuYWJsZWQoJnBkZXYtPmRldiwgTlVMTCk7CiAgICAuLi4KICAgIG1hc3Rlci0+cGNsayA9 IGRldm1fY2xrX2dldF9vcHRpb25hbF9lbmFibGVkKCZwZGV2LT5kZXYsICJwY2xrIik7CiAgICAu Li4KfQoKSG93ZXZlciwgdGhleSBhcmUgbWFudWFsbHkgZGlzYWJsZWQgZHVyaW5nIHJ1bnRpbWUg c3VzcGVuZDoKCmRyaXZlcnMvaTNjL21hc3Rlci9kdy1pM2MtbWFzdGVyLmM6ZHdfaTNjX21hc3Rl cl9ydW50aW1lX3N1c3BlbmQoKSB7CiAgICAuLi4KICAgIGR3X2kzY19tYXN0ZXJfZGlzYWJsZV9j bGtzKG1hc3Rlcik7CiAgICAuLi4KfQoKQW5kIHJ1bnRpbWUgUE0gaXMgZGlzYWJsZWQgb24gcmVt b3ZhbCB3aXRob3V0IHdha2luZyB0aGUgZGV2aWNlOgoKZHJpdmVycy9pM2MvbWFzdGVyL2R3LWkz Yy1tYXN0ZXIuYzpkd19pM2NfY29tbW9uX3JlbW92ZSgpIHsKICAgIC4uLgogICAgcG1fcnVudGlt ZV9kaXNhYmxlKG1hc3Rlci0+ZGV2KTsKICAgIC4uLgp9CgpJZiB0aGUgZHJpdmVyIGlzIHVuYm91 bmQgdmlhIHN5c2ZzIHdoaWxlIHRoZSBkZXZpY2UgaXMgaWRsZSBpbiBydW50aW1lIHN1c3BlbmQs CnRoZSBjbG9ja3MgcmVtYWluIGRpc2FibGVkLiBXaGVuIHRoZSBkZXZyZXMgYWN0aW9ucyBmaXJl IGR1cmluZyBjbGVhbnVwLCB3b24ndAp0aGV5IGF0dGVtcHQgdG8gZGlzYWJsZSB0aGUgY2xvY2tz IGEgc2Vjb25kIHRpbWU/CgpDb3VsZCB0aGlzIHVuYmFsYW5jZWQgY2xvY2sgZGlzYWJsZSB0dXJu IG9mZiBhIHNoYXJlZCBjbG9jayBhbmQgYWZmZWN0IG90aGVyCmFjdGl2ZSBwZXJpcGhlcmFscz8K Ci0tIApTYXNoaWtvIEFJIHJldmlldyDCtyBodHRwczovL3Nhc2hpa28uZGV2LyMvcGF0Y2hzZXQv MjAyNjA3MTcxMDU4MjkuNTY3NTIyLTEtc2h1YmhhbXNhbmpheS5wYXRpbEBhbWQuY29tP3BhcnQ9 MQoKLS0gCmxpbnV4LWkzYyBtYWlsaW5nIGxpc3QKbGludXgtaTNjQGxpc3RzLmluZnJhZGVhZC5v cmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1pM2MK