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 36689C88E64 for ; Mon, 14 Sep 2026 12:58:45 +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=1XI8EuA3444V+nsxblGjmA1HAGDSXr6Z8Ug7rj2hH7U=; b=HwpJYVefWhaiP7 5MxsiAWXXqzMByjiM2ObGzg1j2kke5JWpY8q9MJkFWAmT/wUBr9SWqx9ClQCXuuAEbZ+b76V9ipLb Kyfdclkx7fj18Wnl2lgm/+zauIirpeHrUD+rxChMdn8p6hao/kt0kD6vP2OrbVmjs8f9oAyRQXh6W b13n5T++iIPwT/NA1dpEnIRXynWqcDG5lTMAavxQiLdqxQ8qByMUnkkdwp/y5NsuurQMkNV6OLVg9 7lZgAkjJb/FamgUQ9fZBhVmr16Ryw/THcAao0tLbP3/ygyKa6bME9rTIvXbBqEnq/j2DU/JdwgVSU L06B7UCf/qkkJAkejJqg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1x66Gi-00000003g1H-32RO; Mon, 14 Sep 2026 12:58:44 +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 1x66Gf-00000003g02-37D5 for linux-phy@lists.infradead.org; Mon, 14 Sep 2026 12:58:41 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 3C80840B35; Mon, 14 Sep 2026 12:58:41 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 98F0D1F0089A; Mon, 14 Sep 2026 12:58:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1789390721; bh=q7P/XxnfFbOpFBgH2nN6WeSNPU29sWcz6NGAJwuE7q4=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=j33lRb/WtPSc1p+/G8H6Ounna1cbV/nYNSwGzjIYrUEuuJi7JHCMh/ohtpBzABqDx m+oKdiYqGpPbbTUvo+oYdbkA3YQVTw8FAfp1ILnJMfz4u+dMy94URJCVXSfkB6qQvI JxP+8Kk3yn2v+GvGg3WY8DnLH75C7qwyno4tFxcMgTh6jNdgDNX0gkwrAKMYs74hRl VvIoc+tDPj3CEIZ9HzMyyu1b4UAAcSq+TWLIr7C/rPaL/H0pJ5MM9xDlH85YPSkwsT RYDPzc5z5hcA8viiHusjwnHiThgoZBg3APVtIqpcvh6XmymhqUN/mude/ModhEFkB5 rs91TCdpWLXMA== From: sashiko-bot@kernel.org Subject: Re: [PATCH v12 14/24] scsi: ufs: mediatek: Use the common PHY framework To: "Louis-Alexis Eyraud" Cc: devicetree@vger.kernel.org, vkoul@kernel.org, olteanv@gmail.com, linux-scsi@vger.kernel.org, neil.armstrong@linaro.org, linux-phy@lists.infradead.org, conor+dt@kernel.org, robh@kernel.org In-Reply-To: <20260914-mt8196-ufs-v12-14-9279d7ef814d@collabora.com> References: <20260914-mt8196-ufs-v12-0-9279d7ef814d@collabora.com> <20260914-mt8196-ufs-v12-14-9279d7ef814d@collabora.com> Date: Mon, 14 Sep 2026 12:58:40 +0000 Message-Id: <20260914125840.98F0D1F0089A@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 MiBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpOZXcgaXNzdWVzOgotIFtIaWdoXSBS ZXR1cm5pbmcgYW4gZXJyb3IgaW4gYHVmc19tdGtfcnVudGltZV9zdXNwZW5kYCB3aXRob3V0IHJv bGxpbmcgYmFjayB0aGUgaGFyZHdhcmUgc3RhdGUgY2F1c2VzIGEgZmF0YWwgUE0gc3RhdGUgZGVz eW5jLgoKUHJlLWV4aXN0aW5nIGlzc3VlczoKLSBbSGlnaF0gYHVmc19tdGtfbXBoeV9wb3dlcl9v bmAgZmFpbHMgdG8gdXBkYXRlIGBtcGh5X3Bvd2VyZWRfb25gIHdoZW4gcmV0dXJuaW5nIGFuIGVy cm9yLCBwZXJtYW5lbnRseSBkZXN5bmNocm9uaXppbmcgdGhlIFBIWSBzdGF0ZS4KLS0KCmNvbW1p dCAwOTBkMGUxY2M5MWVmNDQ4ZjAzNDY5MjllNDdlZTQ1NDg0MzY1ZmQxCkF1dGhvcjogTmljb2xh cyBGcmF0dGFyb2xpIDxuaWNvbGFzLmZyYXR0YXJvbGlAY29sbGFib3JhLmNvbT4KCnNjc2k6IHVm czogbWVkaWF0ZWs6IFVzZSB0aGUgY29tbW9uIFBIWSBmcmFtZXdvcmsKClRoaXMgY29tbWl0IGNo YW5nZXMgdGhlIGRyaXZlciB0byB1c2UgdGhlIGNvbW1vbiBQSFkgZnJhbWV3b3JrIHRvIGFjcXVp cmUgdGhlCmRldmljZSdzIFBIWSBkdXJpbmcgaW5pdGlhbGl6YXRpb24uIFRoaXMgc2ltcGxpZmll cyB0aGUgZHJpdmVyIGJ5IHJlbW92aW5nCnJlaW52ZW50ZWQgUEhZIGZyYW1ld29yayBjb2RlIGFu ZCBPRiBwYXJzaW5nLgoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy91ZnMvaG9zdC91ZnMtbWVkaWF0 ZWsuYyBiL2RyaXZlcnMvdWZzL2hvc3QvdWZzLW1lZGlhdGVrLmMKPiBpbmRleCAzYzEwYTlmZDA5 ZGZjLi41MzgwMDllM2IxZjE3IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvdWZzL2hvc3QvdWZzLW1l ZGlhdGVrLmMKPiArKysgYi9kcml2ZXJzL3Vmcy9ob3N0L3Vmcy1tZWRpYXRlay5jClsgLi4uIF0K PiBAQCAtMjQ5Nyw5ICsyNDQyLDggQEAgc3RhdGljIGludCB1ZnNfbXRrX3N5c3RlbV9yZXN1bWUo c3RydWN0IGRldmljZSAqZGV2KQo+ICBzdGF0aWMgaW50IHVmc19tdGtfcnVudGltZV9zdXNwZW5k KHN0cnVjdCBkZXZpY2UgKmRldikKPiAgewo+ICAJc3RydWN0IHVmc19oYmEgKmhiYSA9IGRldl9n ZXRfZHJ2ZGF0YShkZXYpOwo+IC0Jc3RydWN0IHVmc19tdGtfaG9zdCAqaG9zdCA9IHVmc2hjZF9n ZXRfdmFyaWFudChoYmEpOwo+ICAJc3RydWN0IGFybV9zbWNjY19yZXMgcmVzOwo+IC0JaW50IHJl dCA9IDA7Cj4gKwlpbnQgcmV0Owo+ICAKPiAgCXJldCA9IHVmc2hjZF9ydW50aW1lX3N1c3BlbmQo ZGV2KTsKPiAgCWlmIChyZXQpCj4gQEAgLTI1MTAsOCArMjQ1NCwxMSBAQCBzdGF0aWMgaW50IHVm c19tdGtfcnVudGltZV9zdXNwZW5kKHN0cnVjdCBkZXZpY2UgKmRldikKPiAgCWlmICh1ZnNfbXRr X2lzX3J0ZmZfbXRjbW9zKGhiYSkpCj4gIAkJdWZzX210a19tdGNtb3NfY3RybChmYWxzZSwgcmVz KTsKPiAgCj4gLQlpZiAoaG9zdC0+cGh5X2RldikKPiAtCQlwbV9ydW50aW1lX3B1dF9zeW5jKGhv c3QtPnBoeV9kZXYpOwo+ICsJcmV0ID0gdWZzX210a19tcGh5X3Bvd2VyX29uKGhiYSwgZmFsc2Up OwoKW1NldmVyaXR5OiBIaWdoXQpUaGlzIGlzIGEgcHJlLWV4aXN0aW5nIGlzc3VlLCBidXQgdWZz X210a19tcGh5X3Bvd2VyX29uKCkgZmFpbHMgdG8gdXBkYXRlCm1waHlfcG93ZXJlZF9vbiB3aGVu IHJldHVybmluZyBhbiBlcnJvciwgd2hpY2ggY2FuIHBlcm1hbmVudGx5IGRlc3luY2hyb25pemUK dGhlIFBIWSBzdGF0ZS4KCkxvb2tpbmcgYXQgdWZzX210a19tcGh5X3Bvd2VyX29uKCk6Cgpkcml2 ZXJzL3Vmcy9ob3N0L3Vmcy1tZWRpYXRlay5jOnVmc19tdGtfbXBoeV9wb3dlcl9vbigpIHsKICAg IC4uLgoJfSBlbHNlIHsKCQlwaHlfcG93ZXJfb2ZmKG1waHkpOwoJCXJldCA9IHVmc19tdGtfMDl2 X29mZihob3N0KTsKCQlpZiAocmV0KQoJCQlyZXR1cm4gcmV0OwoJfQoKCWhvc3QtPm1waHlfcG93 ZXJlZF9vbiA9IG9uOwoKCXJldHVybiAwOwp9CgpJZiB1ZnNfbXRrXzA5dl9vZmYoKSBmYWlscyBk dXJpbmcgcG93ZXIgb2ZmLCBpdCByZXR1cm5zIHRoZSBlcnJvciBpbW1lZGlhdGVseSwKbGVhdmlu ZyBob3N0LT5tcGh5X3Bvd2VyZWRfb24gYXMgdHJ1ZS4KCk9uIHRoZSBuZXh0IHJlc3VtZSwgdWZz X210a19tcGh5X3Bvd2VyX29uKGhiYSwgdHJ1ZSkgd2lsbCByZXR1cm4gZWFybHkgYmVjYXVzZQpv biA9PSBob3N0LT5tcGh5X3Bvd2VyZWRfb24sIHNraXBwaW5nIHBoeV9wb3dlcl9vbihtcGh5KS4K CkNhbiB0aGlzIHBlcm1hbmVudGx5IGxlYXZlIHRoZSBQSFkgcG93ZXJlZCBvZmYgYW5kIG1ha2Ug dGhlIHN0b3JhZ2UKaW5hY2Nlc3NpYmxlPwoKPiArCWlmIChyZXQpIHsKPiArCQlkZXZfZXJyKGRl diwgIkZhaWxlZCB0byBwb3dlciBvZmYgUEhZOiAlcGVcbiIsIEVSUl9QVFIocmV0KSk7Cj4gKwkJ cmV0dXJuIHJldDsKCltTZXZlcml0eTogSGlnaF0KSWYgdWZzX210a19tcGh5X3Bvd2VyX29uKCkg ZmFpbHMsIHRoaXMgcmV0dXJucyBhbiBlcnJvciBpbW1lZGlhdGVseSB3aXRob3V0CnJvbGxpbmcg YmFjayB0aGUgZWFybGllciBzdXNwZW5kIG9wZXJhdGlvbnMuCgpTaW5jZSB0aGUgVUZTIGhhcmR3 YXJlIGlzIGFscmVhZHkgbGVmdCBwaHlzaWNhbGx5IHN1c3BlbmRlZCAoY2xvY2tzIGdhdGVkLApW UkVHcyBhbmQgTVRDTU9TIHBvd2VyZWQgZG93biB2aWEgdWZzaGNkX3J1bnRpbWVfc3VzcGVuZCBh bmQgCnVmc19tdGtfZGV2X3ZyZWdfc2V0X2xwbSksIHJldHVybmluZyBhbiBlcnJvciBjYXVzZXMg dGhlIFBNIGNvcmUgdG8gbWlzbWF0Y2gKdGhlIHBoeXNpY2FsIGhhcmR3YXJlIHN0YXRlIGFuZCBj b25zaWRlciB0aGUgZGV2aWNlIGFjdGl2ZS4KCkNhbiB0aGlzIGNhdXNlIGEgZmF0YWwgUE0gc3Rh dGUgZGVzeW5jLCB3aGVyZSBzdWJzZXF1ZW50IEkvTyByZXF1ZXN0cyBjcmFzaCBvcgpoYW5nIHRo ZSBidXMgYmVjYXVzZSB0aGUgUE0gY29yZSB3aWxsIHNraXAgY2FsbGluZyBydW50aW1lX3Jlc3Vt ZT8KCj4gKwl9Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gIH0KCi0tIApTYXNoaWtvIEFJIHJldmlldyDC tyBodHRwczovL3Nhc2hpa28uZGV2LyMvcGF0Y2hzZXQvMjAyNjA5MTQtbXQ4MTk2LXVmcy12MTIt MC05Mjc5ZDdlZjgxNGRAY29sbGFib3JhLmNvbT9wYXJ0PTE0CgotLSAKbGludXgtcGh5IG1haWxp bmcgbGlzdApsaW51eC1waHlAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwczovL2xpc3RzLmluZnJh ZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1waHkK 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 9788E44781E; Mon, 14 Sep 2026 12:58:41 +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=1789390722; cv=none; b=jqOatn2CHKHuB+z2bww1YHcx87D5pSY4tcO4QVZnH4nTSmpwMpLzMFU4OTkzu6oXj5V/sWb3mV6oKuze8jE2jGhz+EQPFg9OjucMeoBFWkLfEegdYTzu1+n01Xwh07POTURNloaWRYhdf2eoSUA6ZpDBuJDMTfPf48uu5+Xje3U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789390722; c=relaxed/simple; bh=7H9dnY6wsJtZbf2mjTq8YqUQStBF5b7JSb0nOakOZAE=; h=From:Subject:To:Cc:In-Reply-To:References:Content-Type:Date: Message-Id; b=rAAnZO3dYcc6MBtTmN9gxakb/E7RLbh2nmfgvmpPNCx2CbFp5dyM8WosX1Qr9xmJ567iYosj3hfdqFE7L8or2qyXUJOzArDaTxtHlU/zfbJZEMFQ3uAiRZ377R0POSvH6UylQBt5EYhem9TqV/Gjo6MsxpA+TCt8Zj6YHyWeGkI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=j33lRb/W; 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="j33lRb/W" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 98F0D1F0089A; Mon, 14 Sep 2026 12:58:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1789390721; bh=q7P/XxnfFbOpFBgH2nN6WeSNPU29sWcz6NGAJwuE7q4=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=j33lRb/WtPSc1p+/G8H6Ounna1cbV/nYNSwGzjIYrUEuuJi7JHCMh/ohtpBzABqDx m+oKdiYqGpPbbTUvo+oYdbkA3YQVTw8FAfp1ILnJMfz4u+dMy94URJCVXSfkB6qQvI JxP+8Kk3yn2v+GvGg3WY8DnLH75C7qwyno4tFxcMgTh6jNdgDNX0gkwrAKMYs74hRl VvIoc+tDPj3CEIZ9HzMyyu1b4UAAcSq+TWLIr7C/rPaL/H0pJ5MM9xDlH85YPSkwsT RYDPzc5z5hcA8viiHusjwnHiThgoZBg3APVtIqpcvh6XmymhqUN/mude/ModhEFkB5 rs91TCdpWLXMA== From: sashiko-bot@kernel.org Subject: Re: [PATCH v12 14/24] scsi: ufs: mediatek: Use the common PHY framework Reply-To: sashiko-reviews@lists.linux.dev To: "Louis-Alexis Eyraud" Cc: devicetree@vger.kernel.org, vkoul@kernel.org, olteanv@gmail.com, linux-scsi@vger.kernel.org, neil.armstrong@linaro.org, linux-phy@lists.infradead.org, conor+dt@kernel.org, robh@kernel.org In-Reply-To: <20260914-mt8196-ufs-v12-14-9279d7ef814d@collabora.com> References: <20260914-mt8196-ufs-v12-0-9279d7ef814d@collabora.com> <20260914-mt8196-ufs-v12-14-9279d7ef814d@collabora.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Mon, 14 Sep 2026 12:58:40 +0000 Message-Id: <20260914125840.98F0D1F0089A@smtp.kernel.org> Precedence: bulk X-Mailing-List: linux-scsi@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Thank you for your contribution! Sashiko AI review found 2 potential issue(= s) to consider: New issues: - [High] Returning an error in `ufs_mtk_runtime_suspend` without rolling ba= ck the hardware state causes a fatal PM state desync. Pre-existing issues: - [High] `ufs_mtk_mphy_power_on` fails to update `mphy_powered_on` when ret= urning an error, permanently desynchronizing the PHY state. -- commit 090d0e1cc91ef448f0346929e47ee45484365fd1 Author: Nicolas Frattaroli scsi: ufs: mediatek: Use the common PHY framework This commit changes the driver to use the common PHY framework to acquire t= he device's PHY during initialization. This simplifies the driver by removing reinvented PHY framework code and OF parsing. > diff --git a/drivers/ufs/host/ufs-mediatek.c b/drivers/ufs/host/ufs-media= tek.c > index 3c10a9fd09dfc..538009e3b1f17 100644 > --- a/drivers/ufs/host/ufs-mediatek.c > +++ b/drivers/ufs/host/ufs-mediatek.c [ ... ] > @@ -2497,9 +2442,8 @@ static int ufs_mtk_system_resume(struct device *dev) > static int ufs_mtk_runtime_suspend(struct device *dev) > { > struct ufs_hba *hba =3D dev_get_drvdata(dev); > - struct ufs_mtk_host *host =3D ufshcd_get_variant(hba); > struct arm_smccc_res res; > - int ret =3D 0; > + int ret; > =20 > ret =3D ufshcd_runtime_suspend(dev); > if (ret) > @@ -2510,8 +2454,11 @@ static int ufs_mtk_runtime_suspend(struct device *= dev) > if (ufs_mtk_is_rtff_mtcmos(hba)) > ufs_mtk_mtcmos_ctrl(false, res); > =20 > - if (host->phy_dev) > - pm_runtime_put_sync(host->phy_dev); > + ret =3D ufs_mtk_mphy_power_on(hba, false); [Severity: High] This is a pre-existing issue, but ufs_mtk_mphy_power_on() fails to update mphy_powered_on when returning an error, which can permanently desynchronize the PHY state. Looking at ufs_mtk_mphy_power_on(): drivers/ufs/host/ufs-mediatek.c:ufs_mtk_mphy_power_on() { ... } else { phy_power_off(mphy); ret =3D ufs_mtk_09v_off(host); if (ret) return ret; } host->mphy_powered_on =3D on; return 0; } If ufs_mtk_09v_off() fails during power off, it returns the error immediate= ly, leaving host->mphy_powered_on as true. On the next resume, ufs_mtk_mphy_power_on(hba, true) will return early beca= use on =3D=3D host->mphy_powered_on, skipping phy_power_on(mphy). Can this permanently leave the PHY powered off and make the storage inaccessible? > + if (ret) { > + dev_err(dev, "Failed to power off PHY: %pe\n", ERR_PTR(ret)); > + return ret; [Severity: High] If ufs_mtk_mphy_power_on() fails, this returns an error immediately without rolling back the earlier suspend operations. Since the UFS hardware is already left physically suspended (clocks gated, VREGs and MTCMOS powered down via ufshcd_runtime_suspend and=20 ufs_mtk_dev_vreg_set_lpm), returning an error causes the PM core to mismatch the physical hardware state and consider the device active. Can this cause a fatal PM state desync, where subsequent I/O requests crash= or hang the bus because the PM core will skip calling runtime_resume? > + } > =20 > return 0; > } --=20 Sashiko AI review =C2=B7 https://sashiko.dev/#/patchset/20260914-mt8196-ufs= -v12-0-9279d7ef814d@collabora.com?part=3D14