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 F0F57C4345F for ; Sat, 27 Apr 2024 01:29:14 +0000 (UTC) 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:In-Reply-To: Content-Transfer-Encoding:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=QAxitb0ls1ooux+j7WSh6362qnzmsRmp9ZuJHwXqCvg=; b=ywC1FcZNIpge/oMs0PyGnnydlX 7tFDJ6wcptqeeEhmfmKuU072OLapPE+3U24qNGcm2umOXuQfX855VZtsmGsdRLlabIZauZDlUcnGp 3N/enlDLy4lLGJgfd7twQqcJAx5Mw98hb7QQ9Hc1LVryDrztwF+RrL0M0phV06B7OP+wYebGppK4/ 9EbyXCkyycaFNwsuMcaqJ1uS/xVyiSoEf7aN9988eEIfsXA6pH84T0yz926KdoGzg//UK9576waRd mwtZr+sJYSPMlwc5uZk5fnUSv0DnbvDGWr/OXYGSAZjBXXMSDeWfvaBO8Ed6h77agFj850I6EfHKZ odQLBmDA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s0WsM-0000000EZpO-2r79; Sat, 27 Apr 2024 01:29:14 +0000 Received: from pidgin.makrotopia.org ([2a07:2ec0:3002::65]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s0WsJ-0000000EZoY-10LD; Sat, 27 Apr 2024 01:29:12 +0000 Received: from local by pidgin.makrotopia.org with esmtpsa (TLS1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.97.1) (envelope-from ) id 1s0WsA-0000000060D-3rUx; Sat, 27 Apr 2024 01:29:03 +0000 Date: Sat, 27 Apr 2024 02:28:59 +0100 From: Daniel Golle To: arinc.unal@arinc9.com Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , mithat.guner@xeront.com, erkin.bozoglu@xeront.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: Re: [PATCH 2/2] arm64: dts: mediatek: mt7986: set PHY address of MT7531 switch to 0x1f Message-ID: References: <20240314-for-mediatek-mt7531-phy-address-v1-0-52f58db01acd@arinc9.com> <20240314-for-mediatek-mt7531-phy-address-v1-2-52f58db01acd@arinc9.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20240314-for-mediatek-mt7531-phy-address-v1-2-52f58db01acd@arinc9.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240426_182911_305099_7177CC57 X-CRM114-Status: GOOD ( 28.42 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Hi Arınç, On Thu, Mar 14, 2024 at 03:20:05PM +0300, Arınç ÜNAL via B4 Relay wrote: > From: Arınç ÜNAL > > The MT7531 switch listens on PHY address 0x1f on an MDIO bus. I've got two > findings that support this. There's no bootstrapping option to change the > PHY address of the switch. The Linux driver hardcodes 0x1f as the PHY > address of the switch. So the reg property on the device tree is currently > ignored by the Linux driver. > > Therefore, describe the correct PHY address on boards that have this > switch. This is already the case on all MT7986 boards here, so use > hexadecimal numbering and align the switch node name with the reg value. Sorry for the late reply to this series which I had not noticed earlier. My comment below applies for the whole series. While this is generally correct, you are mixing cosmetic with functional changes here. Replacing reg = <31>; with reg = <0x1f>; is a purely cosmetic change (and it's up to maintainers taste to like one or the other notation more). On the other hand replacing switch@0 or switch@31 with switch@1f is fixing a bug. Yet even that doesn't have any functional impact on the affected boards as there aren't any other DT nodes which would collide with that incorrect address, nor does the driver actually care about the node name (not before and not after your patch "net: dsa: mt7530-mdio: read PHY address of switch from device tree"). Anyway, there *is* something wrong and everybody should agree it's a good thing to fix it. So imho you should start with a patch only replacing all instances of mt7530/mt7531 switch nodes named 'switch@0' or 'switch@31' with 'switch@1f' as that's fixing an actual (minor) bug. The other thing, using hexadecimal notation for the 'reg' property is a mere matter of (statistically unusual) taste. I fully get the point that using hexdecimal for both, the address in the node name as well as the 'reg' property avoids the exact divergence of the two you are fixing now. Byt statistically unusual I mean: $ find -name \*.dts\* | while read line; do grep 'reg.*=.*<[0-9]*>' $line ; done | wc -l 37284 $ find -name \*.dts\* | while read line; do grep 'reg.*=.*<0x[0-9a-fA-F]*>' $line ; done | wc -l 10339 (I know the above regexp could be done more accurately, but it's good enough to demonstrate my point) So please make this four patches. Two fixing the wrong node names. And another two opening the (purely cosmetic) debate to use hexademical notation for the 'reg' property. Cheers Daniel > > Signed-off-by: Arınç ÜNAL > --- > arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts | 4 ++-- > arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts | 4 ++-- > arch/arm64/boot/dts/mediatek/mt7986b-rfb.dts | 4 ++-- > 3 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts > index e04b1c0c0ebb..2f92f8cfd8a3 100644 > --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts > +++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts > @@ -200,9 +200,9 @@ mdio: mdio-bus { > }; > > &mdio { > - switch: switch@31 { > + switch: switch@1f { > compatible = "mediatek,mt7531"; > - reg = <31>; > + reg = <0x1f>; > interrupt-controller; > #interrupt-cells = <1>; > interrupts-extended = <&pio 66 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts b/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts > index 5d8e3d3f6c20..47f75ece1872 100644 > --- a/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts > +++ b/arch/arm64/boot/dts/mediatek/mt7986a-rfb.dts > @@ -84,9 +84,9 @@ mdio: mdio-bus { > }; > > &mdio { > - switch: switch@0 { > + switch: switch@1f { > compatible = "mediatek,mt7531"; > - reg = <31>; > + reg = <0x1f>; > reset-gpios = <&pio 5 0>; > }; > }; > diff --git a/arch/arm64/boot/dts/mediatek/mt7986b-rfb.dts b/arch/arm64/boot/dts/mediatek/mt7986b-rfb.dts > index 58f77d932429..5148a69f4729 100644 > --- a/arch/arm64/boot/dts/mediatek/mt7986b-rfb.dts > +++ b/arch/arm64/boot/dts/mediatek/mt7986b-rfb.dts > @@ -61,9 +61,9 @@ mdio: mdio-bus { > #address-cells = <1>; > #size-cells = <0>; > > - switch@0 { > + switch@1f { > compatible = "mediatek,mt7531"; > - reg = <31>; > + reg = <0x1f>; > reset-gpios = <&pio 5 0>; > > ports { > > -- > 2.40.1 > > 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 2D1D8C4345F for ; Sat, 27 Apr 2024 01:29:27 +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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=KBW/5PXbYS3Yf1q/3D5Fi606uYmaOBb1a16lVQij+pM=; b=NmWdUwXSDa+NvI N6e048wH7gXMsjFDrDpkHLX/Z2GoXehK1NwY5r8ot09kVkfi3IOZnwGeSNA75C6HwURfOUAvQhu1R 3UCQaHI4rVzxI+J2InaIKWfVmdl36MykgUzgHa0281xzkWFQZVBPWG+xXtaXng5WCg2MClnvPKk63 Dqe4LwUjF61MQHC254VAbi5K8k8kLTtvMd49lAymvS8HCUehnWoNv3AuuahSnXZWudvOkR8QhR4s/ Onb+i/QRVUwsd083NYfDBUrybgpjDsoZMvCGuAUixrQ3c0s6Bj5Enev7uo57x2fTX9F+wBDR8+04F 5AzazmrrnLy2QzUeOiFA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s0WsM-0000000EZp8-0arT; Sat, 27 Apr 2024 01:29:14 +0000 Received: from pidgin.makrotopia.org ([2a07:2ec0:3002::65]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s0WsJ-0000000EZoY-10LD; Sat, 27 Apr 2024 01:29:12 +0000 Received: from local by pidgin.makrotopia.org with esmtpsa (TLS1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.97.1) (envelope-from ) id 1s0WsA-0000000060D-3rUx; Sat, 27 Apr 2024 01:29:03 +0000 Date: Sat, 27 Apr 2024 02:28:59 +0100 From: Daniel Golle To: arinc.unal@arinc9.com Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Matthias Brugger , AngeloGioacchino Del Regno , mithat.guner@xeront.com, erkin.bozoglu@xeront.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Subject: Re: [PATCH 2/2] arm64: dts: mediatek: mt7986: set PHY address of MT7531 switch to 0x1f Message-ID: References: <20240314-for-mediatek-mt7531-phy-address-v1-0-52f58db01acd@arinc9.com> <20240314-for-mediatek-mt7531-phy-address-v1-2-52f58db01acd@arinc9.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240314-for-mediatek-mt7531-phy-address-v1-2-52f58db01acd@arinc9.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240426_182911_305099_7177CC57 X-CRM114-Status: GOOD ( 28.42 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgQXLEsW7DpywKCk9uIFRodSwgTWFyIDE0LCAyMDI0IGF0IDAzOjIwOjA1UE0gKzAzMDAsIEFy xLFuw6cgw5xOQUwgdmlhIEI0IFJlbGF5IHdyb3RlOgo+IEZyb206IEFyxLFuw6cgw5xOQUwgPGFy aW5jLnVuYWxAYXJpbmM5LmNvbT4KPiAKPiBUaGUgTVQ3NTMxIHN3aXRjaCBsaXN0ZW5zIG9uIFBI WSBhZGRyZXNzIDB4MWYgb24gYW4gTURJTyBidXMuIEkndmUgZ290IHR3bwo+IGZpbmRpbmdzIHRo YXQgc3VwcG9ydCB0aGlzLiBUaGVyZSdzIG5vIGJvb3RzdHJhcHBpbmcgb3B0aW9uIHRvIGNoYW5n ZSB0aGUKPiBQSFkgYWRkcmVzcyBvZiB0aGUgc3dpdGNoLiBUaGUgTGludXggZHJpdmVyIGhhcmRj b2RlcyAweDFmIGFzIHRoZSBQSFkKPiBhZGRyZXNzIG9mIHRoZSBzd2l0Y2guIFNvIHRoZSByZWcg cHJvcGVydHkgb24gdGhlIGRldmljZSB0cmVlIGlzIGN1cnJlbnRseQo+IGlnbm9yZWQgYnkgdGhl IExpbnV4IGRyaXZlci4KPiAKPiBUaGVyZWZvcmUsIGRlc2NyaWJlIHRoZSBjb3JyZWN0IFBIWSBh ZGRyZXNzIG9uIGJvYXJkcyB0aGF0IGhhdmUgdGhpcwo+IHN3aXRjaC4gVGhpcyBpcyBhbHJlYWR5 IHRoZSBjYXNlIG9uIGFsbCBNVDc5ODYgYm9hcmRzIGhlcmUsIHNvIHVzZQo+IGhleGFkZWNpbWFs IG51bWJlcmluZyBhbmQgYWxpZ24gdGhlIHN3aXRjaCBub2RlIG5hbWUgd2l0aCB0aGUgcmVnIHZh bHVlLgoKU29ycnkgZm9yIHRoZSBsYXRlIHJlcGx5IHRvIHRoaXMgc2VyaWVzIHdoaWNoIEkgaGFk IG5vdCBub3RpY2VkIGVhcmxpZXIuCk15IGNvbW1lbnQgYmVsb3cgYXBwbGllcyBmb3IgdGhlIHdo b2xlIHNlcmllcy4KCldoaWxlIHRoaXMgaXMgZ2VuZXJhbGx5IGNvcnJlY3QsIHlvdSBhcmUgbWl4 aW5nIGNvc21ldGljIHdpdGggZnVuY3Rpb25hbApjaGFuZ2VzIGhlcmUuCgpSZXBsYWNpbmcKcmVn ID0gPDMxPjsKd2l0aApyZWcgPSA8MHgxZj47CmlzIGEgcHVyZWx5IGNvc21ldGljIGNoYW5nZSAo YW5kIGl0J3MgdXAgdG8gbWFpbnRhaW5lcnMgdGFzdGUgdG8gbGlrZQpvbmUgb3IgdGhlIG90aGVy IG5vdGF0aW9uIG1vcmUpLgoKT24gdGhlIG90aGVyIGhhbmQgcmVwbGFjaW5nCnN3aXRjaEAwIG9y IHN3aXRjaEAzMQp3aXRoCnN3aXRjaEAxZgppcyBmaXhpbmcgYSBidWcuIFlldCBldmVuIHRoYXQg ZG9lc24ndCBoYXZlIGFueSBmdW5jdGlvbmFsIGltcGFjdCBvbiB0aGUKYWZmZWN0ZWQgYm9hcmRz IGFzIHRoZXJlIGFyZW4ndCBhbnkgb3RoZXIgRFQgbm9kZXMgd2hpY2ggd291bGQgY29sbGlkZQp3 aXRoIHRoYXQgaW5jb3JyZWN0IGFkZHJlc3MsIG5vciBkb2VzIHRoZSBkcml2ZXIgYWN0dWFsbHkg Y2FyZSBhYm91dCB0aGUKbm9kZSBuYW1lIChub3QgYmVmb3JlIGFuZCBub3QgYWZ0ZXIgeW91ciBw YXRjaAoibmV0OiBkc2E6IG10NzUzMC1tZGlvOiByZWFkIFBIWSBhZGRyZXNzIG9mIHN3aXRjaCBm cm9tIGRldmljZSB0cmVlIikuCkFueXdheSwgdGhlcmUgKmlzKiBzb21ldGhpbmcgd3JvbmcgYW5k IGV2ZXJ5Ym9keSBzaG91bGQgYWdyZWUgaXQncyBhCmdvb2QgdGhpbmcgdG8gZml4IGl0LgoKU28g aW1obyB5b3Ugc2hvdWxkIHN0YXJ0IHdpdGggYSBwYXRjaCBvbmx5IHJlcGxhY2luZyBhbGwgaW5z dGFuY2VzIG9mCm10NzUzMC9tdDc1MzEgc3dpdGNoIG5vZGVzIG5hbWVkICdzd2l0Y2hAMCcgb3Ig J3N3aXRjaEAzMScgd2l0aAonc3dpdGNoQDFmJyBhcyB0aGF0J3MgZml4aW5nIGFuIGFjdHVhbCAo bWlub3IpIGJ1Zy4KClRoZSBvdGhlciB0aGluZywgdXNpbmcgaGV4YWRlY2ltYWwgbm90YXRpb24g Zm9yIHRoZSAncmVnJyBwcm9wZXJ0eSBpcwphIG1lcmUgbWF0dGVyIG9mIChzdGF0aXN0aWNhbGx5 IHVudXN1YWwpIHRhc3RlLiBJIGZ1bGx5IGdldCB0aGUgcG9pbnQKdGhhdCB1c2luZyBoZXhkZWNp bWFsIGZvciBib3RoLCB0aGUgYWRkcmVzcyBpbiB0aGUgbm9kZSBuYW1lIGFzIHdlbGwKYXMgdGhl ICdyZWcnIHByb3BlcnR5IGF2b2lkcyB0aGUgZXhhY3QgZGl2ZXJnZW5jZSBvZiB0aGUgdHdvIHlv dSBhcmUKZml4aW5nIG5vdy4KCkJ5dCBzdGF0aXN0aWNhbGx5IHVudXN1YWwgSSBtZWFuOgokIGZp bmQgLW5hbWUgXCouZHRzXCogfCB3aGlsZSByZWFkIGxpbmU7IGRvIGdyZXAgJ3JlZy4qPS4qPFsw LTldKj4nICRsaW5lIDsgZG9uZSB8IHdjIC1sCjM3Mjg0CiQgZmluZCAtbmFtZSBcKi5kdHNcKiB8 IHdoaWxlIHJlYWQgbGluZTsgZG8gZ3JlcCAncmVnLio9Lio8MHhbMC05YS1mQS1GXSo+JyAkbGlu ZSA7IGRvbmUgfCB3YyAtbAoxMDMzOQoKKEkga25vdyB0aGUgYWJvdmUgcmVnZXhwIGNvdWxkIGJl IGRvbmUgbW9yZSBhY2N1cmF0ZWx5LCBidXQgaXQncyBnb29kCmVub3VnaCB0byBkZW1vbnN0cmF0 ZSBteSBwb2ludCkKClNvIHBsZWFzZSBtYWtlIHRoaXMgZm91ciBwYXRjaGVzLiBUd28gZml4aW5n IHRoZSB3cm9uZyBub2RlIG5hbWVzLgpBbmQgYW5vdGhlciB0d28gb3BlbmluZyB0aGUgKHB1cmVs eSBjb3NtZXRpYykgZGViYXRlIHRvIHVzZSBoZXhhZGVtaWNhbApub3RhdGlvbiBmb3IgdGhlICdy ZWcnIHByb3BlcnR5LgoKCkNoZWVycwoKCkRhbmllbAoKCgo+IAo+IFNpZ25lZC1vZmYtYnk6IEFy xLFuw6cgw5xOQUwgPGFyaW5jLnVuYWxAYXJpbmM5LmNvbT4KPiAtLS0KPiAgYXJjaC9hcm02NC9i b290L2R0cy9tZWRpYXRlay9tdDc5ODZhLWJhbmFuYXBpLWJwaS1yMy5kdHMgfCA0ICsrLS0KPiAg YXJjaC9hcm02NC9ib290L2R0cy9tZWRpYXRlay9tdDc5ODZhLXJmYi5kdHMgICAgICAgICAgICAg fCA0ICsrLS0KPiAgYXJjaC9hcm02NC9ib290L2R0cy9tZWRpYXRlay9tdDc5ODZiLXJmYi5kdHMg ICAgICAgICAgICAgfCA0ICsrLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyks IDYgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQvYm9vdC9kdHMvbWVk aWF0ZWsvbXQ3OTg2YS1iYW5hbmFwaS1icGktcjMuZHRzIGIvYXJjaC9hcm02NC9ib290L2R0cy9t ZWRpYXRlay9tdDc5ODZhLWJhbmFuYXBpLWJwaS1yMy5kdHMKPiBpbmRleCBlMDRiMWMwYzBlYmIu LjJmOTJmOGNmZDhhMyAxMDA2NDQKPiAtLS0gYS9hcmNoL2FybTY0L2Jvb3QvZHRzL21lZGlhdGVr L210Nzk4NmEtYmFuYW5hcGktYnBpLXIzLmR0cwo+ICsrKyBiL2FyY2gvYXJtNjQvYm9vdC9kdHMv bWVkaWF0ZWsvbXQ3OTg2YS1iYW5hbmFwaS1icGktcjMuZHRzCj4gQEAgLTIwMCw5ICsyMDAsOSBA QCBtZGlvOiBtZGlvLWJ1cyB7Cj4gIH07Cj4gIAo+ICAmbWRpbyB7Cj4gLQlzd2l0Y2g6IHN3aXRj aEAzMSB7Cj4gKwlzd2l0Y2g6IHN3aXRjaEAxZiB7Cj4gIAkJY29tcGF0aWJsZSA9ICJtZWRpYXRl ayxtdDc1MzEiOwo+IC0JCXJlZyA9IDwzMT47Cj4gKwkJcmVnID0gPDB4MWY+Owo+ICAJCWludGVy cnVwdC1jb250cm9sbGVyOwo+ICAJCSNpbnRlcnJ1cHQtY2VsbHMgPSA8MT47Cj4gIAkJaW50ZXJy dXB0cy1leHRlbmRlZCA9IDwmcGlvIDY2IElSUV9UWVBFX0xFVkVMX0hJR0g+Owo+IGRpZmYgLS1n aXQgYS9hcmNoL2FybTY0L2Jvb3QvZHRzL21lZGlhdGVrL210Nzk4NmEtcmZiLmR0cyBiL2FyY2gv YXJtNjQvYm9vdC9kdHMvbWVkaWF0ZWsvbXQ3OTg2YS1yZmIuZHRzCj4gaW5kZXggNWQ4ZTNkM2Y2 YzIwLi40N2Y3NWVjZTE4NzIgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm02NC9ib290L2R0cy9tZWRp YXRlay9tdDc5ODZhLXJmYi5kdHMKPiArKysgYi9hcmNoL2FybTY0L2Jvb3QvZHRzL21lZGlhdGVr L210Nzk4NmEtcmZiLmR0cwo+IEBAIC04NCw5ICs4NCw5IEBAIG1kaW86IG1kaW8tYnVzIHsKPiAg fTsKPiAgCj4gICZtZGlvIHsKPiAtCXN3aXRjaDogc3dpdGNoQDAgewo+ICsJc3dpdGNoOiBzd2l0 Y2hAMWYgewo+ICAJCWNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ3NTMxIjsKPiAtCQlyZWcgPSA8 MzE+Owo+ICsJCXJlZyA9IDwweDFmPjsKPiAgCQlyZXNldC1ncGlvcyA9IDwmcGlvIDUgMD47Cj4g IAl9Owo+ICB9Owo+IGRpZmYgLS1naXQgYS9hcmNoL2FybTY0L2Jvb3QvZHRzL21lZGlhdGVrL210 Nzk4NmItcmZiLmR0cyBiL2FyY2gvYXJtNjQvYm9vdC9kdHMvbWVkaWF0ZWsvbXQ3OTg2Yi1yZmIu ZHRzCj4gaW5kZXggNThmNzdkOTMyNDI5Li41MTQ4YTY5ZjQ3MjkgMTAwNjQ0Cj4gLS0tIGEvYXJj aC9hcm02NC9ib290L2R0cy9tZWRpYXRlay9tdDc5ODZiLXJmYi5kdHMKPiArKysgYi9hcmNoL2Fy bTY0L2Jvb3QvZHRzL21lZGlhdGVrL210Nzk4NmItcmZiLmR0cwo+IEBAIC02MSw5ICs2MSw5IEBA IG1kaW86IG1kaW8tYnVzIHsKPiAgCQkjYWRkcmVzcy1jZWxscyA9IDwxPjsKPiAgCQkjc2l6ZS1j ZWxscyA9IDwwPjsKPiAgCj4gLQkJc3dpdGNoQDAgewo+ICsJCXN3aXRjaEAxZiB7Cj4gIAkJCWNv bXBhdGlibGUgPSAibWVkaWF0ZWssbXQ3NTMxIjsKPiAtCQkJcmVnID0gPDMxPjsKPiArCQkJcmVn ID0gPDB4MWY+Owo+ICAJCQlyZXNldC1ncGlvcyA9IDwmcGlvIDUgMD47Cj4gIAo+ICAJCQlwb3J0 cyB7Cj4gCj4gLS0gCj4gMi40MC4xCj4gCj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1h cm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcv bWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==