From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 974AB606A31C for ; Wed, 21 Oct 2026 08:04:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=bmQE/vtQ; dkim=pass (2048-bit key, unprotected) header.d=sntech.de header.i=@sntech.de header.a=rsa-sha256 header.s=gloria202408 header.b=bDpM4kwH DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type: Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date :Subject:Cc:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Dpk6oZW2/pIfMTZ5y5HTyizlc9Lr7d1oiu8c5BoQlkY=; b=bmQE/vtQXX2YmQku/pm+07fsTb faJOZwipCgJuYwEETCxBIkdXTIybTTZrGfv2D1m/lyKV0d8LT642OJCra8HKtMRitQP7ciAJhgwCf 5E0kLxTosp53gspupuF8oHTl7NtU4WZTBGzsh3aIYDMgcrmk4wHxQ+dA39WF/s123rgZpp7xviUiO qGYLuLwczszmrBOR8kh1qaHULvnJVGgReKFiMTcrn6/jcLk3qa16porDpnOigRBDL1djWtsmb6nzD TAbjp7TD10GdT0V47cfUYmnRqoAANjbL9x4EwemKMhC/ne+Kp0b7+YkZr5KJGV2UxqgZqRGJBq++e TdzOkzGw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xJRIt-0000000BICV-3FrE; Wed, 21 Oct 2026 08:04:07 +0000 Received: from gloria.sntech.de ([185.11.138.130]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xJRIr-0000000BIBR-1pmw; Wed, 21 Oct 2026 08:04:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sntech.de; s=gloria202408; h=Content-Type:Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Reply-To; bh=Dpk6oZW2/pIfMTZ5y5HTyizlc9Lr7d1oiu8c5BoQlkY=; b=bDpM4kwHriQ1sFZK2YGUYqM+SJ Ls2GKe9T6Q16wdIVF0sIzmbdiO7gAx2lt4lCag3lyfSN1GaGRIKVpJwultXZbxL0u5mQGwvtc0TQD JXvZG/E5H3HNZjKKqYq4rXaXbCX2zNEpYfY5qPiiWbyzxhey/mkyqwG9lfBlVMWco0SPcM9A2l6ii b0nSfG/YGAAB1uwEdpfxgbiIMeezk3BB817qsMBw7BJvnQ3jldRGTUXcmfQtYMdl/R3NyB74ykCS5 Qd7zOjXD/EnxwWM2+rji23j/ZoKJnaub74Vpm2N8aNUxp7beklzAqa9M/+tzxAuKonma76t0gIQTo awv8ofqw==; From: Heiko =?UTF-8?B?U3TDvGJuZXI=?= To: Rob Herring Cc: =?UTF-8?B?5qWK5pm65oiQ?= , Michael Riesch , Krzysztof Kozlowski , Vinod Koul , Neil Armstrong , Manivannan Sadhasivam , Krzysztof Kozlowski , Conor Dooley , Guochun Huang , Philipp Zabel , Sebastian Reichel , Bryan O'Donoghue , linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v5 2/8] dt-bindings: phy: rockchip,rk3588-mipi-dcphy: Add a cell to select TX or RX Date: Wed, 21 Oct 2026 10:03:45 +0200 Message-ID: <3435698.oiGErgHkdL@diego> In-Reply-To: <20261021024239.GA3667411-robh@kernel.org> References: <20261016-dcphy-rx-v1-v5-0-e63b49eabe2d@gmail.com> <25254818.ouqheUzb2q@diego> <20261021024239.GA3667411-robh@kernel.org> X-Archived-By: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20261021_010405_677564_6EA5D4D2 X-CRM114-Status: GOOD ( 61.89 ) X-Spam-Score: -2.1 (--) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" X-Spam-Status: No, score=-6.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on aws-us-west-2-korg-listserv-alma10-1 Am Mittwoch, 21. Oktober 2026, 04:42:39 Mitteleurop=C3=A4ische Sommerzeit s= chrieb Rob Herring: > On Tue, Oct 20, 2026 at 04:57:34PM +0200, Heiko St=C3=BCbner wrote: > > Am Dienstag, 20. Oktober 2026, 16:10:39 Mitteleurop=C3=A4ische Sommerze= it schrieb Rob Herring: > > > On Tue, Oct 20, 2026 at 03:37:35PM +0200, Heiko St=C3=BCbner wrote: > > > > Am Dienstag, 20. Oktober 2026, 00:20:47 Mitteleurop=C3=A4ische Somm= erzeit schrieb Michael Riesch: > > > > > Hi all, > > > > >=20 > > > > > On 10/19/26 17:06, Rob Herring wrote: > > > > > > On Mon, Oct 19, 2026 at 04:15:03PM +0800, =E6=A5=8A=E6=99=BA=E6= =88=90 wrote: > > > > > >> Hi Krzysztof, Rob, > > > > > >> > > > > > >>> Existing OS should ignore surplus cell if the driver is coded= properly. > > > > > >>> Same as adding new properties or new front-compatible. The q= uestion is > > > > > >>> how the existing driver behaves? > > > > > >> > > > > > >> As you pointed out on 5/8, the xlate checks args_count !=3D 1.= The DC-PHY > > > > > >> driver was merged in v6.15, so every kernel since 6.15 fails o= n a second cell. > > > > > >> > > > > > >> 1. Keep the second cell. Add the patch as follows: > > > > > >> > > > > > >> - if (args->args_count !=3D 1) { > > > > > >> + if (args->args_count < 1) { > > > > > >> dev_err(dev, "invalid number of arguments\n"); > > > > > >> return ERR_PTR(-EINVAL); > > > > > >> } > > > > > >> > > > > > >> + if (args->args_count > 1 && args->args[1]) { > > > > > >> + dev_err(dev, "only the transmitter is supported\n"); > > > > > >> + return ERR_PTR(-EINVAL); > > > > > >> + } > > > > > >> > > > > > >> With Fixes: and Cc: stable, the stable kernels maintained at= that > > > > > >> time (currently 6.18.y and 7.2.y) keep DSI working with the = new > > > > > >> dts, and the receiver fails cleanly instead of getting the t= ransmitter. > > > > > >> But EOL kernels (6.15, 6.16, 6.17, 6.19, 7.0, 7.1) stay affe= cted. > > > > > >> It goes in with the series, since two-cell dts only exist af= ter it. > > > > > >> > > > > > >> 2. Use a flag in the upper bits of the existing cell, as Rob > > > > > >> suggested. Existing kernels are not affected, unless a boa= rd enables > > > > > >> the DC-PHY CSI-2 receiver on 7.0 or later without this ser= ies. > > > > > >> > > > > > >> I will write the impact clearly whichever approach is selecte= d in > > > > > >> the related commit messages and the cover letter. > > > > > >> > > > > > >> I think the cell approach is easier to read and more symmetric= in the > > > > > >> long term, > > > > > >> but it breaks more. Which one do you think is better? Thanks. > > > > > >=20 > > > > > > I'm not a user of this platform, so I don't care. Up to the pla= tform=20 > > > > > > maintainers to decide if breakage is acceptible. You just need = to=20 > > > > > > document the issue in the commit message. > > > > > >=20 > > > > > > Rob > > > > >=20 > > > > > It's a bit of a pickle, all this. > > > > >=20 > > > > > I gave it some more thought. In the end this is an IP block with = two > > > > > PHYs. No more, no less. One cell is sufficient to address those, = and it > > > > > could be 0 for the transmitting PHY (DSI, display) and 1 for the > > > > > receiving PHY (CSI, camera). > > > > >=20 > > > > > Of course the two PHYs can operate in either DPHY or CPHY mode. T= he > > > > > phy-cells have been (mis?)used to select the proper mode of combo= PHYs, > > > > > and this principle has been applied here too. > > > > >=20 > > > > > However, we have the special situation here that the mode can onl= y be > > > > > changed for the complete IP block (and thus for both PHYs at the = same > > > > > time). As Bryan points out, we need to check and complain if the = PHY > > > > > mode is not set to the same value for both PHYs. > > > > >=20 > > > > > I suggest using a property > > > > > samsung,cphy-mode; > > > >=20 > > > > I guess, a maybe nicer way would be mimicing > > > > Documentation/devicetree/bindings/phy/intel,combo-phy.yaml > > > >=20 > > > > with its > > > > intel,phy-mode =3D > > > >=20 > > > > with x coming from include/dt-bindings/phy/phy.h > > > > for the distinction between cphy and dphy, so we don't introduce yet > > > > another way to describe this. > > >=20 > > > We already have the plain 'phy-type' property which takes the same=20 > > > PHY_MODE_x values. We don't need yet another vendor specific property. > >=20 > > even better then ... and I didn't look deep enough it seems. > >=20 > >=20 > > > > > (name to be bikeshedded) that sets the complete IP block into CPH= Y mode > > > > > (DPHY being the default) to distinguish between the modes. Since = both > > > > > modes use a different electrical interface, this is clearly a har= dware > > > > > thing and thus suitable for device tree. > > > > >=20 > > > > > Then, we can address the two PHYs with the help of the already ex= isting > > > > > phy cell (without any bitflag tweaks to the value). > > > > >=20 > > > > > The sole drawback is that we need to accept the PHY_TYPE_DPHY and > > > > > PHY_TYPE_CPHY values that some OS in the field might pass. (For L= inux, > > > > > it should only be the former.) And we need to handle those values > > > > > correctly. But I think this is not more painful than the other > > > > > approaches. At the same time, this design seems to be the most co= rrect > > > >=20 > > > > The current cell values are 10 + 11, so as long as we don't re-use = those > > > > exact values for the other constants the driver should somewhat eas= ily > > > > be able to recognize an old DT? > > >=20 > > > I think you will still have an ABI issue of what does old OS do with = new=20 > > > values? > >=20 > > wasn't the main contract, a newer kernel should support old DTs ? >=20 > Well, yes, it was. That was a position I inherited. I hear complaints=20 > about the opposite though. >=20 > > Aka the DT is parked in some firmware part (u-boot?) and gets handed > > to the newer kernel. > >=20 > > I don't see deliberately handing a newer DTB to an older kernel as a > > very common occurence? >=20 > Do you want things to break when you do a firmware update that's picked=20 > up a newer DT? I don't. >=20 >=20 > > And from a practical standpoint: > >=20 > > We're talking about devices with DSI displays that are at stake here, > > so we're in the embedded world. > >=20 > > In other areas we're still fighting basic functionality like actually > > handling the type-c orientation correctly in the usbphy. > >=20 > > So I really don't see a device with a user-updateable mainline kernel o= ut > > in the field, apart from people hacking around on their devices to try > > out new features and new kernels, simply because core functionality > > is still evolving in mainline. > >=20 > >=20 > > RK3576/RK3588 devices still ship with a vendor u-boot/kernel, with > > completely incompatible DTB afterall. >=20 > I can only keep my own house clean... ok :-)=20 > I only ask that compatibility issues be documented. Up to individual=20 > platforms to decide if they care or not. So, your decision. The discussion would be a lot different for SoCs like the RK3399 or PX30 that can and have run mainline software in a usable way for years now. RK3568 very likely falls in that area too. But for the in-progress SoCs RK3576 and RK3588 anybody wanting to run a generic userspace would need a heavily patched kernel anyway, with other unreviewed/unmerged dt-changes, so personally I can live with it. Especially if we keep the (in my eyes) more common case (old dtb, new kernel) working. Heiko From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B0494606A325 for ; Wed, 21 Oct 2026 08:04:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=sQAPkNAP; dkim=fail reason="signature verification failed" (2048-bit key, unprotected) header.d=sntech.de header.i=@sntech.de header.a=rsa-sha256 header.s=gloria202408 header.b=bDpM4kwH 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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=xbBhm4W/XSEI5w+TvBDifUAnaGfJj87vfdCptkddddw=; b=sQAPkNAPP2g1VI HxF1ton7imlQHng45mZDWFi9/8q1iiL79dJRGiBKQz+EA/elRGZhXv5/PTzAJjbDuC6pnS9p0W+Tj yij1UBY56CnVZ/118h/6QQT393XV/kXqQ6Gu8ve9XPYjVMRW0slqV4wqaDssQLfnf+3BQKHclFcTq jRTq0Hry6KGSj4HBA2VTrr8fhea4RGJblX1x7udRU/GG/T9y5ItnWIqJfCaVZoEvrdNuGNuQl1tgn 8ulZpYBVNqh8gxCwWFDAYmKEAZUUH3rXFuW05oTmW4fA8WwmEp05GrZQ7dBted3s5wWPLccr+Kim+ Dmch8+f7HwqeVgE8NDhg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xJRIt-0000000BICe-3tNN; Wed, 21 Oct 2026 08:04:07 +0000 Received: from gloria.sntech.de ([185.11.138.130]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xJRIr-0000000BIBR-1pmw; Wed, 21 Oct 2026 08:04:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sntech.de; s=gloria202408; h=Content-Type:Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Reply-To; bh=Dpk6oZW2/pIfMTZ5y5HTyizlc9Lr7d1oiu8c5BoQlkY=; b=bDpM4kwHriQ1sFZK2YGUYqM+SJ Ls2GKe9T6Q16wdIVF0sIzmbdiO7gAx2lt4lCag3lyfSN1GaGRIKVpJwultXZbxL0u5mQGwvtc0TQD JXvZG/E5H3HNZjKKqYq4rXaXbCX2zNEpYfY5qPiiWbyzxhey/mkyqwG9lfBlVMWco0SPcM9A2l6ii b0nSfG/YGAAB1uwEdpfxgbiIMeezk3BB817qsMBw7BJvnQ3jldRGTUXcmfQtYMdl/R3NyB74ykCS5 Qd7zOjXD/EnxwWM2+rji23j/ZoKJnaub74Vpm2N8aNUxp7beklzAqa9M/+tzxAuKonma76t0gIQTo awv8ofqw==; From: Heiko =?UTF-8?B?U3TDvGJuZXI=?= To: Rob Herring Cc: =?UTF-8?B?5qWK5pm65oiQ?= , Michael Riesch , Krzysztof Kozlowski , Vinod Koul , Neil Armstrong , Manivannan Sadhasivam , Krzysztof Kozlowski , Conor Dooley , Guochun Huang , Philipp Zabel , Sebastian Reichel , Bryan O'Donoghue , linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v5 2/8] dt-bindings: phy: rockchip,rk3588-mipi-dcphy: Add a cell to select TX or RX Date: Wed, 21 Oct 2026 10:03:45 +0200 Message-ID: <3435698.oiGErgHkdL@diego> In-Reply-To: <20261021024239.GA3667411-robh@kernel.org> References: <20261016-dcphy-rx-v1-v5-0-e63b49eabe2d@gmail.com> <25254818.ouqheUzb2q@diego> <20261021024239.GA3667411-robh@kernel.org> X-Archived-By: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20261021_010405_677564_6EA5D4D2 X-CRM114-Status: GOOD ( 61.89 ) X-Spam-Score: -2.1 (--) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" X-Spam-Status: No, score=-4.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on aws-us-west-2-korg-listserv-alma10-1 QW0gTWl0dHdvY2gsIDIxLiBPa3RvYmVyIDIwMjYsIDA0OjQyOjM5IE1pdHRlbGV1cm9ww6Rpc2No ZSBTb21tZXJ6ZWl0IHNjaHJpZWIgUm9iIEhlcnJpbmc6Cj4gT24gVHVlLCBPY3QgMjAsIDIwMjYg YXQgMDQ6NTc6MzRQTSArMDIwMCwgSGVpa28gU3TDvGJuZXIgd3JvdGU6Cj4gPiBBbSBEaWVuc3Rh ZywgMjAuIE9rdG9iZXIgMjAyNiwgMTY6MTA6MzkgTWl0dGVsZXVyb3DDpGlzY2hlIFNvbW1lcnpl aXQgc2NocmllYiBSb2IgSGVycmluZzoKPiA+ID4gT24gVHVlLCBPY3QgMjAsIDIwMjYgYXQgMDM6 Mzc6MzVQTSArMDIwMCwgSGVpa28gU3TDvGJuZXIgd3JvdGU6Cj4gPiA+ID4gQW0gRGllbnN0YWcs IDIwLiBPa3RvYmVyIDIwMjYsIDAwOjIwOjQ3IE1pdHRlbGV1cm9ww6Rpc2NoZSBTb21tZXJ6ZWl0 IHNjaHJpZWIgTWljaGFlbCBSaWVzY2g6Cj4gPiA+ID4gPiBIaSBhbGwsCj4gPiA+ID4gPiAKPiA+ ID4gPiA+IE9uIDEwLzE5LzI2IDE3OjA2LCBSb2IgSGVycmluZyB3cm90ZToKPiA+ID4gPiA+ID4g T24gTW9uLCBPY3QgMTksIDIwMjYgYXQgMDQ6MTU6MDNQTSArMDgwMCwg5qWK5pm65oiQIHdyb3Rl Ogo+ID4gPiA+ID4gPj4gSGkgS3J6eXN6dG9mLCBSb2IsCj4gPiA+ID4gPiA+Pgo+ID4gPiA+ID4g Pj4+IEV4aXN0aW5nIE9TIHNob3VsZCBpZ25vcmUgc3VycGx1cyBjZWxsIGlmIHRoZSBkcml2ZXIg aXMgY29kZWQgcHJvcGVybHkuCj4gPiA+ID4gPiA+Pj4gU2FtZSBhcyBhZGRpbmcgbmV3IHByb3Bl cnRpZXMgb3IgbmV3IGZyb250LWNvbXBhdGlibGUuICBUaGUgcXVlc3Rpb24gaXMKPiA+ID4gPiA+ ID4+PiBob3cgdGhlIGV4aXN0aW5nIGRyaXZlciBiZWhhdmVzPwo+ID4gPiA+ID4gPj4KPiA+ID4g PiA+ID4+IEFzIHlvdSBwb2ludGVkIG91dCBvbiA1LzgsIHRoZSB4bGF0ZSBjaGVja3MgYXJnc19j b3VudCAhPSAxLiBUaGUgREMtUEhZCj4gPiA+ID4gPiA+PiBkcml2ZXIgd2FzIG1lcmdlZCBpbiB2 Ni4xNSwgc28gZXZlcnkga2VybmVsIHNpbmNlIDYuMTUgZmFpbHMgb24gYSBzZWNvbmQgY2VsbC4K PiA+ID4gPiA+ID4+Cj4gPiA+ID4gPiA+PiAxLiBLZWVwIHRoZSBzZWNvbmQgY2VsbC4gQWRkIHRo ZSBwYXRjaCBhcyBmb2xsb3dzOgo+ID4gPiA+ID4gPj4KPiA+ID4gPiA+ID4+IC0gaWYgKGFyZ3Mt PmFyZ3NfY291bnQgIT0gMSkgewo+ID4gPiA+ID4gPj4gKyBpZiAoYXJncy0+YXJnc19jb3VudCA8 IDEpIHsKPiA+ID4gPiA+ID4+ICAgICBkZXZfZXJyKGRldiwgImludmFsaWQgbnVtYmVyIG9mIGFy Z3VtZW50c1xuIik7Cj4gPiA+ID4gPiA+PiAgICAgcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7Cj4g PiA+ID4gPiA+PiAgIH0KPiA+ID4gPiA+ID4+Cj4gPiA+ID4gPiA+PiArIGlmIChhcmdzLT5hcmdz X2NvdW50ID4gMSAmJiBhcmdzLT5hcmdzWzFdKSB7Cj4gPiA+ID4gPiA+PiArICAgZGV2X2Vycihk ZXYsICJvbmx5IHRoZSB0cmFuc21pdHRlciBpcyBzdXBwb3J0ZWRcbiIpOwo+ID4gPiA+ID4gPj4g KyAgIHJldHVybiBFUlJfUFRSKC1FSU5WQUwpOwo+ID4gPiA+ID4gPj4gKyB9Cj4gPiA+ID4gPiA+ Pgo+ID4gPiA+ID4gPj4gICBXaXRoIEZpeGVzOiBhbmQgQ2M6IHN0YWJsZSwgdGhlIHN0YWJsZSBr ZXJuZWxzIG1haW50YWluZWQgYXQgdGhhdAo+ID4gPiA+ID4gPj4gICB0aW1lIChjdXJyZW50bHkg Ni4xOC55IGFuZCA3LjIueSkga2VlcCBEU0kgd29ya2luZyB3aXRoIHRoZSBuZXcKPiA+ID4gPiA+ ID4+ICAgZHRzLCBhbmQgdGhlIHJlY2VpdmVyIGZhaWxzIGNsZWFubHkgaW5zdGVhZCBvZiBnZXR0 aW5nIHRoZSB0cmFuc21pdHRlci4KPiA+ID4gPiA+ID4+ICAgQnV0IEVPTCBrZXJuZWxzICg2LjE1 LCA2LjE2LCA2LjE3LCA2LjE5LCA3LjAsIDcuMSkgc3RheSBhZmZlY3RlZC4KPiA+ID4gPiA+ID4+ ICAgSXQgZ29lcyBpbiB3aXRoIHRoZSBzZXJpZXMsIHNpbmNlIHR3by1jZWxsIGR0cyBvbmx5IGV4 aXN0IGFmdGVyIGl0Lgo+ID4gPiA+ID4gPj4KPiA+ID4gPiA+ID4+IDIuIFVzZSBhIGZsYWcgaW4g dGhlIHVwcGVyIGJpdHMgb2YgdGhlIGV4aXN0aW5nIGNlbGwsIGFzIFJvYgo+ID4gPiA+ID4gPj4g ICAgIHN1Z2dlc3RlZC4gRXhpc3Rpbmcga2VybmVscyBhcmUgbm90IGFmZmVjdGVkLCB1bmxlc3Mg YSBib2FyZCBlbmFibGVzCj4gPiA+ID4gPiA+PiAgICAgdGhlIERDLVBIWSBDU0ktMiByZWNlaXZl ciBvbiA3LjAgb3IgbGF0ZXIgd2l0aG91dCB0aGlzIHNlcmllcy4KPiA+ID4gPiA+ID4+Cj4gPiA+ ID4gPiA+PiBJIHdpbGwgd3JpdGUgdGhlIGltcGFjdCBjbGVhcmx5IHdoaWNoZXZlciAgYXBwcm9h Y2ggaXMgc2VsZWN0ZWQgaW4KPiA+ID4gPiA+ID4+IHRoZSByZWxhdGVkIGNvbW1pdCBtZXNzYWdl cyBhbmQgdGhlIGNvdmVyIGxldHRlci4KPiA+ID4gPiA+ID4+Cj4gPiA+ID4gPiA+PiBJIHRoaW5r IHRoZSBjZWxsIGFwcHJvYWNoIGlzIGVhc2llciB0byByZWFkIGFuZCBtb3JlIHN5bW1ldHJpYyBp biB0aGUKPiA+ID4gPiA+ID4+IGxvbmcgdGVybSwKPiA+ID4gPiA+ID4+IGJ1dCBpdCBicmVha3Mg bW9yZS4gV2hpY2ggb25lIGRvIHlvdSB0aGluayBpcyBiZXR0ZXI/IFRoYW5rcy4KPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+IEknbSBub3QgYSB1c2VyIG9mIHRoaXMgcGxhdGZvcm0sIHNvIEkgZG9u J3QgY2FyZS4gVXAgdG8gdGhlIHBsYXRmb3JtIAo+ID4gPiA+ID4gPiBtYWludGFpbmVycyB0byBk ZWNpZGUgaWYgYnJlYWthZ2UgaXMgYWNjZXB0aWJsZS4gWW91IGp1c3QgbmVlZCB0byAKPiA+ID4g PiA+ID4gZG9jdW1lbnQgdGhlIGlzc3VlIGluIHRoZSBjb21taXQgbWVzc2FnZS4KPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+IFJvYgo+ID4gPiA+ID4gCj4gPiA+ID4gPiBJdCdzIGEgYml0IG9mIGEg cGlja2xlLCBhbGwgdGhpcy4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gSSBnYXZlIGl0IHNvbWUgbW9y ZSB0aG91Z2h0LiBJbiB0aGUgZW5kIHRoaXMgaXMgYW4gSVAgYmxvY2sgd2l0aCB0d28KPiA+ID4g PiA+IFBIWXMuIE5vIG1vcmUsIG5vIGxlc3MuIE9uZSBjZWxsIGlzIHN1ZmZpY2llbnQgdG8gYWRk cmVzcyB0aG9zZSwgYW5kIGl0Cj4gPiA+ID4gPiBjb3VsZCBiZSAwIGZvciB0aGUgdHJhbnNtaXR0 aW5nIFBIWSAoRFNJLCBkaXNwbGF5KSBhbmQgMSBmb3IgdGhlCj4gPiA+ID4gPiByZWNlaXZpbmcg UEhZIChDU0ksIGNhbWVyYSkuCj4gPiA+ID4gPiAKPiA+ID4gPiA+IE9mIGNvdXJzZSB0aGUgdHdv IFBIWXMgY2FuIG9wZXJhdGUgaW4gZWl0aGVyIERQSFkgb3IgQ1BIWSBtb2RlLiBUaGUKPiA+ID4g PiA+IHBoeS1jZWxscyBoYXZlIGJlZW4gKG1pcz8pdXNlZCB0byBzZWxlY3QgdGhlIHByb3BlciBt b2RlIG9mIGNvbWJvIFBIWXMsCj4gPiA+ID4gPiBhbmQgdGhpcyBwcmluY2lwbGUgaGFzIGJlZW4g YXBwbGllZCBoZXJlIHRvby4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gSG93ZXZlciwgd2UgaGF2ZSB0 aGUgc3BlY2lhbCBzaXR1YXRpb24gaGVyZSB0aGF0IHRoZSBtb2RlIGNhbiBvbmx5IGJlCj4gPiA+ ID4gPiBjaGFuZ2VkIGZvciB0aGUgY29tcGxldGUgSVAgYmxvY2sgKGFuZCB0aHVzIGZvciBib3Ro IFBIWXMgYXQgdGhlIHNhbWUKPiA+ID4gPiA+IHRpbWUpLiBBcyBCcnlhbiBwb2ludHMgb3V0LCB3 ZSBuZWVkIHRvIGNoZWNrIGFuZCBjb21wbGFpbiBpZiB0aGUgUEhZCj4gPiA+ID4gPiBtb2RlIGlz IG5vdCBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgZm9yIGJvdGggUEhZcy4KPiA+ID4gPiA+IAo+ID4g PiA+ID4gSSBzdWdnZXN0IHVzaW5nIGEgcHJvcGVydHkKPiA+ID4gPiA+ICAgICBzYW1zdW5nLGNw aHktbW9kZTsKPiA+ID4gPiAKPiA+ID4gPiBJIGd1ZXNzLCBhIG1heWJlIG5pY2VyIHdheSB3b3Vs ZCBiZSBtaW1pY2luZwo+ID4gPiA+IAlEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3Mv cGh5L2ludGVsLGNvbWJvLXBoeS55YW1sCj4gPiA+ID4gCj4gPiA+ID4gd2l0aCBpdHMKPiA+ID4g PiAJaW50ZWwscGh5LW1vZGUgPSA8eD4KPiA+ID4gPiAKPiA+ID4gPiB3aXRoIHggY29taW5nIGZy b20gaW5jbHVkZS9kdC1iaW5kaW5ncy9waHkvcGh5LmgKPiA+ID4gPiBmb3IgdGhlIGRpc3RpbmN0 aW9uIGJldHdlZW4gY3BoeSBhbmQgZHBoeSwgc28gd2UgZG9uJ3QgaW50cm9kdWNlIHlldAo+ID4g PiA+IGFub3RoZXIgd2F5IHRvIGRlc2NyaWJlIHRoaXMuCj4gPiA+IAo+ID4gPiBXZSBhbHJlYWR5 IGhhdmUgdGhlIHBsYWluICdwaHktdHlwZScgcHJvcGVydHkgd2hpY2ggdGFrZXMgdGhlIHNhbWUg Cj4gPiA+IFBIWV9NT0RFX3ggdmFsdWVzLiBXZSBkb24ndCBuZWVkIHlldCBhbm90aGVyIHZlbmRv ciBzcGVjaWZpYyBwcm9wZXJ0eS4KPiA+IAo+ID4gZXZlbiBiZXR0ZXIgdGhlbiAuLi4gYW5kIEkg ZGlkbid0IGxvb2sgZGVlcCBlbm91Z2ggaXQgc2VlbXMuCj4gPiAKPiA+IAo+ID4gPiA+ID4gKG5h bWUgdG8gYmUgYmlrZXNoZWRkZWQpIHRoYXQgc2V0cyB0aGUgY29tcGxldGUgSVAgYmxvY2sgaW50 byBDUEhZIG1vZGUKPiA+ID4gPiA+IChEUEhZIGJlaW5nIHRoZSBkZWZhdWx0KSB0byBkaXN0aW5n dWlzaCBiZXR3ZWVuIHRoZSBtb2Rlcy4gU2luY2UgYm90aAo+ID4gPiA+ID4gbW9kZXMgdXNlIGEg ZGlmZmVyZW50IGVsZWN0cmljYWwgaW50ZXJmYWNlLCB0aGlzIGlzIGNsZWFybHkgYSBoYXJkd2Fy ZQo+ID4gPiA+ID4gdGhpbmcgYW5kIHRodXMgc3VpdGFibGUgZm9yIGRldmljZSB0cmVlLgo+ID4g PiA+ID4gCj4gPiA+ID4gPiBUaGVuLCB3ZSBjYW4gYWRkcmVzcyB0aGUgdHdvIFBIWXMgd2l0aCB0 aGUgaGVscCBvZiB0aGUgYWxyZWFkeSBleGlzdGluZwo+ID4gPiA+ID4gcGh5IGNlbGwgKHdpdGhv dXQgYW55IGJpdGZsYWcgdHdlYWtzIHRvIHRoZSB2YWx1ZSkuCj4gPiA+ID4gPiAKPiA+ID4gPiA+ IFRoZSBzb2xlIGRyYXdiYWNrIGlzIHRoYXQgd2UgbmVlZCB0byBhY2NlcHQgdGhlIFBIWV9UWVBF X0RQSFkgYW5kCj4gPiA+ID4gPiBQSFlfVFlQRV9DUEhZIHZhbHVlcyB0aGF0IHNvbWUgT1MgaW4g dGhlIGZpZWxkIG1pZ2h0IHBhc3MuIChGb3IgTGludXgsCj4gPiA+ID4gPiBpdCBzaG91bGQgb25s eSBiZSB0aGUgZm9ybWVyLikgQW5kIHdlIG5lZWQgdG8gaGFuZGxlIHRob3NlIHZhbHVlcwo+ID4g PiA+ID4gY29ycmVjdGx5LiBCdXQgSSB0aGluayB0aGlzIGlzIG5vdCBtb3JlIHBhaW5mdWwgdGhh biB0aGUgb3RoZXIKPiA+ID4gPiA+IGFwcHJvYWNoZXMuIEF0IHRoZSBzYW1lIHRpbWUsIHRoaXMg ZGVzaWduIHNlZW1zIHRvIGJlIHRoZSBtb3N0IGNvcnJlY3QKPiA+ID4gPiAKPiA+ID4gPiBUaGUg Y3VycmVudCBjZWxsIHZhbHVlcyBhcmUgMTAgKyAxMSwgc28gYXMgbG9uZyBhcyB3ZSBkb24ndCBy ZS11c2UgdGhvc2UKPiA+ID4gPiBleGFjdCB2YWx1ZXMgZm9yIHRoZSBvdGhlciBjb25zdGFudHMg dGhlIGRyaXZlciBzaG91bGQgc29tZXdoYXQgZWFzaWx5Cj4gPiA+ID4gYmUgYWJsZSB0byByZWNv Z25pemUgYW4gb2xkIERUPwo+ID4gPiAKPiA+ID4gSSB0aGluayB5b3Ugd2lsbCBzdGlsbCBoYXZl IGFuIEFCSSBpc3N1ZSBvZiB3aGF0IGRvZXMgb2xkIE9TIGRvIHdpdGggbmV3IAo+ID4gPiB2YWx1 ZXM/Cj4gPiAKPiA+IHdhc24ndCB0aGUgbWFpbiBjb250cmFjdCwgYSBuZXdlciBrZXJuZWwgc2hv dWxkIHN1cHBvcnQgb2xkIERUcyA/Cj4gCj4gV2VsbCwgeWVzLCBpdCB3YXMuIFRoYXQgd2FzIGEg cG9zaXRpb24gSSBpbmhlcml0ZWQuIEkgaGVhciBjb21wbGFpbnRzIAo+IGFib3V0IHRoZSBvcHBv c2l0ZSB0aG91Z2guCj4gCj4gPiBBa2EgdGhlIERUIGlzIHBhcmtlZCBpbiBzb21lIGZpcm13YXJl IHBhcnQgKHUtYm9vdD8pIGFuZCBnZXRzIGhhbmRlZAo+ID4gdG8gdGhlIG5ld2VyIGtlcm5lbC4K PiA+IAo+ID4gSSBkb24ndCBzZWUgZGVsaWJlcmF0ZWx5IGhhbmRpbmcgYSBuZXdlciBEVEIgdG8g YW4gb2xkZXIga2VybmVsIGFzIGEKPiA+IHZlcnkgY29tbW9uIG9jY3VyZW5jZT8KPiAKPiBEbyB5 b3Ugd2FudCB0aGluZ3MgdG8gYnJlYWsgd2hlbiB5b3UgZG8gYSBmaXJtd2FyZSB1cGRhdGUgdGhh dCdzIHBpY2tlZCAKPiB1cCBhIG5ld2VyIERUPyBJIGRvbid0Lgo+IAo+IAo+ID4gQW5kIGZyb20g YSBwcmFjdGljYWwgc3RhbmRwb2ludDoKPiA+IAo+ID4gV2UncmUgdGFsa2luZyBhYm91dCBkZXZp Y2VzIHdpdGggRFNJIGRpc3BsYXlzIHRoYXQgYXJlIGF0IHN0YWtlIGhlcmUsCj4gPiBzbyB3ZSdy ZSBpbiB0aGUgZW1iZWRkZWQgd29ybGQuCj4gPiAKPiA+IEluIG90aGVyIGFyZWFzIHdlJ3JlIHN0 aWxsIGZpZ2h0aW5nIGJhc2ljIGZ1bmN0aW9uYWxpdHkgbGlrZSBhY3R1YWxseQo+ID4gaGFuZGxp bmcgdGhlIHR5cGUtYyBvcmllbnRhdGlvbiBjb3JyZWN0bHkgaW4gdGhlIHVzYnBoeS4KPiA+IAo+ ID4gU28gSSByZWFsbHkgZG9uJ3Qgc2VlIGEgZGV2aWNlIHdpdGggYSB1c2VyLXVwZGF0ZWFibGUg bWFpbmxpbmUga2VybmVsIG91dAo+ID4gaW4gdGhlIGZpZWxkLCBhcGFydCBmcm9tIHBlb3BsZSBo YWNraW5nIGFyb3VuZCBvbiB0aGVpciBkZXZpY2VzIHRvIHRyeQo+ID4gb3V0IG5ldyBmZWF0dXJl cyBhbmQgbmV3IGtlcm5lbHMsIHNpbXBseSBiZWNhdXNlIGNvcmUgZnVuY3Rpb25hbGl0eQo+ID4g aXMgc3RpbGwgZXZvbHZpbmcgaW4gbWFpbmxpbmUuCj4gPiAKPiA+IAo+ID4gUkszNTc2L1JLMzU4 OCBkZXZpY2VzIHN0aWxsIHNoaXAgd2l0aCBhIHZlbmRvciB1LWJvb3Qva2VybmVsLCB3aXRoCj4g PiBjb21wbGV0ZWx5IGluY29tcGF0aWJsZSBEVEIgYWZ0ZXJhbGwuCj4gCj4gSSBjYW4gb25seSBr ZWVwIG15IG93biBob3VzZSBjbGVhbi4uLgoKb2sgOi0pIAoKCj4gSSBvbmx5IGFzayB0aGF0IGNv bXBhdGliaWxpdHkgaXNzdWVzIGJlIGRvY3VtZW50ZWQuIFVwIHRvIGluZGl2aWR1YWwgCj4gcGxh dGZvcm1zIHRvIGRlY2lkZSBpZiB0aGV5IGNhcmUgb3Igbm90LiBTbywgeW91ciBkZWNpc2lvbi4K ClRoZSBkaXNjdXNzaW9uIHdvdWxkIGJlIGEgbG90IGRpZmZlcmVudCBmb3IgU29DcyBsaWtlIHRo ZSBSSzMzOTkgb3IgUFgzMAp0aGF0IGNhbiBhbmQgaGF2ZSBydW4gbWFpbmxpbmUgc29mdHdhcmUg aW4gYSB1c2FibGUgd2F5IGZvciB5ZWFycyBub3cuClJLMzU2OCB2ZXJ5IGxpa2VseSBmYWxscyBp biB0aGF0IGFyZWEgdG9vLgoKQnV0IGZvciB0aGUgaW4tcHJvZ3Jlc3MgU29DcyBSSzM1NzYgYW5k IFJLMzU4OCBhbnlib2R5IHdhbnRpbmcgdG8gcnVuCmEgZ2VuZXJpYyB1c2Vyc3BhY2Ugd291bGQg bmVlZCBhIGhlYXZpbHkgcGF0Y2hlZCBrZXJuZWwgYW55d2F5LCB3aXRoCm90aGVyIHVucmV2aWV3 ZWQvdW5tZXJnZWQgZHQtY2hhbmdlcywgc28gcGVyc29uYWxseSBJIGNhbiBsaXZlIHdpdGggaXQu CgpFc3BlY2lhbGx5IGlmIHdlIGtlZXAgdGhlIChpbiBteSBleWVzKSBtb3JlIGNvbW1vbiBjYXNl CihvbGQgZHRiLCBuZXcga2VybmVsKSB3b3JraW5nLgoKCkhlaWtvCgoKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4LXJvY2tjaGlwIG1haWxpbmcg bGlzdApMaW51eC1yb2NrY2hpcEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZy YWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcm9ja2NoaXAK From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 23AEF606A31A for ; Wed, 21 Oct 2026 08:04:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=wK3k6nlE; dkim=fail reason="signature verification failed" (2048-bit key, unprotected) header.d=sntech.de header.i=@sntech.de header.a=rsa-sha256 header.s=gloria202408 header.b=bDpM4kwH 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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=unAQiGRlJLUTZvLkIPAokqpw+e5hMVE60dMua0XW70I=; b=wK3k6nlEXwWk2v eBYfmqRdFvY+621GqHgDsdG/NpMZxnHohXEOasJyRovk6Gn977U61CjGz6lQzLG7ViqYPiC6zwdw7 X6wTpGnL5843CN8Rl4Nr4ZS+8P46ugzSNciWAKQoZ9VS60P2wcWwbAjjn8sUzZkHb7qKJOOSSmtmJ obIuTG8Am8+BkxOeNvDOnlOsng134fDRKWbdS7u/aw4dSdi+bpTJAYj0kgxl5BvbkFRZWEwC02XYw MxmJ4wKRxZsTZdfMlOQY3Rqy549zU8ObjUg+pifSrJFwNwmN7Jhm/+Ay7TneNCCuFiw6V1d0ulhRA 3m2zbuN3dnG/iEsZbLKQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xJRIt-0000000BICR-31oe; Wed, 21 Oct 2026 08:04:07 +0000 Received: from gloria.sntech.de ([185.11.138.130]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xJRIr-0000000BIBR-1pmw; Wed, 21 Oct 2026 08:04:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sntech.de; s=gloria202408; h=Content-Type:Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Reply-To; bh=Dpk6oZW2/pIfMTZ5y5HTyizlc9Lr7d1oiu8c5BoQlkY=; b=bDpM4kwHriQ1sFZK2YGUYqM+SJ Ls2GKe9T6Q16wdIVF0sIzmbdiO7gAx2lt4lCag3lyfSN1GaGRIKVpJwultXZbxL0u5mQGwvtc0TQD JXvZG/E5H3HNZjKKqYq4rXaXbCX2zNEpYfY5qPiiWbyzxhey/mkyqwG9lfBlVMWco0SPcM9A2l6ii b0nSfG/YGAAB1uwEdpfxgbiIMeezk3BB817qsMBw7BJvnQ3jldRGTUXcmfQtYMdl/R3NyB74ykCS5 Qd7zOjXD/EnxwWM2+rji23j/ZoKJnaub74Vpm2N8aNUxp7beklzAqa9M/+tzxAuKonma76t0gIQTo awv8ofqw==; From: Heiko =?UTF-8?B?U3TDvGJuZXI=?= To: Rob Herring Cc: =?UTF-8?B?5qWK5pm65oiQ?= , Michael Riesch , Krzysztof Kozlowski , Vinod Koul , Neil Armstrong , Manivannan Sadhasivam , Krzysztof Kozlowski , Conor Dooley , Guochun Huang , Philipp Zabel , Sebastian Reichel , Bryan O'Donoghue , linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v5 2/8] dt-bindings: phy: rockchip,rk3588-mipi-dcphy: Add a cell to select TX or RX Date: Wed, 21 Oct 2026 10:03:45 +0200 Message-ID: <3435698.oiGErgHkdL@diego> In-Reply-To: <20261021024239.GA3667411-robh@kernel.org> References: <20261016-dcphy-rx-v1-v5-0-e63b49eabe2d@gmail.com> <25254818.ouqheUzb2q@diego> <20261021024239.GA3667411-robh@kernel.org> X-Archived-By: MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20261021_010405_677564_6EA5D4D2 X-CRM114-Status: GOOD ( 61.89 ) X-Spam-Score: -2.1 (--) X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" X-Spam-Status: No, score=-4.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on aws-us-west-2-korg-listserv-alma10-1 QW0gTWl0dHdvY2gsIDIxLiBPa3RvYmVyIDIwMjYsIDA0OjQyOjM5IE1pdHRlbGV1cm9ww6Rpc2No ZSBTb21tZXJ6ZWl0IHNjaHJpZWIgUm9iIEhlcnJpbmc6Cj4gT24gVHVlLCBPY3QgMjAsIDIwMjYg YXQgMDQ6NTc6MzRQTSArMDIwMCwgSGVpa28gU3TDvGJuZXIgd3JvdGU6Cj4gPiBBbSBEaWVuc3Rh ZywgMjAuIE9rdG9iZXIgMjAyNiwgMTY6MTA6MzkgTWl0dGVsZXVyb3DDpGlzY2hlIFNvbW1lcnpl aXQgc2NocmllYiBSb2IgSGVycmluZzoKPiA+ID4gT24gVHVlLCBPY3QgMjAsIDIwMjYgYXQgMDM6 Mzc6MzVQTSArMDIwMCwgSGVpa28gU3TDvGJuZXIgd3JvdGU6Cj4gPiA+ID4gQW0gRGllbnN0YWcs IDIwLiBPa3RvYmVyIDIwMjYsIDAwOjIwOjQ3IE1pdHRlbGV1cm9ww6Rpc2NoZSBTb21tZXJ6ZWl0 IHNjaHJpZWIgTWljaGFlbCBSaWVzY2g6Cj4gPiA+ID4gPiBIaSBhbGwsCj4gPiA+ID4gPiAKPiA+ ID4gPiA+IE9uIDEwLzE5LzI2IDE3OjA2LCBSb2IgSGVycmluZyB3cm90ZToKPiA+ID4gPiA+ID4g T24gTW9uLCBPY3QgMTksIDIwMjYgYXQgMDQ6MTU6MDNQTSArMDgwMCwg5qWK5pm65oiQIHdyb3Rl Ogo+ID4gPiA+ID4gPj4gSGkgS3J6eXN6dG9mLCBSb2IsCj4gPiA+ID4gPiA+Pgo+ID4gPiA+ID4g Pj4+IEV4aXN0aW5nIE9TIHNob3VsZCBpZ25vcmUgc3VycGx1cyBjZWxsIGlmIHRoZSBkcml2ZXIg aXMgY29kZWQgcHJvcGVybHkuCj4gPiA+ID4gPiA+Pj4gU2FtZSBhcyBhZGRpbmcgbmV3IHByb3Bl cnRpZXMgb3IgbmV3IGZyb250LWNvbXBhdGlibGUuICBUaGUgcXVlc3Rpb24gaXMKPiA+ID4gPiA+ ID4+PiBob3cgdGhlIGV4aXN0aW5nIGRyaXZlciBiZWhhdmVzPwo+ID4gPiA+ID4gPj4KPiA+ID4g PiA+ID4+IEFzIHlvdSBwb2ludGVkIG91dCBvbiA1LzgsIHRoZSB4bGF0ZSBjaGVja3MgYXJnc19j b3VudCAhPSAxLiBUaGUgREMtUEhZCj4gPiA+ID4gPiA+PiBkcml2ZXIgd2FzIG1lcmdlZCBpbiB2 Ni4xNSwgc28gZXZlcnkga2VybmVsIHNpbmNlIDYuMTUgZmFpbHMgb24gYSBzZWNvbmQgY2VsbC4K PiA+ID4gPiA+ID4+Cj4gPiA+ID4gPiA+PiAxLiBLZWVwIHRoZSBzZWNvbmQgY2VsbC4gQWRkIHRo ZSBwYXRjaCBhcyBmb2xsb3dzOgo+ID4gPiA+ID4gPj4KPiA+ID4gPiA+ID4+IC0gaWYgKGFyZ3Mt PmFyZ3NfY291bnQgIT0gMSkgewo+ID4gPiA+ID4gPj4gKyBpZiAoYXJncy0+YXJnc19jb3VudCA8 IDEpIHsKPiA+ID4gPiA+ID4+ICAgICBkZXZfZXJyKGRldiwgImludmFsaWQgbnVtYmVyIG9mIGFy Z3VtZW50c1xuIik7Cj4gPiA+ID4gPiA+PiAgICAgcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7Cj4g PiA+ID4gPiA+PiAgIH0KPiA+ID4gPiA+ID4+Cj4gPiA+ID4gPiA+PiArIGlmIChhcmdzLT5hcmdz X2NvdW50ID4gMSAmJiBhcmdzLT5hcmdzWzFdKSB7Cj4gPiA+ID4gPiA+PiArICAgZGV2X2Vycihk ZXYsICJvbmx5IHRoZSB0cmFuc21pdHRlciBpcyBzdXBwb3J0ZWRcbiIpOwo+ID4gPiA+ID4gPj4g KyAgIHJldHVybiBFUlJfUFRSKC1FSU5WQUwpOwo+ID4gPiA+ID4gPj4gKyB9Cj4gPiA+ID4gPiA+ Pgo+ID4gPiA+ID4gPj4gICBXaXRoIEZpeGVzOiBhbmQgQ2M6IHN0YWJsZSwgdGhlIHN0YWJsZSBr ZXJuZWxzIG1haW50YWluZWQgYXQgdGhhdAo+ID4gPiA+ID4gPj4gICB0aW1lIChjdXJyZW50bHkg Ni4xOC55IGFuZCA3LjIueSkga2VlcCBEU0kgd29ya2luZyB3aXRoIHRoZSBuZXcKPiA+ID4gPiA+ ID4+ICAgZHRzLCBhbmQgdGhlIHJlY2VpdmVyIGZhaWxzIGNsZWFubHkgaW5zdGVhZCBvZiBnZXR0 aW5nIHRoZSB0cmFuc21pdHRlci4KPiA+ID4gPiA+ID4+ICAgQnV0IEVPTCBrZXJuZWxzICg2LjE1 LCA2LjE2LCA2LjE3LCA2LjE5LCA3LjAsIDcuMSkgc3RheSBhZmZlY3RlZC4KPiA+ID4gPiA+ID4+ ICAgSXQgZ29lcyBpbiB3aXRoIHRoZSBzZXJpZXMsIHNpbmNlIHR3by1jZWxsIGR0cyBvbmx5IGV4 aXN0IGFmdGVyIGl0Lgo+ID4gPiA+ID4gPj4KPiA+ID4gPiA+ID4+IDIuIFVzZSBhIGZsYWcgaW4g dGhlIHVwcGVyIGJpdHMgb2YgdGhlIGV4aXN0aW5nIGNlbGwsIGFzIFJvYgo+ID4gPiA+ID4gPj4g ICAgIHN1Z2dlc3RlZC4gRXhpc3Rpbmcga2VybmVscyBhcmUgbm90IGFmZmVjdGVkLCB1bmxlc3Mg YSBib2FyZCBlbmFibGVzCj4gPiA+ID4gPiA+PiAgICAgdGhlIERDLVBIWSBDU0ktMiByZWNlaXZl ciBvbiA3LjAgb3IgbGF0ZXIgd2l0aG91dCB0aGlzIHNlcmllcy4KPiA+ID4gPiA+ID4+Cj4gPiA+ ID4gPiA+PiBJIHdpbGwgd3JpdGUgdGhlIGltcGFjdCBjbGVhcmx5IHdoaWNoZXZlciAgYXBwcm9h Y2ggaXMgc2VsZWN0ZWQgaW4KPiA+ID4gPiA+ID4+IHRoZSByZWxhdGVkIGNvbW1pdCBtZXNzYWdl cyBhbmQgdGhlIGNvdmVyIGxldHRlci4KPiA+ID4gPiA+ID4+Cj4gPiA+ID4gPiA+PiBJIHRoaW5r IHRoZSBjZWxsIGFwcHJvYWNoIGlzIGVhc2llciB0byByZWFkIGFuZCBtb3JlIHN5bW1ldHJpYyBp biB0aGUKPiA+ID4gPiA+ID4+IGxvbmcgdGVybSwKPiA+ID4gPiA+ID4+IGJ1dCBpdCBicmVha3Mg bW9yZS4gV2hpY2ggb25lIGRvIHlvdSB0aGluayBpcyBiZXR0ZXI/IFRoYW5rcy4KPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+IEknbSBub3QgYSB1c2VyIG9mIHRoaXMgcGxhdGZvcm0sIHNvIEkgZG9u J3QgY2FyZS4gVXAgdG8gdGhlIHBsYXRmb3JtIAo+ID4gPiA+ID4gPiBtYWludGFpbmVycyB0byBk ZWNpZGUgaWYgYnJlYWthZ2UgaXMgYWNjZXB0aWJsZS4gWW91IGp1c3QgbmVlZCB0byAKPiA+ID4g PiA+ID4gZG9jdW1lbnQgdGhlIGlzc3VlIGluIHRoZSBjb21taXQgbWVzc2FnZS4KPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+IFJvYgo+ID4gPiA+ID4gCj4gPiA+ID4gPiBJdCdzIGEgYml0IG9mIGEg cGlja2xlLCBhbGwgdGhpcy4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gSSBnYXZlIGl0IHNvbWUgbW9y ZSB0aG91Z2h0LiBJbiB0aGUgZW5kIHRoaXMgaXMgYW4gSVAgYmxvY2sgd2l0aCB0d28KPiA+ID4g PiA+IFBIWXMuIE5vIG1vcmUsIG5vIGxlc3MuIE9uZSBjZWxsIGlzIHN1ZmZpY2llbnQgdG8gYWRk cmVzcyB0aG9zZSwgYW5kIGl0Cj4gPiA+ID4gPiBjb3VsZCBiZSAwIGZvciB0aGUgdHJhbnNtaXR0 aW5nIFBIWSAoRFNJLCBkaXNwbGF5KSBhbmQgMSBmb3IgdGhlCj4gPiA+ID4gPiByZWNlaXZpbmcg UEhZIChDU0ksIGNhbWVyYSkuCj4gPiA+ID4gPiAKPiA+ID4gPiA+IE9mIGNvdXJzZSB0aGUgdHdv IFBIWXMgY2FuIG9wZXJhdGUgaW4gZWl0aGVyIERQSFkgb3IgQ1BIWSBtb2RlLiBUaGUKPiA+ID4g PiA+IHBoeS1jZWxscyBoYXZlIGJlZW4gKG1pcz8pdXNlZCB0byBzZWxlY3QgdGhlIHByb3BlciBt b2RlIG9mIGNvbWJvIFBIWXMsCj4gPiA+ID4gPiBhbmQgdGhpcyBwcmluY2lwbGUgaGFzIGJlZW4g YXBwbGllZCBoZXJlIHRvby4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gSG93ZXZlciwgd2UgaGF2ZSB0 aGUgc3BlY2lhbCBzaXR1YXRpb24gaGVyZSB0aGF0IHRoZSBtb2RlIGNhbiBvbmx5IGJlCj4gPiA+ ID4gPiBjaGFuZ2VkIGZvciB0aGUgY29tcGxldGUgSVAgYmxvY2sgKGFuZCB0aHVzIGZvciBib3Ro IFBIWXMgYXQgdGhlIHNhbWUKPiA+ID4gPiA+IHRpbWUpLiBBcyBCcnlhbiBwb2ludHMgb3V0LCB3 ZSBuZWVkIHRvIGNoZWNrIGFuZCBjb21wbGFpbiBpZiB0aGUgUEhZCj4gPiA+ID4gPiBtb2RlIGlz IG5vdCBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgZm9yIGJvdGggUEhZcy4KPiA+ID4gPiA+IAo+ID4g PiA+ID4gSSBzdWdnZXN0IHVzaW5nIGEgcHJvcGVydHkKPiA+ID4gPiA+ICAgICBzYW1zdW5nLGNw aHktbW9kZTsKPiA+ID4gPiAKPiA+ID4gPiBJIGd1ZXNzLCBhIG1heWJlIG5pY2VyIHdheSB3b3Vs ZCBiZSBtaW1pY2luZwo+ID4gPiA+IAlEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3Mv cGh5L2ludGVsLGNvbWJvLXBoeS55YW1sCj4gPiA+ID4gCj4gPiA+ID4gd2l0aCBpdHMKPiA+ID4g PiAJaW50ZWwscGh5LW1vZGUgPSA8eD4KPiA+ID4gPiAKPiA+ID4gPiB3aXRoIHggY29taW5nIGZy b20gaW5jbHVkZS9kdC1iaW5kaW5ncy9waHkvcGh5LmgKPiA+ID4gPiBmb3IgdGhlIGRpc3RpbmN0 aW9uIGJldHdlZW4gY3BoeSBhbmQgZHBoeSwgc28gd2UgZG9uJ3QgaW50cm9kdWNlIHlldAo+ID4g PiA+IGFub3RoZXIgd2F5IHRvIGRlc2NyaWJlIHRoaXMuCj4gPiA+IAo+ID4gPiBXZSBhbHJlYWR5 IGhhdmUgdGhlIHBsYWluICdwaHktdHlwZScgcHJvcGVydHkgd2hpY2ggdGFrZXMgdGhlIHNhbWUg Cj4gPiA+IFBIWV9NT0RFX3ggdmFsdWVzLiBXZSBkb24ndCBuZWVkIHlldCBhbm90aGVyIHZlbmRv ciBzcGVjaWZpYyBwcm9wZXJ0eS4KPiA+IAo+ID4gZXZlbiBiZXR0ZXIgdGhlbiAuLi4gYW5kIEkg ZGlkbid0IGxvb2sgZGVlcCBlbm91Z2ggaXQgc2VlbXMuCj4gPiAKPiA+IAo+ID4gPiA+ID4gKG5h bWUgdG8gYmUgYmlrZXNoZWRkZWQpIHRoYXQgc2V0cyB0aGUgY29tcGxldGUgSVAgYmxvY2sgaW50 byBDUEhZIG1vZGUKPiA+ID4gPiA+IChEUEhZIGJlaW5nIHRoZSBkZWZhdWx0KSB0byBkaXN0aW5n dWlzaCBiZXR3ZWVuIHRoZSBtb2Rlcy4gU2luY2UgYm90aAo+ID4gPiA+ID4gbW9kZXMgdXNlIGEg ZGlmZmVyZW50IGVsZWN0cmljYWwgaW50ZXJmYWNlLCB0aGlzIGlzIGNsZWFybHkgYSBoYXJkd2Fy ZQo+ID4gPiA+ID4gdGhpbmcgYW5kIHRodXMgc3VpdGFibGUgZm9yIGRldmljZSB0cmVlLgo+ID4g PiA+ID4gCj4gPiA+ID4gPiBUaGVuLCB3ZSBjYW4gYWRkcmVzcyB0aGUgdHdvIFBIWXMgd2l0aCB0 aGUgaGVscCBvZiB0aGUgYWxyZWFkeSBleGlzdGluZwo+ID4gPiA+ID4gcGh5IGNlbGwgKHdpdGhv dXQgYW55IGJpdGZsYWcgdHdlYWtzIHRvIHRoZSB2YWx1ZSkuCj4gPiA+ID4gPiAKPiA+ID4gPiA+ IFRoZSBzb2xlIGRyYXdiYWNrIGlzIHRoYXQgd2UgbmVlZCB0byBhY2NlcHQgdGhlIFBIWV9UWVBF X0RQSFkgYW5kCj4gPiA+ID4gPiBQSFlfVFlQRV9DUEhZIHZhbHVlcyB0aGF0IHNvbWUgT1MgaW4g dGhlIGZpZWxkIG1pZ2h0IHBhc3MuIChGb3IgTGludXgsCj4gPiA+ID4gPiBpdCBzaG91bGQgb25s eSBiZSB0aGUgZm9ybWVyLikgQW5kIHdlIG5lZWQgdG8gaGFuZGxlIHRob3NlIHZhbHVlcwo+ID4g PiA+ID4gY29ycmVjdGx5LiBCdXQgSSB0aGluayB0aGlzIGlzIG5vdCBtb3JlIHBhaW5mdWwgdGhh biB0aGUgb3RoZXIKPiA+ID4gPiA+IGFwcHJvYWNoZXMuIEF0IHRoZSBzYW1lIHRpbWUsIHRoaXMg ZGVzaWduIHNlZW1zIHRvIGJlIHRoZSBtb3N0IGNvcnJlY3QKPiA+ID4gPiAKPiA+ID4gPiBUaGUg Y3VycmVudCBjZWxsIHZhbHVlcyBhcmUgMTAgKyAxMSwgc28gYXMgbG9uZyBhcyB3ZSBkb24ndCBy ZS11c2UgdGhvc2UKPiA+ID4gPiBleGFjdCB2YWx1ZXMgZm9yIHRoZSBvdGhlciBjb25zdGFudHMg dGhlIGRyaXZlciBzaG91bGQgc29tZXdoYXQgZWFzaWx5Cj4gPiA+ID4gYmUgYWJsZSB0byByZWNv Z25pemUgYW4gb2xkIERUPwo+ID4gPiAKPiA+ID4gSSB0aGluayB5b3Ugd2lsbCBzdGlsbCBoYXZl IGFuIEFCSSBpc3N1ZSBvZiB3aGF0IGRvZXMgb2xkIE9TIGRvIHdpdGggbmV3IAo+ID4gPiB2YWx1 ZXM/Cj4gPiAKPiA+IHdhc24ndCB0aGUgbWFpbiBjb250cmFjdCwgYSBuZXdlciBrZXJuZWwgc2hv dWxkIHN1cHBvcnQgb2xkIERUcyA/Cj4gCj4gV2VsbCwgeWVzLCBpdCB3YXMuIFRoYXQgd2FzIGEg cG9zaXRpb24gSSBpbmhlcml0ZWQuIEkgaGVhciBjb21wbGFpbnRzIAo+IGFib3V0IHRoZSBvcHBv c2l0ZSB0aG91Z2guCj4gCj4gPiBBa2EgdGhlIERUIGlzIHBhcmtlZCBpbiBzb21lIGZpcm13YXJl IHBhcnQgKHUtYm9vdD8pIGFuZCBnZXRzIGhhbmRlZAo+ID4gdG8gdGhlIG5ld2VyIGtlcm5lbC4K PiA+IAo+ID4gSSBkb24ndCBzZWUgZGVsaWJlcmF0ZWx5IGhhbmRpbmcgYSBuZXdlciBEVEIgdG8g YW4gb2xkZXIga2VybmVsIGFzIGEKPiA+IHZlcnkgY29tbW9uIG9jY3VyZW5jZT8KPiAKPiBEbyB5 b3Ugd2FudCB0aGluZ3MgdG8gYnJlYWsgd2hlbiB5b3UgZG8gYSBmaXJtd2FyZSB1cGRhdGUgdGhh dCdzIHBpY2tlZCAKPiB1cCBhIG5ld2VyIERUPyBJIGRvbid0Lgo+IAo+IAo+ID4gQW5kIGZyb20g YSBwcmFjdGljYWwgc3RhbmRwb2ludDoKPiA+IAo+ID4gV2UncmUgdGFsa2luZyBhYm91dCBkZXZp Y2VzIHdpdGggRFNJIGRpc3BsYXlzIHRoYXQgYXJlIGF0IHN0YWtlIGhlcmUsCj4gPiBzbyB3ZSdy ZSBpbiB0aGUgZW1iZWRkZWQgd29ybGQuCj4gPiAKPiA+IEluIG90aGVyIGFyZWFzIHdlJ3JlIHN0 aWxsIGZpZ2h0aW5nIGJhc2ljIGZ1bmN0aW9uYWxpdHkgbGlrZSBhY3R1YWxseQo+ID4gaGFuZGxp bmcgdGhlIHR5cGUtYyBvcmllbnRhdGlvbiBjb3JyZWN0bHkgaW4gdGhlIHVzYnBoeS4KPiA+IAo+ ID4gU28gSSByZWFsbHkgZG9uJ3Qgc2VlIGEgZGV2aWNlIHdpdGggYSB1c2VyLXVwZGF0ZWFibGUg bWFpbmxpbmUga2VybmVsIG91dAo+ID4gaW4gdGhlIGZpZWxkLCBhcGFydCBmcm9tIHBlb3BsZSBo YWNraW5nIGFyb3VuZCBvbiB0aGVpciBkZXZpY2VzIHRvIHRyeQo+ID4gb3V0IG5ldyBmZWF0dXJl cyBhbmQgbmV3IGtlcm5lbHMsIHNpbXBseSBiZWNhdXNlIGNvcmUgZnVuY3Rpb25hbGl0eQo+ID4g aXMgc3RpbGwgZXZvbHZpbmcgaW4gbWFpbmxpbmUuCj4gPiAKPiA+IAo+ID4gUkszNTc2L1JLMzU4 OCBkZXZpY2VzIHN0aWxsIHNoaXAgd2l0aCBhIHZlbmRvciB1LWJvb3Qva2VybmVsLCB3aXRoCj4g PiBjb21wbGV0ZWx5IGluY29tcGF0aWJsZSBEVEIgYWZ0ZXJhbGwuCj4gCj4gSSBjYW4gb25seSBr ZWVwIG15IG93biBob3VzZSBjbGVhbi4uLgoKb2sgOi0pIAoKCj4gSSBvbmx5IGFzayB0aGF0IGNv bXBhdGliaWxpdHkgaXNzdWVzIGJlIGRvY3VtZW50ZWQuIFVwIHRvIGluZGl2aWR1YWwgCj4gcGxh dGZvcm1zIHRvIGRlY2lkZSBpZiB0aGV5IGNhcmUgb3Igbm90LiBTbywgeW91ciBkZWNpc2lvbi4K ClRoZSBkaXNjdXNzaW9uIHdvdWxkIGJlIGEgbG90IGRpZmZlcmVudCBmb3IgU29DcyBsaWtlIHRo ZSBSSzMzOTkgb3IgUFgzMAp0aGF0IGNhbiBhbmQgaGF2ZSBydW4gbWFpbmxpbmUgc29mdHdhcmUg aW4gYSB1c2FibGUgd2F5IGZvciB5ZWFycyBub3cuClJLMzU2OCB2ZXJ5IGxpa2VseSBmYWxscyBp biB0aGF0IGFyZWEgdG9vLgoKQnV0IGZvciB0aGUgaW4tcHJvZ3Jlc3MgU29DcyBSSzM1NzYgYW5k IFJLMzU4OCBhbnlib2R5IHdhbnRpbmcgdG8gcnVuCmEgZ2VuZXJpYyB1c2Vyc3BhY2Ugd291bGQg bmVlZCBhIGhlYXZpbHkgcGF0Y2hlZCBrZXJuZWwgYW55d2F5LCB3aXRoCm90aGVyIHVucmV2aWV3 ZWQvdW5tZXJnZWQgZHQtY2hhbmdlcywgc28gcGVyc29uYWxseSBJIGNhbiBsaXZlIHdpdGggaXQu CgpFc3BlY2lhbGx5IGlmIHdlIGtlZXAgdGhlIChpbiBteSBleWVzKSBtb3JlIGNvbW1vbiBjYXNl CihvbGQgZHRiLCBuZXcga2VybmVsKSB3b3JraW5nLgoKCkhlaWtvCgoKCi0tIApsaW51eC1waHkg bWFpbGluZyBsaXN0CmxpbnV4LXBoeUBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHBzOi8vbGlzdHMu aW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXBoeQo=