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=-10.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 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 7D516C433E0 for ; Tue, 16 Mar 2021 09:27:48 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (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 CC17664FB3 for ; Tue, 16 Mar 2021 09:27:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CC17664FB3 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; 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=j/FvWg1FxwI2DwXg4jYLWrECQ3cnO+SW/1i3GPDzaBo=; b=RIv1viJZ4j9x7C4fm/nldcBJB Lb62Nb6XZdbrN2+YnyMwcUJYh5r4MpKNmTL5Xud6qMK0NMHjmFQBQgZFFKMMaSFGhl5ugsHkn9DO9 JMhSq6Wi2YSsAk/4wo4/48syRSTo/ZKX6plGZLEZvXUMWr1Xl386oi+Hv60gLRJXITVOIOsCCvvW1 V4Eoc+zPwTHknnugRdQUxzWsXFgHumyv7ngbgZSpW2Xxv+w/U1bC9aCQSDsoIzdmSGrRsufo/rrKU fA8+szHatbq0MGmTv4hAqGA6o8/Dq3/lasvp1XMYved4hcUVlK1CjdeGZIutvQoUvt40NFJf+OaqX tTWo3Gc5Q==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lM5xk-000GKI-Ju; Tue, 16 Mar 2021 09:26:04 +0000 Received: from mail.kernel.org ([198.145.29.99]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lM5xL-000G6A-A2 for linux-arm-kernel@lists.infradead.org; Tue, 16 Mar 2021 09:25:48 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 5B3A765010; Tue, 16 Mar 2021 09:25:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1615886737; bh=cPRh0AnJFdDuP/GrmLFAknhKy0SFLeLdbWnb+/Fs4Hg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ERF4XyphMq1DeTNQIGubIx/p0SVwEWBO/whqQwrxuod3SjHk4l4ggQW/d55kvtJ1M 2VLUemN4JfhlENuYKzOxmNnPPL0luNsqCFeLib0NFPVrg1zpaRjgTSRYAcBidJ5ggS yvO/lUCAlu4A6lkV3z3KFczCOtYOLYJtfYtoSc2A7McTsnLW8uMqU/7bNrite3CHE7 ybYTtQDeLBRZ9v3zu6T1gy3GCQETQzZonnaktvtEDZediP5GT4Y7C/TRk4HVX5tAyc 2ZwB9LYx9JhIvwhaQO64iDVPoQJExMCLprZhEMIU7+PdOIQgrG51PQLZlB3KtgDGOH RpoqLIFDCeIRQ== Received: by pali.im (Postfix) id A555284B; Tue, 16 Mar 2021 10:25:34 +0100 (CET) Date: Tue, 16 Mar 2021 10:25:34 +0100 From: Pali =?utf-8?B?Um9ow6Fy?= To: Toke =?utf-8?Q?H=C3=B8iland-J=C3=B8rgensen?= Cc: vtolkm@gmail.com, Bjorn Helgaas , linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Rob Herring , Ilias Apalodimas , Marek =?utf-8?B?QmVow7pu?= , Thomas Petazzoni , Jason Cooper Subject: Re: PCI trouble on mvebu (Turris Omnia) Message-ID: <20210316092534.czuondwbg3tqjs6w@pali> References: <2fb69e2a-4423-2b04-cd0f-ca819092bc5f@gmail.com> <20201028231626.GA344207@bjorn-Precision-5520> <20201030112331.meqg6lvultyn6v54@pali> <87k0v7n9y9.fsf@toke.dk> <20201030142337.yushrdcuecycfhcu@pali> <87zh42lfv6.fsf@toke.dk> <20201102152403.4jlmcaqkqeivuypm@pali> <877dr3lpok.fsf@toke.dk> <20210315195806.iqdt5wvvkvpmnep7@pali> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20210315195806.iqdt5wvvkvpmnep7@pali> User-Agent: NeoMutt/20180716 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210316_092539_946587_AE472939 X-CRM114-Status: GOOD ( 53.80 ) 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 T24gTW9uZGF5IDE1IE1hcmNoIDIwMjEgMjA6NTg6MDYgUGFsaSBSb2jDoXIgd3JvdGU6Cj4gT24g TW9uZGF5IDAyIE5vdmVtYmVyIDIwMjAgMTY6NTQ6MzUgVG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2Vu IHdyb3RlOgo+ID4gUGFsaSBSb2jDoXIgPHBhbGlAa2VybmVsLm9yZz4gd3JpdGVzOgo+ID4gCj4g PiA+IE9uIFNhdHVyZGF5IDMxIE9jdG9iZXIgMjAyMCAxMzo0OTo0OSBUb2tlIEjDuGlsYW5kLUrD uHJnZW5zZW4gd3JvdGU6Cj4gPiA+PiAi4oSi1p/imLvSh8ytING8INKJIMKuIiA8dnRvbGttQGdv b2dsZW1haWwuY29tPiB3cml0ZXM6Cj4gPiA+PiAKPiA+ID4+ID4gT24gMzAvMTAvMjAyMCAxNToy MywgUGFsaSBSb2jDoXIgd3JvdGU6Cj4gPiA+PiA+PiBPbiBGcmlkYXkgMzAgT2N0b2JlciAyMDIw IDE0OjAyOjIyIFRva2UgSMO4aWxhbmQtSsO4cmdlbnNlbiB3cm90ZToKPiA+ID4+ID4+PiBQYWxp IFJvaMOhciA8cGFsaUBrZXJuZWwub3JnPiB3cml0ZXM6Cj4gPiA+PiA+Pj4+IE15IGV4cGVyaWVu Y2Ugd2l0aCB0aGF0IFdMRTkwMFZYIGNhcmQsIGFhcmR2YXJrIGRyaXZlciBhbmQgYXNwbSBjb2Rl Ogo+ID4gPj4gPj4+Pgo+ID4gPj4gPj4+PiBMaW5rIHRyYWluaW5nIGluIEdFTjIgbW9kZSBmb3Ig dGhpcyBjYXJkIHN1Y2NlZWQgb25seSBvbmNlIGFmdGVyIHJlc2V0Lgo+ID4gPj4gPj4+PiBSZXBl YXRlZCBsaW5rIHJldHJhaW5pbmcgZmFpbHMgYW5kIGl0IGZhaWxzIGV2ZW4gd2hlbiBhYXJkdmFy ayBpcwo+ID4gPj4gPj4+PiByZWNvbmZpZ3VyZWQgdG8gR0VOMSBtb2RlLiBSZXNldCB2aWEgUEVS U1QjIHNpZ25hbCBpcyByZXF1aXJlZCB0byBoYXZlCj4gPiA+PiA+Pj4+IHdvcmtpbmcgbGluayB0 cmFpbmluZy4KPiA+ID4+ID4+Pj4KPiA+ID4+ID4+Pj4gV2hhdCBJIGRpZCBpbiBhYXJkdmFyayBk cml2ZXI6IFNldCBtb2RlIHRvIEdFTjIsIGRvIGxpbmsgdHJhaW5pbmcuIElmCj4gPiA+PiA+Pj4+ IHN1Y2Nlc3MgcmVhZCAibmVnb3RpYXRlZCBsaW5rIHNwZWVkIiBmcm9tICJMaW5rIENvbnRyb2wg U3RhdHVzIFJlZ2lzdGVyIgo+ID4gPj4gPj4+PiAoZm9yIFdMRTkwMFZYIGl0IGlzIDB4MSAtIEdF TjEpIGFuZCBzZXQgaXQgaW50byBhYXJkdmFyay4gQW5kIHRoZW4KPiA+ID4+ID4+Pj4gcmV0cmFp biBsaW5rIGFnYWluIChmb3IgV0xFOTAwVlggbm93IGl0IHdvdWxkIGJlIGF0IEdFTjEpLiBBZnRl ciB0aGF0Cj4gPiA+PiA+Pj4+IGNhcmQgaXMgc3RhYmxlIGFuZCBhbGwgZnV0dXJlIHJldHJhaW5p bmcgKGUuZy4gZnJvbSBhc3BtLmMpIGFsc28gcGFzc2VzLgo+ID4gPj4gPj4+Pgo+ID4gPj4gPj4+ PiBJZiBJIGRvIG5vdCBjaGFuZ2UgYWFyZHZhcmsgbW9kZSBmcm9tIEdFTjIgdG8gR0VOMSB0aGUg c2Vjb25kIGxpbmsKPiA+ID4+ID4+Pj4gdHJhaW5pbmcgZmFpbHMuIEFuZCBpZiBJIGNoYW5nZSBt b2RlIHRvIEdFTjEgYWZ0ZXIgdGhpcyBmYWlsZWQgbGluawo+ID4gPj4gPj4+PiB0cmFpbmluZyB0 aGVuIG5vdGhpbmcgaGFwcGVuLCBsaW5rIHRyYWluaW5nIGRvIG5vdCBzdWNjZXNzLgo+ID4gPj4g Pj4+Pgo+ID4gPj4gPj4+PiBTbyBqdXN0IHNwZWN1bGF0aW9uIG5vdy4uLiBJbiBjdXJyZW50IHNl dHVwIGluaXRpYWxpemF0aW9uIG9mIGNhcmQgZG9lcwo+ID4gPj4gPj4+PiBvbmUgbGluayB0cmFp bmluZyBhdCBHRU4yLiBUaGVuIGFzcG0uYyBpcyBjYWxsZWQgd2hpY2ggaXMgZG9pbmcgc2Vjb25k Cj4gPiA+PiA+Pj4+IGxpbmsgcmV0cmFpbmluZyBhdCBHRU4yLiBBbmQgaWYgaXQgZmFpbHMgdGhl biBiZWxvdyBwYXRjaCBpc3N1ZSB0aGlyZAo+ID4gPj4gPj4+PiBsaW5rIHJldHJhaW5pbmcgYXQg R0VOMS4gSWYgQTM4eC9wY2ktbXZlYnUgaGFzIHNhbWUgcHJvYmxlbSBhcyBhYXJkdmFyawo+ID4g Pj4gPj4+PiB0aGVuIHNlY29uZCBsaW5rIHJldHJhaW5pbmcgbXVzdCBiZSBhdCBHRU4xIChub3Qg R0VOMikgdG8gd29ya2Fyb3VuZAo+ID4gPj4gPj4+PiB0aGlzIGlzc3VlLgo+ID4gPj4gPj4+Pgo+ ID4gPj4gPj4+PiBCam9ybiwgVG9rZTogd2hhdCBhYm91dCB0cnlpbmcgdG8gaGFjayBhc3BtLmMg Y29kZSB0byBuZXZlciBkbyBsaW5rCj4gPiA+PiA+Pj4+IHJldHJhaW5pbmcgYXQgR0VOMiBzcGVl ZD8gQW5kIGFsd2F5cyBmb3JjZSBHRU4xIHNwZWVkIHByaW9yIGxpbmsKPiA+ID4+ID4+Pj4gdHJh aW5pbmc/Cj4gPiA+PiA+Pj4gU291bmRzIGxpa2UgYSBwbGFuLiBJIHBva2VkIGFyb3VuZCBpbiBh c3BtLmMgYW5kIG11c3QgY29uZmVzcyB0byBiZWluZyBhCj4gPiA+PiA+Pj4gYml0IGxvc3QgaW4g dGhlIHNvdXAgb2YgcmVnaXN0ZXJzIDspCj4gPiA+PiA+Pj4KPiA+ID4+ID4+PiBTbyBpZiBvbmUg b2YgeW91IGNhbiBjb29rIHVwIGEgcGF0Y2gsIHRoYXQgd291bGQgYmUgbW9zdCBoZWxwZnVsIQo+ ID4gPj4gPj4gSSBtb2RpZmllZCBCam9ybidzIHBhdGNoLCBleHBsaWNpdGx5IHNldCB0bHMgdG8g MSBhbmQgYWRkZWQgZGVidWcgaW5mbwo+ID4gPj4gPj4gYWJvdXQgY2xzIChjdXJyZW50IGxpbmsg c3BlZWQsIHRoYXQgd2hhdCBpcyB1c2VkIGJ5IGFhcmR2YXJrKS4gSXQgaXMKPiA+ID4+ID4+IHVu dGVzdGVkLCBJIGp1c3QgdHJpZWQgdG8gY29tcGlsZSBpdC4KPiA+ID4+ID4+Cj4gPiA+PiA+PiBD YW4gdHJ5IGl0Pwo+ID4gPj4gPj4KPiA+ID4+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9w Y2llL2FzcG0uYyBiL2RyaXZlcnMvcGNpL3BjaWUvYXNwbS5jCj4gPiA+PiA+PiBpbmRleCAyNTNj MzBjYzE5NjcuLmY5MzRjMGI1MmY0MSAxMDA2NDQKPiA+ID4+ID4+IC0tLSBhL2RyaXZlcnMvcGNp L3BjaWUvYXNwbS5jCj4gPiA+PiA+PiArKysgYi9kcml2ZXJzL3BjaS9wY2llL2FzcG0uYwo+ID4g Pj4gPj4gQEAgLTIwNiw2ICsyMDYsMjcgQEAgc3RhdGljIGJvb2wgcGNpZV9yZXRyYWluX2xpbmso c3RydWN0IHBjaWVfbGlua19zdGF0ZSAqbGluaykKPiA+ID4+ID4+ICAgCXVuc2lnbmVkIGxvbmcg ZW5kX2ppZmZpZXM7Cj4gPiA+PiA+PiAgIAl1MTYgcmVnMTY7Cj4gPiA+PiA+PiAgIAo+ID4gPj4g Pj4gKwl1MzIgbG5rY2FwMjsKPiA+ID4+ID4+ICsJdTE2IGxua3N0YSwgbG5rY3RsMiwgY2xzLCB0 bHM7Cj4gPiA+PiA+PiArCj4gPiA+PiA+PiArCXBjaWVfY2FwYWJpbGl0eV9yZWFkX2R3b3JkKHBh cmVudCwgUENJX0VYUF9MTktDQVAyLCAmbG5rY2FwMik7Cj4gPiA+PiA+PiArCXBjaWVfY2FwYWJp bGl0eV9yZWFkX3dvcmQocGFyZW50LCBQQ0lfRVhQX0xOS1NUQSwgJmxua3N0YSk7Cj4gPiA+PiA+ PiArCXBjaWVfY2FwYWJpbGl0eV9yZWFkX3dvcmQocGFyZW50LCBQQ0lfRVhQX0xOS0NUTDIsICZs bmtjdGwyKTsKPiA+ID4+ID4+ICsJY2xzID0gbG5rc3RhICYgUENJX0VYUF9MTktTVEFfQ0xTOwo+ ID4gPj4gPj4gKwl0bHMgPSBsbmtjdGwyICYgUENJX0VYUF9MTktDVEwyX1RMUzsKPiA+ID4+ID4+ ICsKPiA+ID4+ID4+ICsJcGNpX2luZm8ocGFyZW50LCAibG5rY2FwMiAlIzAxMHggc2xzICUjMDR4 IGxua3N0YSAlIzA2eCBjbHMgJSMwM3ggbG5rY3RsMiAlIzA2eCB0bHMgJSMwM3hcbiIsCj4gPiA+ PiA+PiArCQlsbmtjYXAyLCAobG5rY2FwMiAmIDB4M0YpID4+IDEsCj4gPiA+PiA+PiArCQlsbmtz dGEsIGNscywKPiA+ID4+ID4+ICsJCWxua2N0bDIsIHRscyk7Cj4gPiA+PiA+PiArCj4gPiA+PiA+ PiArCXRscyA9IDE7Cj4gPiA+PiA+PiArCXBjaWVfY2FwYWJpbGl0eV9jbGVhcl9hbmRfc2V0X3dv cmQocGFyZW50LCBQQ0lfRVhQX0xOS0NUTDIsCj4gPiA+PiA+PiArCQkJCQlQQ0lfRVhQX0xOS0NU TDJfVExTLCB0bHMpOwo+ID4gPj4gPj4gKwlwY2llX2NhcGFiaWxpdHlfcmVhZF93b3JkKHBhcmVu dCwgUENJX0VYUF9MTktDVEwyLCAmbG5rY3RsMik7Cj4gPiA+PiA+PiArCXBjaV9pbmZvKHBhcmVu dCwgImxua2N0bDIgJSMwMTB4IG5ldyB0bHMgJSMwM3hcbiIsCj4gPiA+PiA+PiArCQlsbmtjdGwy LCB0bHMpOwo+ID4gPj4gPj4gKwo+ID4gPj4gPj4gICAJcGNpZV9jYXBhYmlsaXR5X3JlYWRfd29y ZChwYXJlbnQsIFBDSV9FWFBfTE5LQ1RMLCAmcmVnMTYpOwo+ID4gPj4gPj4gICAJcmVnMTYgfD0g UENJX0VYUF9MTktDVExfUkw7Cj4gPiA+PiA+PiAgIAlwY2llX2NhcGFiaWxpdHlfd3JpdGVfd29y ZChwYXJlbnQsIFBDSV9FWFBfTE5LQ1RMLCByZWcxNik7Cj4gPiA+PiA+PiBAQCAtMjI3LDYgKzI0 OCw4IEBAIHN0YXRpYyBib29sIHBjaWVfcmV0cmFpbl9saW5rKHN0cnVjdCBwY2llX2xpbmtfc3Rh dGUgKmxpbmspCj4gPiA+PiA+PiAgIAkJCWJyZWFrOwo+ID4gPj4gPj4gICAJCW1zbGVlcCgxKTsK PiA+ID4+ID4+ICAgCX0gd2hpbGUgKHRpbWVfYmVmb3JlKGppZmZpZXMsIGVuZF9qaWZmaWVzKSk7 Cj4gPiA+PiA+PiArCXBjaV9pbmZvKHBhcmVudCwgImxua3N0YSAlIzA2eCBuZXcgY2xzICUjMDN4 XG4iLAo+ID4gPj4gPj4gKwkJbG5rc3RhLCAoY2xzICYgUENJX0VYUF9MTktTVEFfQ0xTKSk7Cj4g PiA+PiA+PiAgIAlyZXR1cm4gIShyZWcxNiAmIFBDSV9FWFBfTE5LU1RBX0xUKTsKPiA+ID4+ID4+ ICAgfQo+ID4gPj4gPj4gICAKPiA+ID4+ID4KPiA+ID4+ID4gU3RpbGwgZXhoaWJpdGluZyB0aGUg QkFSIHVwZGF0ZSBlcnJvciwgcnVuIHRlc3RlZCB3aXRoIG5leHQtLTIwMjAxMDMwCj4gPiA+PiAK PiA+ID4+IFl1cCwgc2FtZSBmb3IgbWUgOigKPiAKPiBJJ20gYW5zd2VyaW5nIG15IG93biBxdWVz dGlvbi4gVGhpcyBjb2RlIGRvZXMgbm90IHdvcmsgb24gT21uaWEgYmVjYXVzZQo+IEEzOHggcGNp LW12ZWJ1LmMgZHJpdmVyIGlzIHVzaW5nIGVtdWxhdG9yIGZvciBQQ0llIHJvb3QgYnJpZGdlIGFu ZCBpdAo+IGRvZXMgbm90IGltcGxlbWVudCBQQ0lfRVhQX0xOS0NUTDIgYW5kIFBDSV9FWFBfTE5L Q1RMMiByZWdpc3RlcnMuIFNvCj4gY29kZSBmb3IgZm9yY2luZyBsaW5rIHNwZWVkIGhhcyBubyBl ZmZlY3Qgb24gT21uaWEuLi4KClRva2UsIG9uIEEzOHggUENJZSBjb250cm9sbGVyIGl0IGlzIHBv c3NpYmxlIHRvIGFjY2VzcyBQQ0lfRVhQX0xOS0NUTDIKcmVnaXN0ZXIuIEp1c3QgYWNjZXNzIGlz IG5vdCBleHBvcnRlZCB2aWEgZW11bGF0ZWQgcm9vdCBicmlkZ2UuCgpEb2N1bWVudGF0aW9uIGZv ciB0aGlzIFBDSWUgY29udHJvbGxlciBpcyBwdWJsaWMsIHNvIGFueWJvZHkgY2FuIGxvb2sgYXQK cmVnaXN0ZXIgZGVzY3JpcHRpb24uIFNlZSBwYWdlIDU3MSwgQS43IFBDSSBFeHByZXNzIDIuMCBQ b3J0IDAgUmVnaXN0ZXJzCgpodHRwOi8vd2ViLmFyY2hpdmUub3JnL3dlYi8yMDIwMDQyMDE5MTky Ny9odHRwczovL3d3dy5tYXJ2ZWxsLmNvbS9jb250ZW50L2RhbS9tYXJ2ZWxsL2VuL3B1YmxpYy1j b2xsYXRlcmFsL2VtYmVkZGVkLXByb2Nlc3NvcnMvbWFydmVsbC1lbWJlZGRlZC1wcm9jZXNzb3Jz LWFybWFkYS0zOHgtZnVuY3Rpb25hbC1zcGVjaWZpY2F0aW9ucy0yMDE1LTExLnBkZgoKSW4gZHJp dmVycy9wY2kvY29udHJvbGxlci9wY2ktbXZlYnUuYyB5b3UgY2FuIHNldCBhIG5ldyB2YWx1ZSBm b3IgdGhpcwpyZWdpc3RlciB2aWEgZnVuY3Rpb24gY2FsbDoKCiAgICBtdmVidV93cml0ZWwocG9y dCwgdmFsLCBQQ0lFX0NBUF9QQ0lFWFAgKyBQQ0lfRVhQX0xOS0NUTDIpOwoKU28sIGNvdWxkIHlv dSB0cnkgdG8gc2V0IFBDSV9FWFBfTE5LQ1RMMl9UTFMgYml0cyB0byBnZW4xIGluIHNvbWUgaHcK aW5pdCBmdW5jdGlvbiwgZS5nLiBtdmVidV9wY2llX3NldHVwX2h3KCk/CgogICAgdTMyIHZhbCA9 IG12ZWJ1X3JlYWRsKHBvcnQsIFBDSUVfQ0FQX1BDSUVYUCArIFBDSV9FWFBfTE5LQ1RMMik7CiAg ICB2YWwgJj0gflBDSV9FWFBfTE5LQ1RMMl9UTFM7CiAgICB2YWwgfD0gUENJX0VYUF9MTktDVEwy X1RMU18yXzVHVDsKICAgIG12ZWJ1X3dyaXRlbChwb3J0LCB2YWwsIFBDSUVfQ0FQX1BDSUVYUCAr IFBDSV9FWFBfTE5LQ1RMMik7Cgo+ID4gPiBTbyB0aGVuIGl0IGlzIGRpZmZlcmVudCBpc3N1ZSBh bmQgbm90IHNpbWlsYXIgdG8gYWFyZHZhcmsgb25lLgo+IAo+IC4uLiBhbmQgdGhlcmVmb3JlIGl0 IGNhbiBiZSBzdGlsbCBzYW1lIGlzc3VlIHdoaWNoIEkgaGF2ZSBkZWJ1Z2dlZCBvbgo+IGFhcmR2 YXJrLgo+IAo+ID4gPiBBbnl3YXksIHdhcyBBU1BNIHdvcmtpbmcgb24gc29tZSBwcmV2aW91cyBr ZXJuZWwgdmVyc2lvbj8gT3Igd2FzIGl0Cj4gPiA+IGFsd2F5cyBicm9rZW4gb24gVHVycmlzIE9t bmlhPwo+ID4gCj4gPiBJIHRyaWVkIGJpc2VjdGluZyBhbmQgY291bGRuJ3QgZmluZCBhIGNvbW1p dCB0aGF0IHdvcmtlZC4gQW5kIE9wZW5XcnQgYnkKPiA+IGRlZmF1bHQgYnVpbGRzIHdpdGggQVNQ TSBvZmYsIHNvIG15IGJlc3QgZ3Vlc3MgaXMgdGhhdCBpdCB3YXMgYWx3YXlzCj4gPiBicm9rZW4u Cj4gCj4gSSBzZWUgYW5kIGl0IG1ha2VzIHNlbnNlIHRoYXQgaXQgZG9lcyBub3Qgd29yayBpbiBh bnkgdmVyc2lvbi4KPiAKPiA+IEhvd2V2ZXIsIHRoZSB0d28gb3RoZXIgUENJIHNsb3RzICpkbyog d29yayB3aXRoIEFTUE0gb24sIGFzIGxvbmcgYXMKPiA+IHRoZXkncmUgYm90aCBvY2N1cGllZCB3 aGVuIGJvb3RpbmcuIElmIEkgb25seSBoYXZlIG9uZSBjYXJkIGluc3RhbGxlZAo+ID4gYXBhcnQg ZnJvbSB0aGUgZG9kZ2UgV0xFOTAwLCBib3RoIG9mIHRoZW0gZmFpbC4uLgo+ID4gCj4gPiA+IEFu ZCBoYXMgc29tZWJvZHkgb3RoZXIgQXJtYWRhIDM4NSBkZXZpY2Ugd2l0aCBtUENJZSBzbG90cyB0 byB0ZXN0IGlmCj4gPiA+IEFTUE0gaXMgd29ya2luZz8gT3IgYW55IG90aGVyIDMyYml0IE1hcnZl bGwgQXJtYWRhIFNPQz8KPiA+ID4KPiA+ID4gSSB3b3VsZCBsaWtlIHRvIGtub3cgaWYgdGhpcyBp cyBpc3N1ZSBvbmx5IG9uIFR1cnJpcyBPbW5pYSBvciBhbHNvIG9uCj4gPiA+IG90aGVyIEFybWFk YSAzODUgU09DIGRldmljZSBvciBldmVuIG9uIGFueSBvdGhlciBkZXZpY2Ugd2hpY2ggdXNlcwo+ ID4gPiBwY2ktbXZlYnUuYyBkcml2ZXIuCj4gPiAKPiA+IFNlZSBhYm92ZTogSXQgZG9lcyBwYXJ0 bHkgd29yayBvbiBteSBPbW5pYS4gSXMgaXQgcG9zc2libGUgdG8gZGVmaW5lIGEKPiA+IHF1aXJr IHRvIGp1c3QgZGlzYWJsZSBpdCBvbiBhIHBlci1zbG90IGJhc2lzIGZvciB0aGUgV0xFOTAwIGNh cmQ/IE1heWJlCj4gPiBqdXN0IGRvaW5nIHRoYXQgYW5kIGNhbGxpbmcgaXQgYSBkYXkgd291bGQg YmUgZW5vdWdoLi4uCj4gPiAKPiA+IC1Ub2tlCj4gPiAKPiAKPiBUb2tlLCBjYW4geW91IHRyeSB0 byBwdXQgdGhpcyBXTEU5MDAgY2FyZCBpbnRvIHNvbWUgeDg2IGNvbXB1dGVyIGFuZAo+IGNoZWNr IGlmIHRoaXMgY2FyZCB3b3Jrcz8gV2l0aCBBU1BNIGVuYWJsZWQgYW5kIGFsc28gd2l0aCBBU1BN IGRpc2FibGVkPwo+IE9yIGludG8gYW55IG90aGVyIGRldmljZSB3aGljaCBkb2VzIG5vdCBoYXZl IE1hcnZlbGwgUENJZSBjb250cm9sbGVyPwo+IAo+IEkgbmVlZCB0byBrbm93IGlmIHByb2JsZW0g aXMgd2l0aCB0aGlzIFdMRTkwMCBjYXJkIG9yIHdpdGggTWFydmVsbCdzCj4gUENJZSBjb250cm9s bGVycy4gQW5kIGJhc2VkIG9uIGl0IEkgY2FuIHByZXBhcmUgcXVpcmsgLyBob29rIGZvciBlaXRo ZXIKPiBXTEU5MDAgY2FyZCBvciBmb3IgTWFydmVsbCBQQ0llIGRyaXZlcnMgKG9yIGJvdGgsIGJh c2VkIG9uIGhvdyBpdCBpcwo+IGJyb2tlbikuCj4gCj4gCj4gUFMgZm9yIGFsbDogUGxlYXNlIGRv IG5vdCBwdXQgZmFuY3kgdW5pY29kZSBjaGFyYWN0ZXJzIGludG8gZW1haWwgRnJvbToKPiBoZWFk ZXIgYXMgc3VjaCBlbWFpbCB3b3VsZCBiZSBtYXJrZWQgYXMgc3BhbSBhbmQgYXV0b21hdGljYWxs eSBmaWx0ZXJlZC4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMu aW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2xpbnV4LWFybS1rZXJuZWwK