From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from perceval.ideasonboard.com ([213.167.242.64]:58330 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727193AbeIQOeT (ORCPT ); Mon, 17 Sep 2018 10:34:19 -0400 From: Laurent Pinchart To: Simon Horman Cc: Laurent Pinchart , dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, Ulrich Hecht , Kieran Bingham Subject: Re: [PATCH v2 13/16] arm64: dts: renesas: r8a77990: Add display output support Date: Mon, 17 Sep 2018 12:08:03 +0300 Message-ID: <3481349.HLygXACKyS@avalon> In-Reply-To: <20180917085105.uejmjkwxsvsna75p@verge.net.au> References: <20180914091046.483-1-laurent.pinchart+renesas@ideasonboard.com> <1591566.tkYZ6URfXP@avalon> <20180917085105.uejmjkwxsvsna75p@verge.net.au> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-renesas-soc-owner@vger.kernel.org List-ID: Hi Simon, On Monday, 17 September 2018 11:51:06 EEST Simon Horman wrote: > On Mon, Sep 17, 2018 at 11:38:43AM +0300, Laurent Pinchart wrote: > > On Monday, 17 September 2018 10:50:55 EEST Simon Horman wrote: > > > On Fri, Sep 14, 2018 at 12:10:43PM +0300, Laurent Pinchart wrote: > > > > The R8A77990 (E3) platform has one RGB output and two LVDS outputs > > > > connected to the DU. Add the DT nodes for the DU, LVDS encoders and > > > > supporting VSP and FCP. > > > > > > > > Signed-off-by: Laurent Pinchart > > > > > > > > Tested-by: Jacopo Mondi > > > > --- > > > > > > > > arch/arm64/boot/dts/renesas/r8a77990.dtsi | 167 +++++++++++++++++++++ > > > > 1 file changed, 167 insertions(+) > > > > > > > > diff --git a/arch/arm64/boot/dts/renesas/r8a77990.dtsi > > > > b/arch/arm64/boot/dts/renesas/r8a77990.dtsi index > > > > abb14af76c0e..600074ca3ee5 100644 > > > > --- a/arch/arm64/boot/dts/renesas/r8a77990.dtsi > > > > +++ b/arch/arm64/boot/dts/renesas/r8a77990.dtsi > > > > @@ -537,6 +537,173 @@ > > > > resets = <&cpg 408>; > > > > }; > > > > > > These nodes should be placed after the gic to preserve the sorting > > > of nodes by bus address and then IP block. > > > > Aren't they already ? :-) > > Git didn't seem to think so. But its not a big deal, > I can fix this up locally. Did it apply the below hunk to a different location ? 408 is the gic, isn't it ? > > > > + vspb0: vsp@fe960000 { > > > > + compatible = "renesas,vsp2"; > > > > + reg = <0 0xfe960000 0 0x8000>; > > > > + interrupts = ; > > > > + clocks = <&cpg CPG_MOD 626>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 626>; > > > > + renesas,fcp = <&fcpvb0>; > > > > + }; > > > > + > > > > + fcpvb0: fcp@fe96f000 { > > > > + compatible = "renesas,fcpv"; > > > > + reg = <0 0xfe96f000 0 0x200>; > > > > + clocks = <&cpg CPG_MOD 607>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 607>; > > > > + iommus = <&ipmmu_vp0 5>; > > > > + }; > > > > + > > > > + vspi0: vsp@fe9a0000 { > > > > + compatible = "renesas,vsp2"; > > > > + reg = <0 0xfe9a0000 0 0x8000>; > > > > + interrupts = ; > > > > + clocks = <&cpg CPG_MOD 622>; > > > > > > R-Car Series, 3rd Generation, v1.00, Table Table 8A.21 indicates > > > that this clock should be <&cpg CPG_MOD 631>. The clock above is > > > (according to my reading of the documentation) correctly > > > used for vspd1 below. > > > > Bad copy and paste, thank you for pointing it out, it will be fixed in v3. > > > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 631>; > > > > + renesas,fcp = <&fcpvi0>; > > > > + }; > > > > + > > > > + fcpvi0: fcp@fe9af000 { > > > > + compatible = "renesas,fcpv"; > > > > + reg = <0 0xfe9af000 0 0x200>; > > > > + clocks = <&cpg CPG_MOD 611>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 611>; > > > > + iommus = <&ipmmu_vp0 8>; > > > > + }; > > > > + > > > > + vspd0: vsp@fea20000 { > > > > + compatible = "renesas,vsp2"; > > > > + reg = <0 0xfea20000 0 0x7000>; > > > > + interrupts = ; > > > > + clocks = <&cpg CPG_MOD 623>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 623>; > > > > + renesas,fcp = <&fcpvd0>; > > > > + }; > > > > + > > > > + fcpvd0: fcp@fea27000 { > > > > + compatible = "renesas,fcpv"; > > > > + reg = <0 0xfea27000 0 0x200>; > > > > + clocks = <&cpg CPG_MOD 603>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 603>; > > > > + iommus = <&ipmmu_vi0 8>; > > > > + }; > > > > + > > > > + vspd1: vsp@fea28000 { > > > > + compatible = "renesas,vsp2"; > > > > + reg = <0 0xfea28000 0 0x7000>; > > > > + interrupts = ; > > > > + clocks = <&cpg CPG_MOD 622>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 622>; > > > > + renesas,fcp = <&fcpvd1>; > > > > + }; > > > > + > > > > + fcpvd1: fcp@fea2f000 { > > > > + compatible = "renesas,fcpv"; > > > > + reg = <0 0xfea2f000 0 0x200>; > > > > + clocks = <&cpg CPG_MOD 602>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 602>; > > > > + iommus = <&ipmmu_vi0 9>; > > > > + }; > > > > + > > > > + du: display@feb00000 { > > > > + compatible = "renesas,du-r8a77990"; > > > > + reg = <0 0xfeb00000 0 0x80000>; > > > > + interrupts = , > > > > + ; > > > > + clocks = <&cpg CPG_MOD 724>, > > > > + <&cpg CPG_MOD 723>; > > > > + clock-names = "du.0", "du.1"; > > > > + vsps = <&vspd0 0 &vspd1 0>; > > > > + status = "disabled"; > > > > + > > > > + ports { > > > > + #address-cells = <1>; > > > > + #size-cells = <0>; > > > > + > > > > + port@0 { > > > > + reg = <0>; > > > > + du_out_rgb: endpoint { > > > > + }; > > > > + }; > > > > + > > > > + port@1 { > > > > + reg = <1>; > > > > + du_out_lvds0: endpoint { > > > > + remote-endpoint = <&lvds0_in>; > > > > + }; > > > > + }; > > > > + > > > > + port@2 { > > > > + reg = <2>; > > > > + du_out_lvds1: endpoint { > > > > + remote-endpoint = <&lvds1_in>; > > > > + }; > > > > + }; > > > > + }; > > > > + }; > > > > + > > > > + lvds0: lvds-encoder@feb90000 { > > > > + compatible = "renesas,r8a77990-lvds"; > > > > + reg = <0 0xfeb90000 0 0x20>; > > > > + clocks = <&cpg CPG_MOD 727>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 727>; > > > > + status = "disabled"; > > > > + > > > > + ports { > > > > + #address-cells = <1>; > > > > + #size-cells = <0>; > > > > + > > > > + port@0 { > > > > + reg = <0>; > > > > + lvds0_in: endpoint { > > > > + remote-endpoint = <&du_out_lvds0>; > > > > + }; > > > > + }; > > > > + > > > > + port@1 { > > > > + reg = <1>; > > > > + lvds0_out: endpoint { > > > > + }; > > > > + }; > > > > + }; > > > > + }; > > > > + > > > > + lvds1: lvds-encoder@feb90100 { > > > > + compatible = "renesas,r8a77990-lvds"; > > > > + reg = <0 0xfeb90100 0 0x20>; > > > > + clocks = <&cpg CPG_MOD 727>; > > > > + power-domains = <&sysc R8A77990_PD_ALWAYS_ON>; > > > > + resets = <&cpg 726>; > > > > + status = "disabled"; > > > > + > > > > + ports { > > > > + #address-cells = <1>; > > > > + #size-cells = <0>; > > > > + > > > > + port@0 { > > > > + reg = <0>; > > > > + lvds1_in: endpoint { > > > > + remote-endpoint = <&du_out_lvds1>; > > > > + }; > > > > + }; > > > > + > > > > + port@1 { > > > > + reg = <1>; > > > > + lvds1_out: endpoint { > > > > + }; > > > > + }; > > > > + }; > > > > + }; > > > > + > > > > > > > > prr: chipid@fff00044 { > > > > > > > > compatible = "renesas,prr"; > > > > reg = <0 0xfff00044 0 4>; -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v2 13/16] arm64: dts: renesas: r8a77990: Add display output support Date: Mon, 17 Sep 2018 12:08:03 +0300 Message-ID: <3481349.HLygXACKyS@avalon> References: <20180914091046.483-1-laurent.pinchart+renesas@ideasonboard.com> <1591566.tkYZ6URfXP@avalon> <20180917085105.uejmjkwxsvsna75p@verge.net.au> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1929A6E251 for ; Mon, 17 Sep 2018 09:07:50 +0000 (UTC) In-Reply-To: <20180917085105.uejmjkwxsvsna75p@verge.net.au> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Simon Horman Cc: linux-renesas-soc@vger.kernel.org, Ulrich Hecht , Laurent Pinchart , Kieran Bingham , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgU2ltb24sCgpPbiBNb25kYXksIDE3IFNlcHRlbWJlciAyMDE4IDExOjUxOjA2IEVFU1QgU2lt b24gSG9ybWFuIHdyb3RlOgo+IE9uIE1vbiwgU2VwIDE3LCAyMDE4IGF0IDExOjM4OjQzQU0gKzAz MDAsIExhdXJlbnQgUGluY2hhcnQgd3JvdGU6Cj4gPiBPbiBNb25kYXksIDE3IFNlcHRlbWJlciAy MDE4IDEwOjUwOjU1IEVFU1QgU2ltb24gSG9ybWFuIHdyb3RlOgo+ID4gPiBPbiBGcmksIFNlcCAx NCwgMjAxOCBhdCAxMjoxMDo0M1BNICswMzAwLCBMYXVyZW50IFBpbmNoYXJ0IHdyb3RlOgo+ID4g PiA+IFRoZSBSOEE3Nzk5MCAoRTMpIHBsYXRmb3JtIGhhcyBvbmUgUkdCIG91dHB1dCBhbmQgdHdv IExWRFMgb3V0cHV0cwo+ID4gPiA+IGNvbm5lY3RlZCB0byB0aGUgRFUuIEFkZCB0aGUgRFQgbm9k ZXMgZm9yIHRoZSBEVSwgTFZEUyBlbmNvZGVycyBhbmQKPiA+ID4gPiBzdXBwb3J0aW5nIFZTUCBh bmQgRkNQLgo+ID4gPiA+IAo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IExhdXJlbnQgUGluY2hhcnQK PiA+ID4gPiA8bGF1cmVudC5waW5jaGFydCtyZW5lc2FzQGlkZWFzb25ib2FyZC5jb20+Cj4gPiA+ ID4gVGVzdGVkLWJ5OiBKYWNvcG8gTW9uZGkgPGphY29wbytyZW5lc2FzQGptb25kaS5vcmc+Cj4g PiA+ID4gLS0tCj4gPiA+ID4gCj4gPiA+ID4gIGFyY2gvYXJtNjQvYm9vdC9kdHMvcmVuZXNhcy9y OGE3Nzk5MC5kdHNpIHwgMTY3ICsrKysrKysrKysrKysrKysrKysrKwo+ID4gPiA+ICAxIGZpbGUg Y2hhbmdlZCwgMTY3IGluc2VydGlvbnMoKykKPiA+ID4gPiAKPiA+ID4gPiBkaWZmIC0tZ2l0IGEv YXJjaC9hcm02NC9ib290L2R0cy9yZW5lc2FzL3I4YTc3OTkwLmR0c2kKPiA+ID4gPiBiL2FyY2gv YXJtNjQvYm9vdC9kdHMvcmVuZXNhcy9yOGE3Nzk5MC5kdHNpIGluZGV4Cj4gPiA+ID4gYWJiMTRh Zjc2YzBlLi42MDAwNzRjYTNlZTUgMTAwNjQ0Cj4gPiA+ID4gLS0tIGEvYXJjaC9hcm02NC9ib290 L2R0cy9yZW5lc2FzL3I4YTc3OTkwLmR0c2kKPiA+ID4gPiArKysgYi9hcmNoL2FybTY0L2Jvb3Qv ZHRzL3JlbmVzYXMvcjhhNzc5OTAuZHRzaQo+ID4gPiA+IEBAIC01MzcsNiArNTM3LDE3MyBAQAo+ ID4gPiA+ICAJCQlyZXNldHMgPSA8JmNwZyA0MDg+Owo+ID4gPiA+ICAJCX07Cj4gPiA+IAo+ID4g PiBUaGVzZSBub2RlcyBzaG91bGQgYmUgcGxhY2VkIGFmdGVyIHRoZSBnaWMgdG8gcHJlc2VydmUg dGhlIHNvcnRpbmcKPiA+ID4gb2Ygbm9kZXMgYnkgYnVzIGFkZHJlc3MgYW5kIHRoZW4gSVAgYmxv Y2suCj4gPiAKPiA+IEFyZW4ndCB0aGV5IGFscmVhZHkgPyA6LSkKPiAKPiBHaXQgZGlkbid0IHNl ZW0gdG8gdGhpbmsgc28uIEJ1dCBpdHMgbm90IGEgYmlnIGRlYWwsCj4gSSBjYW4gZml4IHRoaXMg dXAgbG9jYWxseS4KCkRpZCBpdCBhcHBseSB0aGUgYmVsb3cgaHVuayB0byBhIGRpZmZlcmVudCBs b2NhdGlvbiA/IDQwOCBpcyB0aGUgZ2ljLCBpc24ndCBpdCAKPwoKPiA+ID4gPiArCQl2c3BiMDog dnNwQGZlOTYwMDAwIHsKPiA+ID4gPiArCQkJY29tcGF0aWJsZSA9ICJyZW5lc2FzLHZzcDIiOwo+ ID4gPiA+ICsJCQlyZWcgPSA8MCAweGZlOTYwMDAwIDAgMHg4MDAwPjsKPiA+ID4gPiArCQkJaW50 ZXJydXB0cyA9IDxHSUNfU1BJIDI2NiBJUlFfVFlQRV9MRVZFTF9ISUdIPjsKPiA+ID4gPiArCQkJ Y2xvY2tzID0gPCZjcGcgQ1BHX01PRCA2MjY+Owo+ID4gPiA+ICsJCQlwb3dlci1kb21haW5zID0g PCZzeXNjIFI4QTc3OTkwX1BEX0FMV0FZU19PTj47Cj4gPiA+ID4gKwkJCXJlc2V0cyA9IDwmY3Bn IDYyNj47Cj4gPiA+ID4gKwkJCXJlbmVzYXMsZmNwID0gPCZmY3B2YjA+Owo+ID4gPiA+ICsJCX07 Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCWZjcHZiMDogZmNwQGZlOTZmMDAwIHsKPiA+ID4gPiArCQkJ Y29tcGF0aWJsZSA9ICJyZW5lc2FzLGZjcHYiOwo+ID4gPiA+ICsJCQlyZWcgPSA8MCAweGZlOTZm MDAwIDAgMHgyMDA+Owo+ID4gPiA+ICsJCQljbG9ja3MgPSA8JmNwZyBDUEdfTU9EIDYwNz47Cj4g PiA+ID4gKwkJCXBvd2VyLWRvbWFpbnMgPSA8JnN5c2MgUjhBNzc5OTBfUERfQUxXQVlTX09OPjsK PiA+ID4gPiArCQkJcmVzZXRzID0gPCZjcGcgNjA3PjsKPiA+ID4gPiArCQkJaW9tbXVzID0gPCZp cG1tdV92cDAgNT47Cj4gPiA+ID4gKwkJfTsKPiA+ID4gPiArCj4gPiA+ID4gKwkJdnNwaTA6IHZz cEBmZTlhMDAwMCB7Cj4gPiA+ID4gKwkJCWNvbXBhdGlibGUgPSAicmVuZXNhcyx2c3AyIjsKPiA+ ID4gPiArCQkJcmVnID0gPDAgMHhmZTlhMDAwMCAwIDB4ODAwMD47Cj4gPiA+ID4gKwkJCWludGVy cnVwdHMgPSA8R0lDX1NQSSA0NDQgSVJRX1RZUEVfTEVWRUxfSElHSD47Cj4gPiA+ID4gKwkJCWNs b2NrcyA9IDwmY3BnIENQR19NT0QgNjIyPjsKPiA+ID4gCj4gPiA+IFItQ2FyIFNlcmllcywgM3Jk IEdlbmVyYXRpb24sIHYxLjAwLCBUYWJsZSBUYWJsZSA4QS4yMSBpbmRpY2F0ZXMKPiA+ID4gdGhh dCB0aGlzIGNsb2NrIHNob3VsZCBiZSA8JmNwZyBDUEdfTU9EIDYzMT4uIFRoZSBjbG9jayBhYm92 ZSBpcwo+ID4gPiAoYWNjb3JkaW5nIHRvIG15IHJlYWRpbmcgb2YgdGhlIGRvY3VtZW50YXRpb24p IGNvcnJlY3RseQo+ID4gPiB1c2VkIGZvciB2c3BkMSBiZWxvdy4KPiA+IAo+ID4gQmFkIGNvcHkg YW5kIHBhc3RlLCB0aGFuayB5b3UgZm9yIHBvaW50aW5nIGl0IG91dCwgaXQgd2lsbCBiZSBmaXhl ZCBpbiB2My4KPiA+IAo+ID4gPiA+ICsJCQlwb3dlci1kb21haW5zID0gPCZzeXNjIFI4QTc3OTkw X1BEX0FMV0FZU19PTj47Cj4gPiA+ID4gKwkJCXJlc2V0cyA9IDwmY3BnIDYzMT47Cj4gPiA+ID4g KwkJCXJlbmVzYXMsZmNwID0gPCZmY3B2aTA+Owo+ID4gPiA+ICsJCX07Cj4gPiA+ID4gKwo+ID4g PiA+ICsJCWZjcHZpMDogZmNwQGZlOWFmMDAwIHsKPiA+ID4gPiArCQkJY29tcGF0aWJsZSA9ICJy ZW5lc2FzLGZjcHYiOwo+ID4gPiA+ICsJCQlyZWcgPSA8MCAweGZlOWFmMDAwIDAgMHgyMDA+Owo+ ID4gPiA+ICsJCQljbG9ja3MgPSA8JmNwZyBDUEdfTU9EIDYxMT47Cj4gPiA+ID4gKwkJCXBvd2Vy LWRvbWFpbnMgPSA8JnN5c2MgUjhBNzc5OTBfUERfQUxXQVlTX09OPjsKPiA+ID4gPiArCQkJcmVz ZXRzID0gPCZjcGcgNjExPjsKPiA+ID4gPiArCQkJaW9tbXVzID0gPCZpcG1tdV92cDAgOD47Cj4g PiA+ID4gKwkJfTsKPiA+ID4gPiArCj4gPiA+ID4gKwkJdnNwZDA6IHZzcEBmZWEyMDAwMCB7Cj4g PiA+ID4gKwkJCWNvbXBhdGlibGUgPSAicmVuZXNhcyx2c3AyIjsKPiA+ID4gPiArCQkJcmVnID0g PDAgMHhmZWEyMDAwMCAwIDB4NzAwMD47Cj4gPiA+ID4gKwkJCWludGVycnVwdHMgPSA8R0lDX1NQ SSA0NjYgSVJRX1RZUEVfTEVWRUxfSElHSD47Cj4gPiA+ID4gKwkJCWNsb2NrcyA9IDwmY3BnIENQ R19NT0QgNjIzPjsKPiA+ID4gPiArCQkJcG93ZXItZG9tYWlucyA9IDwmc3lzYyBSOEE3Nzk5MF9Q RF9BTFdBWVNfT04+Owo+ID4gPiA+ICsJCQlyZXNldHMgPSA8JmNwZyA2MjM+Owo+ID4gPiA+ICsJ CQlyZW5lc2FzLGZjcCA9IDwmZmNwdmQwPjsKPiA+ID4gPiArCQl9Owo+ID4gPiA+ICsKPiA+ID4g PiArCQlmY3B2ZDA6IGZjcEBmZWEyNzAwMCB7Cj4gPiA+ID4gKwkJCWNvbXBhdGlibGUgPSAicmVu ZXNhcyxmY3B2IjsKPiA+ID4gPiArCQkJcmVnID0gPDAgMHhmZWEyNzAwMCAwIDB4MjAwPjsKPiA+ ID4gPiArCQkJY2xvY2tzID0gPCZjcGcgQ1BHX01PRCA2MDM+Owo+ID4gPiA+ICsJCQlwb3dlci1k b21haW5zID0gPCZzeXNjIFI4QTc3OTkwX1BEX0FMV0FZU19PTj47Cj4gPiA+ID4gKwkJCXJlc2V0 cyA9IDwmY3BnIDYwMz47Cj4gPiA+ID4gKwkJCWlvbW11cyA9IDwmaXBtbXVfdmkwIDg+Owo+ID4g PiA+ICsJCX07Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCXZzcGQxOiB2c3BAZmVhMjgwMDAgewo+ID4g PiA+ICsJCQljb21wYXRpYmxlID0gInJlbmVzYXMsdnNwMiI7Cj4gPiA+ID4gKwkJCXJlZyA9IDww IDB4ZmVhMjgwMDAgMCAweDcwMDA+Owo+ID4gPiA+ICsJCQlpbnRlcnJ1cHRzID0gPEdJQ19TUEkg NDY3IElSUV9UWVBFX0xFVkVMX0hJR0g+Owo+ID4gPiA+ICsJCQljbG9ja3MgPSA8JmNwZyBDUEdf TU9EIDYyMj47Cj4gPiA+ID4gKwkJCXBvd2VyLWRvbWFpbnMgPSA8JnN5c2MgUjhBNzc5OTBfUERf QUxXQVlTX09OPjsKPiA+ID4gPiArCQkJcmVzZXRzID0gPCZjcGcgNjIyPjsKPiA+ID4gPiArCQkJ cmVuZXNhcyxmY3AgPSA8JmZjcHZkMT47Cj4gPiA+ID4gKwkJfTsKPiA+ID4gPiArCj4gPiA+ID4g KwkJZmNwdmQxOiBmY3BAZmVhMmYwMDAgewo+ID4gPiA+ICsJCQljb21wYXRpYmxlID0gInJlbmVz YXMsZmNwdiI7Cj4gPiA+ID4gKwkJCXJlZyA9IDwwIDB4ZmVhMmYwMDAgMCAweDIwMD47Cj4gPiA+ ID4gKwkJCWNsb2NrcyA9IDwmY3BnIENQR19NT0QgNjAyPjsKPiA+ID4gPiArCQkJcG93ZXItZG9t YWlucyA9IDwmc3lzYyBSOEE3Nzk5MF9QRF9BTFdBWVNfT04+Owo+ID4gPiA+ICsJCQlyZXNldHMg PSA8JmNwZyA2MDI+Owo+ID4gPiA+ICsJCQlpb21tdXMgPSA8JmlwbW11X3ZpMCA5PjsKPiA+ID4g PiArCQl9Owo+ID4gPiA+ICsKPiA+ID4gPiArCQlkdTogZGlzcGxheUBmZWIwMDAwMCB7Cj4gPiA+ ID4gKwkJCWNvbXBhdGlibGUgPSAicmVuZXNhcyxkdS1yOGE3Nzk5MCI7Cj4gPiA+ID4gKwkJCXJl ZyA9IDwwIDB4ZmViMDAwMDAgMCAweDgwMDAwPjsKPiA+ID4gPiArCQkJaW50ZXJydXB0cyA9IDxH SUNfU1BJIDI1NiBJUlFfVFlQRV9MRVZFTF9ISUdIPiwKPiA+ID4gPiArCQkJCSAgICAgPEdJQ19T UEkgMjY4IElSUV9UWVBFX0xFVkVMX0hJR0g+Owo+ID4gPiA+ICsJCQljbG9ja3MgPSA8JmNwZyBD UEdfTU9EIDcyND4sCj4gPiA+ID4gKwkJCQkgPCZjcGcgQ1BHX01PRCA3MjM+Owo+ID4gPiA+ICsJ CQljbG9jay1uYW1lcyA9ICJkdS4wIiwgImR1LjEiOwo+ID4gPiA+ICsJCQl2c3BzID0gPCZ2c3Bk MCAwICZ2c3BkMSAwPjsKPiA+ID4gPiArCQkJc3RhdHVzID0gImRpc2FibGVkIjsKPiA+ID4gPiAr Cj4gPiA+ID4gKwkJCXBvcnRzIHsKPiA+ID4gPiArCQkJCSNhZGRyZXNzLWNlbGxzID0gPDE+Owo+ ID4gPiA+ICsJCQkJI3NpemUtY2VsbHMgPSA8MD47Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCQkJcG9y dEAwIHsKPiA+ID4gPiArCQkJCQlyZWcgPSA8MD47Cj4gPiA+ID4gKwkJCQkJZHVfb3V0X3JnYjog ZW5kcG9pbnQgewo+ID4gPiA+ICsJCQkJCX07Cj4gPiA+ID4gKwkJCQl9Owo+ID4gPiA+ICsKPiA+ ID4gPiArCQkJCXBvcnRAMSB7Cj4gPiA+ID4gKwkJCQkJcmVnID0gPDE+Owo+ID4gPiA+ICsJCQkJ CWR1X291dF9sdmRzMDogZW5kcG9pbnQgewo+ID4gPiA+ICsJCQkJCQlyZW1vdGUtZW5kcG9pbnQg PSA8Jmx2ZHMwX2luPjsKPiA+ID4gPiArCQkJCQl9Owo+ID4gPiA+ICsJCQkJfTsKPiA+ID4gPiAr Cj4gPiA+ID4gKwkJCQlwb3J0QDIgewo+ID4gPiA+ICsJCQkJCXJlZyA9IDwyPjsKPiA+ID4gPiAr CQkJCQlkdV9vdXRfbHZkczE6IGVuZHBvaW50IHsKPiA+ID4gPiArCQkJCQkJcmVtb3RlLWVuZHBv aW50ID0gPCZsdmRzMV9pbj47Cj4gPiA+ID4gKwkJCQkJfTsKPiA+ID4gPiArCQkJCX07Cj4gPiA+ ID4gKwkJCX07Cj4gPiA+ID4gKwkJfTsKPiA+ID4gPiArCj4gPiA+ID4gKwkJbHZkczA6IGx2ZHMt ZW5jb2RlckBmZWI5MDAwMCB7Cj4gPiA+ID4gKwkJCWNvbXBhdGlibGUgPSAicmVuZXNhcyxyOGE3 Nzk5MC1sdmRzIjsKPiA+ID4gPiArCQkJcmVnID0gPDAgMHhmZWI5MDAwMCAwIDB4MjA+Owo+ID4g PiA+ICsJCQljbG9ja3MgPSA8JmNwZyBDUEdfTU9EIDcyNz47Cj4gPiA+ID4gKwkJCXBvd2VyLWRv bWFpbnMgPSA8JnN5c2MgUjhBNzc5OTBfUERfQUxXQVlTX09OPjsKPiA+ID4gPiArCQkJcmVzZXRz ID0gPCZjcGcgNzI3PjsKPiA+ID4gPiArCQkJc3RhdHVzID0gImRpc2FibGVkIjsKPiA+ID4gPiAr Cj4gPiA+ID4gKwkJCXBvcnRzIHsKPiA+ID4gPiArCQkJCSNhZGRyZXNzLWNlbGxzID0gPDE+Owo+ ID4gPiA+ICsJCQkJI3NpemUtY2VsbHMgPSA8MD47Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCQkJcG9y dEAwIHsKPiA+ID4gPiArCQkJCQlyZWcgPSA8MD47Cj4gPiA+ID4gKwkJCQkJbHZkczBfaW46IGVu ZHBvaW50IHsKPiA+ID4gPiArCQkJCQkJcmVtb3RlLWVuZHBvaW50ID0gPCZkdV9vdXRfbHZkczA+ Owo+ID4gPiA+ICsJCQkJCX07Cj4gPiA+ID4gKwkJCQl9Owo+ID4gPiA+ICsKPiA+ID4gPiArCQkJ CXBvcnRAMSB7Cj4gPiA+ID4gKwkJCQkJcmVnID0gPDE+Owo+ID4gPiA+ICsJCQkJCWx2ZHMwX291 dDogZW5kcG9pbnQgewo+ID4gPiA+ICsJCQkJCX07Cj4gPiA+ID4gKwkJCQl9Owo+ID4gPiA+ICsJ CQl9Owo+ID4gPiA+ICsJCX07Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCWx2ZHMxOiBsdmRzLWVuY29k ZXJAZmViOTAxMDAgewo+ID4gPiA+ICsJCQljb21wYXRpYmxlID0gInJlbmVzYXMscjhhNzc5OTAt bHZkcyI7Cj4gPiA+ID4gKwkJCXJlZyA9IDwwIDB4ZmViOTAxMDAgMCAweDIwPjsKPiA+ID4gPiAr CQkJY2xvY2tzID0gPCZjcGcgQ1BHX01PRCA3Mjc+Owo+ID4gPiA+ICsJCQlwb3dlci1kb21haW5z ID0gPCZzeXNjIFI4QTc3OTkwX1BEX0FMV0FZU19PTj47Cj4gPiA+ID4gKwkJCXJlc2V0cyA9IDwm Y3BnIDcyNj47Cj4gPiA+ID4gKwkJCXN0YXR1cyA9ICJkaXNhYmxlZCI7Cj4gPiA+ID4gKwo+ID4g PiA+ICsJCQlwb3J0cyB7Cj4gPiA+ID4gKwkJCQkjYWRkcmVzcy1jZWxscyA9IDwxPjsKPiA+ID4g PiArCQkJCSNzaXplLWNlbGxzID0gPDA+Owo+ID4gPiA+ICsKPiA+ID4gPiArCQkJCXBvcnRAMCB7 Cj4gPiA+ID4gKwkJCQkJcmVnID0gPDA+Owo+ID4gPiA+ICsJCQkJCWx2ZHMxX2luOiBlbmRwb2lu dCB7Cj4gPiA+ID4gKwkJCQkJCXJlbW90ZS1lbmRwb2ludCA9IDwmZHVfb3V0X2x2ZHMxPjsKPiA+ ID4gPiArCQkJCQl9Owo+ID4gPiA+ICsJCQkJfTsKPiA+ID4gPiArCj4gPiA+ID4gKwkJCQlwb3J0 QDEgewo+ID4gPiA+ICsJCQkJCXJlZyA9IDwxPjsKPiA+ID4gPiArCQkJCQlsdmRzMV9vdXQ6IGVu ZHBvaW50IHsKPiA+ID4gPiArCQkJCQl9Owo+ID4gPiA+ICsJCQkJfTsKPiA+ID4gPiArCQkJfTsK PiA+ID4gPiArCQl9Owo+ID4gPiA+ICsKPiA+ID4gPiAKPiA+ID4gPiAgCQlwcnI6IGNoaXBpZEBm ZmYwMDA0NCB7Cj4gPiA+ID4gIAkJCj4gPiA+ID4gIAkJCWNvbXBhdGlibGUgPSAicmVuZXNhcyxw cnIiOwo+ID4gPiA+ICAJCQlyZWcgPSA8MCAweGZmZjAwMDQ0IDAgND47CgoKLS0gClJlZ2FyZHMs CgpMYXVyZW50IFBpbmNoYXJ0CgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo=