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 081DFC43458 for ; Tue, 7 Jul 2026 15:56: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=iqqtY1pAUiDSXZ6mbI4hmMwAofLzNOpENk+a8aJkWro=; b=s0V9zhJkh5M38z qYH5OQ+kcgztspNluSGBhLf8HY/kDWvwTnwqrJx7AUhf1YlDJJmkp1EcaZPFjJ1IhdQODXsTT5IJS 50c7FNsHsob/HytAO7czWjQApb8t75PMfjdqU7lQvihZvXjDz7vft7aUrvj8HY5IzA4GG3MuMLDCM UGdAizY7sZYHlWl7ImjAy2UG/I6YerdFxFeWL/uD4D+EcxSNq8G0KoSeSc+V+gX4NILkQB945/Dsm 0VmV2+H7pmHowsf9d0xrIXhDvV3N+Ss45j6kXvDwhf7iIVQwUJruZFhX6BXNV9N7LOiQ5knjcMwqM 3tNulQsqe+evDSJ18zIQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wh89x-0000000FPSL-3Bx4; Tue, 07 Jul 2026 15:56:33 +0000 Received: from tor.source.kernel.org ([172.105.4.254]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wh89v-0000000FPRU-2x9N for linux-phy@lists.infradead.org; Tue, 07 Jul 2026 15:56:31 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 2901660018; Tue, 7 Jul 2026 15:56:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4F32C1F000E9; Tue, 7 Jul 2026 15:56:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783439790; bh=iToRQzCJGSGpsmCohncrGDPeqAQ4KQkL7v0RF5YxGpc=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=IaZLIMt27zZmthz7SceG/bsBUBl2NU85M5H05xIwvwE/3exbnUeU6wgPsSKwhxC4U IWsc6o5i4DrxhbK3IFAbAv1TMRk5RLzKiMZki92zmIn5UjJ6An1nP0UW32jYtwiPI/ x2UpG9qGVqELU09Ls7o9a0mBA9yacVOoIL152zDbgXNpxcaWvYV9YZ/SkkryBcj6Cb DK+fAOyg6ntexhCETwFocpfu9+3Rv//n09kf7f9BqxbQBvVDsuI9zix7gArYo85Zt4 iiw3M84Kb4Lsv+AB31GxegOoT9NC/S6oXobi401KOFttM584/qlWadxKBaxxTe/IoB EoEL0RFOw8uYQ== From: sashiko-bot@kernel.org Subject: Re: [PATCH v3 04/12] phy: phy-mtk-dp: Migrate register offsets to SoC specific pdata To: "AngeloGioacchino Del Regno" Cc: conor+dt@kernel.org, olteanv@gmail.com, dri-devel@lists.freedesktop.org, neil.armstrong@linaro.org, robh@kernel.org, devicetree@vger.kernel.org, vkoul@kernel.org, linux-phy@lists.infradead.org In-Reply-To: <20260707154245.198361-5-angelogioacchino.delregno@collabora.com> References: <20260707154245.198361-1-angelogioacchino.delregno@collabora.com> <20260707154245.198361-5-angelogioacchino.delregno@collabora.com> Date: Tue, 07 Jul 2026 15:56:29 +0000 Message-Id: <20260707155630.4F32C1F000E9@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 NCBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpOZXcgaXNzdWVzOgotIFtIaWdoXSBS ZWdpc3RlciBhY2Nlc3NlcyBhcmUgcGVyZm9ybWVkIGluIGBtdGtfZHBfcGh5X2NvbmZpZ3VyZSgp YCB3aGlsZSB0aGUgZGV2aWNlJ3MgUE0gcnVudGltZSBzdGF0ZSBpcyBzdXNwZW5kZWQsIHJpc2tp bmcgc3lzdGVtIGhhbmdzLgotIFtNZWRpdW1dIE1pc3NpbmcgdmFsaWRhdGlvbiBvZiBgZGV2aWNl X2dldF9tYXRjaF9kYXRhKClgIHJldHVybiB2YWx1ZSBjYW4gbGVhZCB0byBhIE5VTEwgcG9pbnRl ciBkZXJlZmVyZW5jZS4KLSBbTG93XSBJbnZhbGlkIGNvbXBvdW5kIGxpdGVyYWwgaW5pdGlhbGl6 YXRpb24gZm9yIHRoZSAnb2ZmX2RpZ19sYW5lJyBhcnJheSBtZW1iZXIgY2F1c2VzIGEgY29tcGls YXRpb24gZXJyb3IuCgpQcmUtZXhpc3RpbmcgaXNzdWVzOgotIFtIaWdoXSBUaGUgbGVnYWN5IHBy b2JlIHBhdGggdW5jb25kaXRpb25hbGx5IGRlcmVmZXJlbmNlcyBgZGV2LT5wbGF0Zm9ybV9kYXRh YCBiZWZvcmUgdmFsaWRhdGluZyB0aGF0IGl0IGlzIG5vdCBOVUxMLgotLQoKLS0tIFBhdGNoIFs0 XTogW1BBVENIIHYzIDA0LzEyXSBwaHk6IHBoeS1tdGstZHA6IE1pZ3JhdGUgcmVnaXN0ZXIgb2Zm c2V0cyB0byBTb0Mgc3BlY2lmaWMgcGRhdGEgLS0tCmNvbW1pdCBjNDlkMjIxZTU3YmY2YTk4MTZi NmNlNGU2OTFhMjA1NjRiYzY2ODk2CkF1dGhvcjogQW5nZWxvR2lvYWNjaGlubyBEZWwgUmVnbm8g PGFuZ2Vsb2dpb2FjY2hpbm8uZGVscmVnbm9AY29sbGFib3JhLmNvbT4KCnBoeTogcGh5LW10ay1k cDogTWlncmF0ZSByZWdpc3RlciBvZmZzZXRzIHRvIFNvQyBzcGVjaWZpYyBwZGF0YQoKSW4gcHJl cGFyYXRpb24gZm9yIGFkZGluZyBzdXBwb3J0IGZvciBuZXdlciBTb0NzIGFuZCBmb3IgYWRkaW5n Cm1vcmUgY2FwYWJpbGl0aWVzIHRvIHRoaXMgZHJpdmVyIGluIGFuIGVmZmljaWVudCBtYW5uZXIs IG1pZ3JhdGUKYWxsIG9mIHRoZSBoYXJkY29kZWQgcmVnaXN0ZXIgb2Zmc2V0cyB0byBTb0Mgc3Bl Y2lmaWMgcGRhdGEgYW5kCmFzc2lnbiB0aGF0IGZvciBib3RoIERUIGFuZCBwbGF0Zm9ybSBwcm9i aW5nLgoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9waHkvbWVkaWF0ZWsvcGh5LW10ay1kcC5jIGIv ZHJpdmVycy9waHkvbWVkaWF0ZWsvcGh5LW10ay1kcC5jCj4gaW5kZXggZDI0MTAwNGUyODI4Ni4u MjA5NzQ2NTBkOTQwOSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL3BoeS9tZWRpYXRlay9waHktbXRr LWRwLmMKPiArKysgYi9kcml2ZXJzL3BoeS9tZWRpYXRlay9waHktbXRrLWRwLmMKPiBAQCAtMTEx LDkgKzE3MywxMiBAQCBzdGF0aWMgaW50IG10a19kcF9waHlfaW5pdChzdHJ1Y3QgcGh5ICpwaHkp Cj4gIHN0YXRpYyBpbnQgbXRrX2RwX3BoeV9jb25maWd1cmUoc3RydWN0IHBoeSAqcGh5LCB1bmlv biBwaHlfY29uZmlndXJlX29wdHMgKm9wdHMpCj4gIHsKPiAgCXN0cnVjdCBtdGtfZHBfcGh5ICpk cF9waHkgPSBwaHlfZ2V0X2RydmRhdGEocGh5KTsKPiArCWNvbnN0IHN0cnVjdCBtdGtfZHBfcGh5 X3BkYXRhICpwZGF0YSA9IGRwX3BoeS0+cGRhdGE7Cj4gIAl1MzIgdmFsOwo+ICAKPiAgCWlmIChv cHRzLT5kcC5zZXRfcmF0ZSkgewo+ICsJCWNvbnN0IHUzMiByZWdfYml0X3JhdGUgPSBwZGF0YS0+ cmVnc19kaWdfZ2xiW0RQX1BIWURfQklUX1JBVEVdOwo+ICsKClsgLi4uIF0KCj4gLQkJcmVnbWFw X3dyaXRlKGRwX3BoeS0+cmVnbWFwLCBNVEtfRFBfUEhZX0RJR19CSVRfUkFURSwgdmFsKTsKPiAr CQlyZWdtYXBfd3JpdGUoZHBfcGh5LT5yZWdtYXAsIHBkYXRhLT5vZmZfZGlnX2dsYiArIHJlZ19i aXRfcmF0ZSwgdmFsKTsKPiAgCX0KPiAgCj4gLQlyZWdtYXBfdXBkYXRlX2JpdHMoZHBfcGh5LT5y ZWdtYXAsIE1US19EUF9QSFlfRElHX1BMTF9DVExfMSwKPiArCXJlZ21hcF91cGRhdGVfYml0cyhk cF9waHktPnJlZ21hcCwKPiArCQkJICAgcGRhdGEtPm9mZl9kaWdfZ2xiICsgcGRhdGEtPnJlZ3Nf ZGlnX2dsYltEUF9QSFlEX1BMTF9DVExfMV0sCj4gIAkJCSAgIFRQTExfU1NDX0VOLCBvcHRzLT5k cC5zc2MgPyBUUExMX1NTQ19FTiA6IDApOwoKW1NldmVyaXR5OiBIaWdoXQpTaW5jZSBwaHlfY29u ZmlndXJlKCkgaXMgbm90IHdyYXBwZWQgYnkgcGh5X3BtX3J1bnRpbWVfZ2V0X3N5bmMoKSBpbiB0 aGUKUEhZIGNvcmUsIGFuZCB0aGUgY29uc3VtZXIgZHJpdmVyIG1heSBub3QgY2FsbCBwaHlfcG93 ZXJfb24oKSBiZWZvcmUgdGhpcwpwb2ludCwgdGhlIFBIWSBQTSBydW50aW1lIHVzYWdlIGNvdW50 ZXIgbWlnaHQgcmVtYWluIDAgZHVyaW5nCm10a19kcF9waHlfY29uZmlndXJlKCkuCgpJZiB0aGUg UEhZIHBvd2VyIGRvbWFpbiBpcyB0dXJuZWQgb2ZmLCB3aWxsIHRoZXNlIHVuY2xvY2tlZCByZWdt YXBfd3JpdGUoKQphbmQgcmVnbWFwX3VwZGF0ZV9iaXRzKCkgY2FsbHMgY2F1c2UgdGhlIHN5c3Rl bSB0byBoYW5nPwoKU2hvdWxkIHRoZXJlIGJlIFBNIHJ1bnRpbWUgcHJvdGVjdGlvbiBhcm91bmQg dGhlc2UgcmVnaXN0ZXIgYWNjZXNzZXM/Cgo+ICAKPiAgCXJldHVybiAwOwo+ICB9CgpbIC4uLiBd Cgo+IEBAIC0xNzAsMTIgKzI0MSwxOSBAQCBzdGF0aWMgdm9pZCBtdGtfZHBfcGh5X2xlZ2FjeV9y ZW1vdmVfbG9va3VwKHZvaWQgKmRhdGEpCj4gIAlwaHlfcmVtb3ZlX2xvb2t1cChwaHksICJkcCIs IGRldl9uYW1lKGRwX3BoeS0+ZGV2KSk7Cj4gIH0KPiAgCj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg bXRrX2RwX3BoeV9wZGF0YSBtdDgxOTVfZHBfcGh5X2RhdGE7Cj4gKwo+ICBzdGF0aWMgaW50IG10 a19kcF9waHlfbGVnYWN5X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsIHN0cnVj dCBtdGtfZHBfcGh5ICpkcF9waHkpCj4gIHsKPiAgCXN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZGV2 LT5kZXY7Cj4gIAlzdHJ1Y3QgcGh5ICpwaHk7Cj4gIAlpbnQgcmV0Owo+ICAKPiArCS8qCj4gKwkg KiBJZiBsZWdhY3kgcGxhdGZvcm0gZHJpdmVyIHByb2JlLCBhc3N1bWUgdGhpcyBpcyBNVDgxOTUg b3IgY29tcGF0aWJsZQo+ICsJICogd2l0aCBhIGRldmljZXRyZWUgdGhhdCB3YXMgbm90IG1pZ3Jh dGVkIHRvIHRoZSBuZXcsIHByb3BlciBiaW5kaW5ncy4KPiArCSAqLwo+ICsJZHBfcGh5LT5wZGF0 YSA9ICZtdDgxOTVfZHBfcGh5X2RhdGE7Cj4gIAlkcF9waHktPnJlZ21hcCA9ICooc3RydWN0IHJl Z21hcCAqKilkZXYtPnBsYXRmb3JtX2RhdGE7CgpbU2V2ZXJpdHk6IEhpZ2hdClRoaXMgaXMgYSBw cmUtZXhpc3RpbmcgaXNzdWUsIGJ1dCBkZXYtPnBsYXRmb3JtX2RhdGEgaXMgdW5jb25kaXRpb25h bGx5CmRlcmVmZXJlbmNlZCBoZXJlIGJlZm9yZSBpdCBpcyBjaGVja2VkIGZvciBOVUxMLgoKSWYg dGhpcyBsZWdhY3kgcHJvYmUgcGF0aCBpcyB0cmlnZ2VyZWQgd2l0aG91dCBwbGF0Zm9ybV9kYXRh IHByb3ZpZGVkIChmb3IKZXhhbXBsZSwgdmlhIHRoZSBzeXNmcyBuZXdfZGV2aWNlIGludGVyZmFj ZSksIHdvbid0IHRoaXMgY2F1c2UgYW4gaW1tZWRpYXRlCk5VTEwgcG9pbnRlciBkZXJlZmVyZW5j ZT8KCj4gIAlpZiAoIWRwX3BoeS0+cmVnbWFwKQo+ICAJCXJldHVybiBkZXZfZXJyX3Byb2JlKGRl diwgLUVJTlZBTCwgIk5vIHBsYXRmb3JtIGRhdGEgYXZhaWxhYmxlXG4iKTsKClsgLi4uIF0KCj4g QEAgLTIzNSw2ICszMTMsOCBAQCBzdGF0aWMgaW50IG10a19kcF9waHlfcHJvYmUoc3RydWN0IHBs YXRmb3JtX2RldmljZSAqcGRldikKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJuIHJldDsKPiAgCj4g KwlkcF9waHktPnBkYXRhID0gZGV2aWNlX2dldF9tYXRjaF9kYXRhKGRldik7Cj4gKwoKW1NldmVy aXR5OiBNZWRpdW1dCklmIGEgdXNlciBiaW5kcyB0aGUgbWVkaWF0ZWstZHAtcGh5IGRyaXZlciB2 aWEgc3lzZnMgdG8gYSBwbGF0Zm9ybSBkZXZpY2UKdGhhdCBkb2Vzbid0IG1hdGNoIHRoZSBkcml2 ZXIncyBjb21wYXRpYmxlIHN0cmluZ3MsIGRldmljZV9nZXRfbWF0Y2hfZGF0YSgpCndpbGwgcmV0 dXJuIE5VTEwuCgpEb2VzIHRoaXMgbmVlZCBhIE5VTEwgY2hlY2sgYmVmb3JlIHN0b3JpbmcgaXQg aW4gZHBfcGh5LT5wZGF0YT8KCldpdGhvdXQgdmFsaWRhdGlvbiwgc3Vic2VxdWVudCBQSFkgb3Bl cmF0aW9ucyBsaWtlIG10a19kcF9waHlfaW5pdCgpIHdpbGwKZGVyZWZlcmVuY2UgdGhlIE5VTEwg cG9pbnRlciBhbmQgY3Jhc2guCgo+ICAJcGh5ID0gZGV2bV9waHlfY3JlYXRlKGRldiwgTlVMTCwg Jm10a19kcF9waHlfZGV2X29wcyk7Cj4gIAlpZiAoSVNfRVJSKHBoeSkpCj4gIAkJcmV0dXJuIGRl dl9lcnJfcHJvYmUoZGV2LCBQVFJfRVJSKHBoeSksCgpbIC4uLiBdCgo+IEBAIC0yNDksOCArMzI5 LDE1IEBAIHN0YXRpYyBpbnQgbXRrX2RwX3BoeV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2KQo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgbXRr X2RwX3BoeV9wZGF0YSBtdDgxOTVfZHBfcGh5X2RhdGEgPSB7Cj4gKwkub2ZmX2RpZ19nbGIgPSAw eDEwMDAsCj4gKwkub2ZmX2RpZ19sYW5lID0gKGNvbnN0IHUxNltdKSB7IDB4MTEwMCwgMHgxMjAw LCAweDEzMDAsIDB4MTQwMCB9LAoKW1NldmVyaXR5OiBMb3ddCklzIHRoaXMgY29tcG91bmQgbGl0 ZXJhbCBpbml0aWFsaXphdGlvbiB2YWxpZCBmb3IgYW4gYXJyYXkgc3RydWN0IG1lbWJlcj8KCkNv bXBpbGluZyB0aGlzIHdpdGggR0NDIG9yIENsYW5nIG1heSB0aHJvdyBhbiBpbnZhbGlkIGluaXRp YWxpemVyIGVycm9yCmJlY2F1c2UgQzk5IHJlcXVpcmVzIGFycmF5IG1lbWJlcnMgdG8gYmUgaW5p dGlhbGl6ZWQgZGlyZWN0bHkgd2l0aApicmFjZS1lbmNsb3NlZCBsaXN0cyByYXRoZXIgdGhhbiBj b21wb3VuZCBsaXRlcmFsIGV4cHJlc3Npb25zLgoKPiArCS5yZWdzX2RpZ19nbGIgPSBtdDgxOTVf cGh5X2RpZ19nbGJfcmVncywKPiArCS5yZWdzX2RpZ19sYW5lID0gbXQ4MTk1X3BoeV9kaWdfbGFu ZV9yZWdzLAo+ICt9OwoKLS0gClNhc2hpa28gQUkgcmV2aWV3IMK3IGh0dHBzOi8vc2FzaGlrby5k ZXYvIy9wYXRjaHNldC8yMDI2MDcwNzE1NDI0NS4xOTgzNjEtMS1hbmdlbG9naW9hY2NoaW5vLmRl bHJlZ25vQGNvbGxhYm9yYS5jb20/cGFydD00CgotLSAKbGludXgtcGh5IG1haWxpbmcgbGlzdAps aW51eC1waHlAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwczovL2xpc3RzLmluZnJhZGVhZC5vcmcv bWFpbG1hbi9saXN0aW5mby9saW51eC1waHkK 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 2AD31223DE9 for ; Tue, 7 Jul 2026 15:56:30 +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=1783439792; cv=none; b=ZalYFOGlNbJbYH+eVWAr6CDSHtuOXay2VyMXlAXHFlkEjW3luVrY4a4Z5MZ8FBoTx59dseBzrYKW20RLqPzuunI1U8q5VzbXESgpYFHkAnAvrI/K49dSvu1RMEjQga7ILJTwJmwTihaq7DwdwIbG7TdWOe3snzS9FXWAjcm87To= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783439792; c=relaxed/simple; bh=/31DxSVJQvEyvIqS1vJCpB6R60nx1wQmPauH1Q6RjeM=; h=From:Subject:To:Cc:In-Reply-To:References:Content-Type:Date: Message-Id; b=iriiWIGLBWb6nhLlls3poS28jdON0vRdg6z64KBI4V2ksHkLadziHFGqeqcSWjzCgsWebzyrI+eQxdBcx3UL7DvUAsijwe7KVhgQzeUZzT8cEcqnkYfjU59uuZ1k+8pJtQbV3YIm1q+XXqDlIm4tD0AwSnKOX1ZQ0msTHFayko8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=IaZLIMt2; 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="IaZLIMt2" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4F32C1F000E9; Tue, 7 Jul 2026 15:56:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783439790; bh=iToRQzCJGSGpsmCohncrGDPeqAQ4KQkL7v0RF5YxGpc=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=IaZLIMt27zZmthz7SceG/bsBUBl2NU85M5H05xIwvwE/3exbnUeU6wgPsSKwhxC4U IWsc6o5i4DrxhbK3IFAbAv1TMRk5RLzKiMZki92zmIn5UjJ6An1nP0UW32jYtwiPI/ x2UpG9qGVqELU09Ls7o9a0mBA9yacVOoIL152zDbgXNpxcaWvYV9YZ/SkkryBcj6Cb DK+fAOyg6ntexhCETwFocpfu9+3Rv//n09kf7f9BqxbQBvVDsuI9zix7gArYo85Zt4 iiw3M84Kb4Lsv+AB31GxegOoT9NC/S6oXobi401KOFttM584/qlWadxKBaxxTe/IoB EoEL0RFOw8uYQ== From: sashiko-bot@kernel.org Subject: Re: [PATCH v3 04/12] phy: phy-mtk-dp: Migrate register offsets to SoC specific pdata Reply-To: sashiko-reviews@lists.linux.dev To: "AngeloGioacchino Del Regno" Cc: conor+dt@kernel.org, olteanv@gmail.com, dri-devel@lists.freedesktop.org, neil.armstrong@linaro.org, robh@kernel.org, devicetree@vger.kernel.org, vkoul@kernel.org, linux-phy@lists.infradead.org In-Reply-To: <20260707154245.198361-5-angelogioacchino.delregno@collabora.com> References: <20260707154245.198361-1-angelogioacchino.delregno@collabora.com> <20260707154245.198361-5-angelogioacchino.delregno@collabora.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Tue, 07 Jul 2026 15:56:29 +0000 Message-Id: <20260707155630.4F32C1F000E9@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 4 potential issue(= s) to consider: New issues: - [High] Register accesses are performed in `mtk_dp_phy_configure()` while = the device's PM runtime state is suspended, risking system hangs. - [Medium] Missing validation of `device_get_match_data()` return value can= lead to a NULL pointer dereference. - [Low] Invalid compound literal initialization for the 'off_dig_lane' arra= y member causes a compilation error. Pre-existing issues: - [High] The legacy probe path unconditionally dereferences `dev->platform_= data` before validating that it is not NULL. -- --- Patch [4]: [PATCH v3 04/12] phy: phy-mtk-dp: Migrate register offsets t= o SoC specific pdata --- commit c49d221e57bf6a9816b6ce4e691a20564bc66896 Author: AngeloGioacchino Del Regno phy: phy-mtk-dp: Migrate register offsets to SoC specific pdata In preparation for adding support for newer SoCs and for adding more capabilities to this driver in an efficient manner, migrate all of the hardcoded register offsets to SoC specific pdata and assign that for both DT and platform probing. > diff --git a/drivers/phy/mediatek/phy-mtk-dp.c b/drivers/phy/mediatek/phy= -mtk-dp.c > index d241004e28286..20974650d9409 100644 > --- a/drivers/phy/mediatek/phy-mtk-dp.c > +++ b/drivers/phy/mediatek/phy-mtk-dp.c > @@ -111,9 +173,12 @@ static int mtk_dp_phy_init(struct phy *phy) > static int mtk_dp_phy_configure(struct phy *phy, union phy_configure_opt= s *opts) > { > struct mtk_dp_phy *dp_phy =3D phy_get_drvdata(phy); > + const struct mtk_dp_phy_pdata *pdata =3D dp_phy->pdata; > u32 val; > =20 > if (opts->dp.set_rate) { > + const u32 reg_bit_rate =3D pdata->regs_dig_glb[DP_PHYD_BIT_RATE]; > + [ ... ] > - regmap_write(dp_phy->regmap, MTK_DP_PHY_DIG_BIT_RATE, val); > + regmap_write(dp_phy->regmap, pdata->off_dig_glb + reg_bit_rate, val); > } > =20 > - regmap_update_bits(dp_phy->regmap, MTK_DP_PHY_DIG_PLL_CTL_1, > + regmap_update_bits(dp_phy->regmap, > + pdata->off_dig_glb + pdata->regs_dig_glb[DP_PHYD_PLL_CTL_1], > TPLL_SSC_EN, opts->dp.ssc ? TPLL_SSC_EN : 0); [Severity: High] Since phy_configure() is not wrapped by phy_pm_runtime_get_sync() in the PHY core, and the consumer driver may not call phy_power_on() before this point, the PHY PM runtime usage counter might remain 0 during mtk_dp_phy_configure(). If the PHY power domain is turned off, will these unclocked regmap_write() and regmap_update_bits() calls cause the system to hang? Should there be PM runtime protection around these register accesses? > =20 > return 0; > } [ ... ] > @@ -170,12 +241,19 @@ static void mtk_dp_phy_legacy_remove_lookup(void *d= ata) > phy_remove_lookup(phy, "dp", dev_name(dp_phy->dev)); > } > =20 > +static const struct mtk_dp_phy_pdata mt8195_dp_phy_data; > + > static int mtk_dp_phy_legacy_probe(struct platform_device *pdev, struct = mtk_dp_phy *dp_phy) > { > struct device *dev =3D &pdev->dev; > struct phy *phy; > int ret; > =20 > + /* > + * If legacy platform driver probe, assume this is MT8195 or compatible > + * with a devicetree that was not migrated to the new, proper bindings. > + */ > + dp_phy->pdata =3D &mt8195_dp_phy_data; > dp_phy->regmap =3D *(struct regmap **)dev->platform_data; [Severity: High] This is a pre-existing issue, but dev->platform_data is unconditionally dereferenced here before it is checked for NULL. If this legacy probe path is triggered without platform_data provided (for example, via the sysfs new_device interface), won't this cause an immediate NULL pointer dereference? > if (!dp_phy->regmap) > return dev_err_probe(dev, -EINVAL, "No platform data available\n"); [ ... ] > @@ -235,6 +313,8 @@ static int mtk_dp_phy_probe(struct platform_device *p= dev) > if (ret) > return ret; > =20 > + dp_phy->pdata =3D device_get_match_data(dev); > + [Severity: Medium] If a user binds the mediatek-dp-phy driver via sysfs to a platform device that doesn't match the driver's compatible strings, device_get_match_data() will return NULL. Does this need a NULL check before storing it in dp_phy->pdata? Without validation, subsequent PHY operations like mtk_dp_phy_init() will dereference the NULL pointer and crash. > phy =3D devm_phy_create(dev, NULL, &mtk_dp_phy_dev_ops); > if (IS_ERR(phy)) > return dev_err_probe(dev, PTR_ERR(phy), [ ... ] > @@ -249,8 +329,15 @@ static int mtk_dp_phy_probe(struct platform_device *= pdev) > return 0; > } > =20 > +static const struct mtk_dp_phy_pdata mt8195_dp_phy_data =3D { > + .off_dig_glb =3D 0x1000, > + .off_dig_lane =3D (const u16[]) { 0x1100, 0x1200, 0x1300, 0x1400 }, [Severity: Low] Is this compound literal initialization valid for an array struct member? Compiling this with GCC or Clang may throw an invalid initializer error because C99 requires array members to be initialized directly with brace-enclosed lists rather than compound literal expressions. > + .regs_dig_glb =3D mt8195_phy_dig_glb_regs, > + .regs_dig_lane =3D mt8195_phy_dig_lane_regs, > +}; --=20 Sashiko AI review =C2=B7 https://sashiko.dev/#/patchset/20260707154245.1983= 61-1-angelogioacchino.delregno@collabora.com?part=3D4