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 X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 24C78C4338F for ; Fri, 20 Aug 2021 15:29:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 090DF61214 for ; Fri, 20 Aug 2021 15:29:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240988AbhHTP3m convert rfc822-to-8bit (ORCPT ); Fri, 20 Aug 2021 11:29:42 -0400 Received: from mail.kernel.org ([198.145.29.99]:56884 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238097AbhHTP3k (ORCPT ); Fri, 20 Aug 2021 11:29:40 -0400 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CC10A61102; Fri, 20 Aug 2021 15:29:02 +0000 (UTC) Received: from sofa.misterjones.org ([185.219.108.64] helo=why.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1mH6S4-006Dc2-Vr; Fri, 20 Aug 2021 16:29:01 +0100 Date: Fri, 20 Aug 2021 16:29:00 +0100 Message-ID: <87lf4wqgn7.wl-maz@kernel.org> From: Marc Zyngier To: Chester Lin Cc: Andreas =?UTF-8?B?RsOkcmJlcg==?= , Rob Herring , s32@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-serial@vger.kernel.org, Greg Kroah-Hartman , Shawn Guo , Krzysztof Kozlowski , Oleksij Rempel , Stefan Riedmueller , Matthias Schiffer , Li Yang , Fabio Estevam , Matteo Lisi , Frieder Schrempf , Tim Harvey , Jagan Teki , catalin-dan.udma@nxp.com, bogdan.hamciuc@nxp.com, bogdan.folea@nxp.com, ciprianmarian.costea@nxp.com, radu-nicolae.pirea@nxp.com, ghennadi.procopciuc@nxp.com, Matthias Brugger , "Ivan T . Ivanov" , "Lee, Chun-Yi" Subject: Re: [PATCH 4/8] arm64: dts: add NXP S32G2 support In-Reply-To: References: <20210805065429.27485-1-clin@suse.com> <20210805065429.27485-5-clin@suse.com> <87o89sqmz6.wl-maz@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: clin@suse.com, afaerber@suse.de, robh+dt@kernel.org, s32@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, shawnguo@kernel.org, krzk@kernel.org, linux@rempel-privat.de, s.riedmueller@phytec.de, matthias.schiffer@ew.tq-group.com, leoyang.li@nxp.com, festevam@gmail.com, matteo.lisi@engicam.com, frieder.schrempf@kontron.de, tharvey@gateworks.com, jagan@amarulasolutions.com, catalin-dan.udma@nxp.com, bogdan.hamciuc@nxp.com, bogdan.folea@nxp.com, ciprianmarian.costea@nxp.com, radu-nicolae.pirea@nxp.com, ghennadi.procopciuc@nxp.com, matthias.bgg@gmail.com, iivanov@suse.de, jlee@suse.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Precedence: bulk List-ID: X-Mailing-List: linux-serial@vger.kernel.org On Fri, 20 Aug 2021 16:15:49 +0100, Chester Lin wrote: > > On Fri, Aug 20, 2021 at 02:12:13PM +0100, Marc Zyngier wrote: > > On Thu, 12 Aug 2021 18:26:28 +0100, > > Andreas Färber wrote: > > > > > > Hi Chester et al., > > > > > > On 05.08.21 08:54, Chester Lin wrote: > > > > Add an initial dtsi file for generic SoC features of NXP S32G2. > > > > > > > > Signed-off-by: Chester Lin > > > > --- > > > > arch/arm64/boot/dts/freescale/s32g2.dtsi | 98 ++++++++++++++++++++++++ > > > > 1 file changed, 98 insertions(+) > > > > create mode 100644 arch/arm64/boot/dts/freescale/s32g2.dtsi > > > > > > > > diff --git a/arch/arm64/boot/dts/freescale/s32g2.dtsi b/arch/arm64/boot/dts/freescale/s32g2.dtsi > > > > new file mode 100644 > > > > index 000000000000..3321819c1a2d > > > > --- /dev/null > > > > +++ b/arch/arm64/boot/dts/freescale/s32g2.dtsi > > > > [...] > > > > > > + gic: interrupt-controller@50800000 { > > > > + compatible = "arm,gic-v3"; > > > > + #interrupt-cells = <3>; > > > > + interrupt-controller; > > > > + reg = <0 0x50800000 0 0x10000>, > > > > + <0 0x50880000 0 0x200000>, > > > > That's enough redistributor space for 16 CPUs. However, you only > > describe 4. Either the number of CPUs is wrong, the size is wrong, or > > the GIC has been configured for more cores than the SoC has. > > Confirmed the SoC can only find 4 redistributors: > > localhost:~ # dmesg | grep CPU > [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] > [ 0.000000] Detected VIPT I-cache on CPU0 > [ 0.000000] CPU features: detected: GIC system register CPU interface > [ 0.000000] CPU features: detected: ARM erratum 845719 > [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 > [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=480 to nr_cpu_ids=4. > [ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000050880000 > [ 0.063865] smp: Bringing up secondary CPUs ... > [ 0.068852] Detected VIPT I-cache on CPU1 > [ 0.068894] GICv3: CPU1: found redistributor 1 region 0:0x00000000508a0000 > [ 0.068963] CPU1: Booted secondary processor 0x0000000001 [0x410fd034] > [ 0.069809] Detected VIPT I-cache on CPU2 > [ 0.069851] GICv3: CPU2: found redistributor 100 region 0:0x00000000508c0000 > [ 0.069903] CPU2: Booted secondary processor 0x0000000100 [0x410fd034] > [ 0.070698] Detected VIPT I-cache on CPU3 > [ 0.070722] GICv3: CPU3: found redistributor 101 region 0:0x00000000508e0000 > [ 0.070749] CPU3: Booted secondary processor 0x0000000101 [0x410fd034] > [ 0.070847] smp: Brought up 1 node, 4 CPUs > <..snip..> That's not the correct way to find out. Each CPU tries to find its matching RD in the region. This doesn't mean there aren't more RDs present in the GIC. You need to iterate over all the RDs in the region until you find one that has GICR_TYPER.Last == 1. This will give you the actual count. Alternatively, you can check whether the RD at 508e0000 has that bit set. If it doesn't, then you know there are more RDs than CPUs. M. -- Without deviation from the norm, progress is not possible. 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 X-Spam-Level: X-Spam-Status: No, score=-14.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 57029C4338F for ; Fri, 20 Aug 2021 15:30:38 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 15ABD60F44 for ; Fri, 20 Aug 2021 15:30:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 15ABD60F44 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org 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: Subject:Cc:To:From:Message-ID:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Oz3SL4lfQrDTJZCZquz9CDEFuTJOAmTeWedHvNgzLww=; b=rAw7ELNZWk2wEt RwsoTRED1G/QYQWGRkYbvB60KZcF5L7f2fKlSuM9YpeY+97lVgyiYxbdhRFmjIedljeFEXcecNi1A KG2WLrT/Ohje5DRdJU1t9coQ97IUpThxKqHaKUmv73E2QlVeVt6yglUqvV+TXregwUreSW/nNH+Ra 0Qx1Ib+VLuQrMYziaKDmi3T5UslvG/+RSI5kXXnv4vFBBtVh6ZETmMkBw+pxflIJL3wRzsACj+cAw CC45lJiqusJGf2O6HRSxGI9fRBv/pc1PqtjGV4eBz+YCnOFdjD9sfQps49xVgUoRzKUIK3wfP/ZV9 NjvuL+3mGWtg5MA+VfiQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mH6SA-00BWl4-DB; Fri, 20 Aug 2021 15:29:06 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mH6S7-00BWkd-2H for linux-arm-kernel@lists.infradead.org; Fri, 20 Aug 2021 15:29:04 +0000 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CC10A61102; Fri, 20 Aug 2021 15:29:02 +0000 (UTC) Received: from sofa.misterjones.org ([185.219.108.64] helo=why.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1mH6S4-006Dc2-Vr; Fri, 20 Aug 2021 16:29:01 +0100 Date: Fri, 20 Aug 2021 16:29:00 +0100 Message-ID: <87lf4wqgn7.wl-maz@kernel.org> From: Marc Zyngier To: Chester Lin Cc: Andreas =?UTF-8?B?RsOkcmJlcg==?= , Rob Herring , s32@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-serial@vger.kernel.org, Greg Kroah-Hartman , Shawn Guo , Krzysztof Kozlowski , Oleksij Rempel , Stefan Riedmueller , Matthias Schiffer , Li Yang , Fabio Estevam , Matteo Lisi , Frieder Schrempf , Tim Harvey , Jagan Teki , catalin-dan.udma@nxp.com, bogdan.hamciuc@nxp.com, bogdan.folea@nxp.com, ciprianmarian.costea@nxp.com, radu-nicolae.pirea@nxp.com, ghennadi.procopciuc@nxp.com, Matthias Brugger , "Ivan T . Ivanov" , "Lee, Chun-Yi" Subject: Re: [PATCH 4/8] arm64: dts: add NXP S32G2 support In-Reply-To: References: <20210805065429.27485-1-clin@suse.com> <20210805065429.27485-5-clin@suse.com> <87o89sqmz6.wl-maz@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: clin@suse.com, afaerber@suse.de, robh+dt@kernel.org, s32@nxp.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, shawnguo@kernel.org, krzk@kernel.org, linux@rempel-privat.de, s.riedmueller@phytec.de, matthias.schiffer@ew.tq-group.com, leoyang.li@nxp.com, festevam@gmail.com, matteo.lisi@engicam.com, frieder.schrempf@kontron.de, tharvey@gateworks.com, jagan@amarulasolutions.com, catalin-dan.udma@nxp.com, bogdan.hamciuc@nxp.com, bogdan.folea@nxp.com, ciprianmarian.costea@nxp.com, radu-nicolae.pirea@nxp.com, ghennadi.procopciuc@nxp.com, matthias.bgg@gmail.com, iivanov@suse.de, jlee@suse.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210820_082903_198665_5404CAD2 X-CRM114-Status: GOOD ( 27.08 ) 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 T24gRnJpLCAyMCBBdWcgMjAyMSAxNjoxNTo0OSArMDEwMCwKQ2hlc3RlciBMaW4gPGNsaW5Ac3Vz ZS5jb20+IHdyb3RlOgo+IAo+IE9uIEZyaSwgQXVnIDIwLCAyMDIxIGF0IDAyOjEyOjEzUE0gKzAx MDAsIE1hcmMgWnluZ2llciB3cm90ZToKPiA+IE9uIFRodSwgMTIgQXVnIDIwMjEgMTg6MjY6Mjgg KzAxMDAsCj4gPiBBbmRyZWFzIEbDpHJiZXIgPGFmYWVyYmVyQHN1c2UuZGU+IHdyb3RlOgo+ID4g PiAKPiA+ID4gSGkgQ2hlc3RlciBldCBhbC4sCj4gPiA+IAo+ID4gPiBPbiAwNS4wOC4yMSAwODo1 NCwgQ2hlc3RlciBMaW4gd3JvdGU6Cj4gPiA+ID4gQWRkIGFuIGluaXRpYWwgZHRzaSBmaWxlIGZv ciBnZW5lcmljIFNvQyBmZWF0dXJlcyBvZiBOWFAgUzMyRzIuCj4gPiA+ID4gCj4gPiA+ID4gU2ln bmVkLW9mZi1ieTogQ2hlc3RlciBMaW4gPGNsaW5Ac3VzZS5jb20+Cj4gPiA+ID4gLS0tCj4gPiA+ ID4gIGFyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL3MzMmcyLmR0c2kgfCA5OCArKysrKysr KysrKysrKysrKysrKysrKysKPiA+ID4gPiAgMSBmaWxlIGNoYW5nZWQsIDk4IGluc2VydGlvbnMo KykKPiA+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNj YWxlL3MzMmcyLmR0c2kKPiA+ID4gPiAKPiA+ID4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm02NC9i b290L2R0cy9mcmVlc2NhbGUvczMyZzIuZHRzaSBiL2FyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNj YWxlL3MzMmcyLmR0c2kKPiA+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gPiA+IGluZGV4 IDAwMDAwMDAwMDAwMC4uMzMyMTgxOWMxYTJkCj4gPiA+ID4gLS0tIC9kZXYvbnVsbAo+ID4gPiA+ ICsrKyBiL2FyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL3MzMmcyLmR0c2kKPiA+IAo+ID4g Wy4uLl0KPiA+IAo+ID4gPiA+ICsJCWdpYzogaW50ZXJydXB0LWNvbnRyb2xsZXJANTA4MDAwMDAg ewo+ID4gPiA+ICsJCQljb21wYXRpYmxlID0gImFybSxnaWMtdjMiOwo+ID4gPiA+ICsJCQkjaW50 ZXJydXB0LWNlbGxzID0gPDM+Owo+ID4gPiA+ICsJCQlpbnRlcnJ1cHQtY29udHJvbGxlcjsKPiA+ ID4gPiArCQkJcmVnID0gPDAgMHg1MDgwMDAwMCAwIDB4MTAwMDA+LAo+ID4gPiA+ICsJCQkgICAg ICA8MCAweDUwODgwMDAwIDAgMHgyMDAwMDA+LAo+ID4gCj4gPiBUaGF0J3MgZW5vdWdoIHJlZGlz dHJpYnV0b3Igc3BhY2UgZm9yIDE2IENQVXMuIEhvd2V2ZXIsIHlvdSBvbmx5Cj4gPiBkZXNjcmli ZSA0LiBFaXRoZXIgdGhlIG51bWJlciBvZiBDUFVzIGlzIHdyb25nLCB0aGUgc2l6ZSBpcyB3cm9u Zywgb3IKPiA+IHRoZSBHSUMgaGFzIGJlZW4gY29uZmlndXJlZCBmb3IgbW9yZSBjb3JlcyB0aGFu IHRoZSBTb0MgaGFzLgo+IAo+IENvbmZpcm1lZCB0aGUgU29DIGNhbiBvbmx5IGZpbmQgNCByZWRp c3RyaWJ1dG9yczoKPiAKPiBsb2NhbGhvc3Q6fiAjIGRtZXNnIHwgZ3JlcCBDUFUKPiBbICAgIDAu MDAwMDAwXSBCb290aW5nIExpbnV4IG9uIHBoeXNpY2FsIENQVSAweDAwMDAwMDAwMDAgWzB4NDEw ZmQwMzRdCj4gWyAgICAwLjAwMDAwMF0gRGV0ZWN0ZWQgVklQVCBJLWNhY2hlIG9uIENQVTAKPiBb ICAgIDAuMDAwMDAwXSBDUFUgZmVhdHVyZXM6IGRldGVjdGVkOiBHSUMgc3lzdGVtIHJlZ2lzdGVy IENQVSBpbnRlcmZhY2UKPiBbICAgIDAuMDAwMDAwXSBDUFUgZmVhdHVyZXM6IGRldGVjdGVkOiBB Uk0gZXJyYXR1bSA4NDU3MTkKPiBbICAgIDAuMDAwMDAwXSBTTFVCOiBIV2FsaWduPTY0LCBPcmRl cj0wLTMsIE1pbk9iamVjdHM9MCwgQ1BVcz00LCBOb2Rlcz0xCj4gWyAgICAwLjAwMDAwMF0gcmN1 OiAgICAgUkNVIHJlc3RyaWN0aW5nIENQVXMgZnJvbSBOUl9DUFVTPTQ4MCB0byBucl9jcHVfaWRz PTQuCj4gWyAgICAwLjAwMDAwMF0gR0lDdjM6IENQVTA6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMCBy ZWdpb24gMDoweDAwMDAwMDAwNTA4ODAwMDAKPiBbICAgIDAuMDYzODY1XSBzbXA6IEJyaW5naW5n IHVwIHNlY29uZGFyeSBDUFVzIC4uLgo+IFsgICAgMC4wNjg4NTJdIERldGVjdGVkIFZJUFQgSS1j YWNoZSBvbiBDUFUxCj4gWyAgICAwLjA2ODg5NF0gR0lDdjM6IENQVTE6IGZvdW5kIHJlZGlzdHJp YnV0b3IgMSByZWdpb24gMDoweDAwMDAwMDAwNTA4YTAwMDAKPiBbICAgIDAuMDY4OTYzXSBDUFUx OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwMDAwMDEgWzB4NDEwZmQwMzRdCj4g WyAgICAwLjA2OTgwOV0gRGV0ZWN0ZWQgVklQVCBJLWNhY2hlIG9uIENQVTIKPiBbICAgIDAuMDY5 ODUxXSBHSUN2MzogQ1BVMjogZm91bmQgcmVkaXN0cmlidXRvciAxMDAgcmVnaW9uIDA6MHgwMDAw MDAwMDUwOGMwMDAwCj4gWyAgICAwLjA2OTkwM10gQ1BVMjogQm9vdGVkIHNlY29uZGFyeSBwcm9j ZXNzb3IgMHgwMDAwMDAwMTAwIFsweDQxMGZkMDM0XQo+IFsgICAgMC4wNzA2OThdIERldGVjdGVk IFZJUFQgSS1jYWNoZSBvbiBDUFUzCj4gWyAgICAwLjA3MDcyMl0gR0lDdjM6IENQVTM6IGZvdW5k IHJlZGlzdHJpYnV0b3IgMTAxIHJlZ2lvbiAwOjB4MDAwMDAwMDA1MDhlMDAwMAo+IFsgICAgMC4w NzA3NDldIENQVTM6IEJvb3RlZCBzZWNvbmRhcnkgcHJvY2Vzc29yIDB4MDAwMDAwMDEwMSBbMHg0 MTBmZDAzNF0KPiBbICAgIDAuMDcwODQ3XSBzbXA6IEJyb3VnaHQgdXAgMSBub2RlLCA0IENQVXMK PiA8Li5zbmlwLi4+CgpUaGF0J3Mgbm90IHRoZSBjb3JyZWN0IHdheSB0byBmaW5kIG91dC4gRWFj aCBDUFUgdHJpZXMgdG8gZmluZCBpdHMKbWF0Y2hpbmcgUkQgaW4gdGhlIHJlZ2lvbi4gVGhpcyBk b2Vzbid0IG1lYW4gdGhlcmUgYXJlbid0IG1vcmUgUkRzCnByZXNlbnQgaW4gdGhlIEdJQy4KCllv dSBuZWVkIHRvIGl0ZXJhdGUgb3ZlciBhbGwgdGhlIFJEcyBpbiB0aGUgcmVnaW9uIHVudGlsIHlv dSBmaW5kIG9uZQp0aGF0IGhhcyBHSUNSX1RZUEVSLkxhc3QgPT0gMS4gVGhpcyB3aWxsIGdpdmUg eW91IHRoZSBhY3R1YWwgY291bnQuCkFsdGVybmF0aXZlbHksIHlvdSBjYW4gY2hlY2sgd2hldGhl ciB0aGUgUkQgYXQgNTA4ZTAwMDAgaGFzIHRoYXQgYml0CnNldC4gSWYgaXQgZG9lc24ndCwgdGhl biB5b3Uga25vdyB0aGVyZSBhcmUgbW9yZSBSRHMgdGhhbiBDUFVzLgoKCU0uCgotLSAKV2l0aG91 dCBkZXZpYXRpb24gZnJvbSB0aGUgbm9ybSwgcHJvZ3Jlc3MgaXMgbm90IHBvc3NpYmxlLgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtl cm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0 dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5l bAo=