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 1B662C77B7F for ; Fri, 5 May 2023 14:55:20 +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: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:References: List-Owner; bh=QzZnsGH1azM6TFttuT4Vij4II0O8z2WYuqyljhLWoi4=; b=YV0wS+meeKJhZS 5gIznGcjYaZ6AcaPZOFyrRFgEN+EHV98Ygl/KfisFIuBIY9IW/0YIEZVx1r00NcYdOwswvqzEBGVB GhBI0T2EH0ohwm0YTwdKZv60YarMdN1qZOyGDlpkBXxqNn6ZqEybOqjjTq47PkGGJANG83OJExeUU Fq3qTX9fEaj4JwjEkfD+BkmSeTVM+70czxBQprxrehEDXKlVHkTXXmluejj6ZMF9Mx3Rokq1PRHkr bMo4me/d13gc3YcnRf01INRNBZMqu0BSKh++knjz5e8Bkpf6CRq5xhvfqUev2Bfwq3pBU3ws67NfY VYDhiQg9Yppd41t/Y/FQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1puwpD-00B8SY-2I; Fri, 05 May 2023 14:54:23 +0000 Received: from dfw.source.kernel.org ([139.178.84.217]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1puwpA-00B8Rv-1C; Fri, 05 May 2023 14:54:22 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id DC23961085; Fri, 5 May 2023 14:54:19 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id AA979C433EF; Fri, 5 May 2023 14:54:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1683298459; bh=3Vil5rviGWrer1Vq+twXZMH+ppWsJHBRWGb2+6PtCdk=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=YR6sWlhqwHIfheRB4SZbO8jyRIIWZj38K905dSVPktjGDyJYEOSmIxA/C9uFHaPOF CN+JlYYrc5iZYoZE/91SG9R0ggddh+jMghTffy8IJUzGicHiszay5t/3bAovGSbk4X 4crf6BSkXhbR6U1zs3nSfHZDJGuf3vK3TYCeMoH7jswTs3lWkM1FW+2J+ihAeDNNi8 vnF24PNTe3pAQQ+608H/aZiX2bwZTuFNVkUHGGHVzrTB/4Xo6iyWvQyPSDL505iKJe wZ3ftesmzQgeI5KAZz27QS8+gaK8695hxHSv+A9calLXhLVhjfru46kPwhYbLWNhYu KDsIDsqTbL1mg== Date: Fri, 5 May 2023 09:54:16 -0500 From: Bjorn Helgaas To: Jim Quinlan Cc: Jim Quinlan , linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Phil Elwell , bcm-kernel-feedback-list@broadcom.com, Florian Fainelli , Lorenzo Pieralisi , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rob Herring , Krzysztof Kozlowski , "moderated list:BROADCOM BCM7XXX ARM ARCHITECTURE" , "moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE" , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , open list Subject: Re: [PATCH v4 1/5] dt-bindings: PCI: brcmstb: brcm,{enable-l1ss,completion-timeout-us} props Message-ID: <20230505145416.GA951973@bhelgaas> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230505_075420_487022_F9E9B44D X-CRM114-Status: GOOD ( 67.83 ) 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 T24gRnJpLCBNYXkgMDUsIDIwMjMgYXQgMTA6NDA6MjBBTSAtMDQwMCwgSmltIFF1aW5sYW4gd3Jv dGU6Cj4gT24gRnJpLCBNYXkgNSwgMjAyMyBhdCA5OjM04oCvQU0gQmpvcm4gSGVsZ2FhcyA8aGVs Z2Fhc0BrZXJuZWwub3JnPiB3cm90ZToKPiA+IE9uIEZyaSwgTWF5IDA1LCAyMDIzIGF0IDA4OjM5 OjUyQU0gLTA0MDAsIEppbSBRdWlubGFuIHdyb3RlOgo+ID4gPiBPbiBXZWQsIE1heSAzLCAyMDIz IGF0IDY6MTjigK9QTSBCam9ybiBIZWxnYWFzIDxoZWxnYWFzQGtlcm5lbC5vcmc+IHdyb3RlOgo+ ID4gPiA+IE9uIFdlZCwgTWF5IDAzLCAyMDIzIGF0IDA1OjM4OjE1UE0gLTA0MDAsIEppbSBRdWlu bGFuIHdyb3RlOgo+ID4gPiA+ID4gT24gV2VkLCBNYXkgMywgMjAyMyBhdCAyOjA34oCvUE0gQmpv cm4gSGVsZ2FhcyA8aGVsZ2Fhc0BrZXJuZWwub3JnPiB3cm90ZToKPiA+ID4gPiA+ID4gT24gV2Vk LCBNYXkgMDMsIDIwMjMgYXQgMTA6Mzg6NTdBTSAtMDQwMCwgSmltIFF1aW5sYW4gd3JvdGU6Cj4g PiA+ID4gPiA+ID4gT24gU3VuLCBBcHIgMzAsIDIwMjMgYXQgMzoxMOKAr1BNIEJqb3JuIEhlbGdh YXMgPGhlbGdhYXNAa2VybmVsLm9yZz4gd3JvdGU6Cj4gPiA+ID4gPiA+ID4gPiBPbiBGcmksIEFw ciAyOCwgMjAyMyBhdCAwNjozNDo1NVBNIC0wNDAwLCBKaW0gUXVpbmxhbiB3cm90ZToKPiA+ID4g PiA+ID4gPiA+ID4gYnJjbSxlbmFibGUtbDFzcyAoYm9vbCk6Cj4gPiA+ID4gPiA+ID4gPiA+Cj4g PiA+ID4gPiA+ID4gPiA+ICAgVGhlIEJyb2FkY29tIFNUQi9DTSBQQ0llIEhXIC0tIGEgY29yZSB0 aGF0IGlzIGFsc28gdXNlZCBieSBSUGkgU09DcyAtLQo+ID4gPiA+ID4gPiA+ID4gPiAgIHJlcXVp cmVzIHRoZSBkcml2ZXIgcHJvYmUoKSB0byBkZWxpYmVyYXRlbHkgcGxhY2UgdGhlIEhXIG9uZSBv ZiB0aHJlZQo+ID4gPiA+ID4gPiA+ID4gPiAgIENMS1JFUSMgbW9kZXM6Cj4gPiA+ID4gPiA+ID4g PiA+Cj4gPiA+ID4gPiA+ID4gPiA+ICAgKGEpIENMS1JFUSMgZHJpdmVuIGJ5IHRoZSBSQyB1bmNv bmRpdGlvbmFsbHkKPiA+ID4gPiA+ID4gPiA+ID4gICAoYikgQ0xLUkVRIyBkcml2ZW4gYnkgdGhl IEVQIGZvciBBU1BNIEwwcywgTDEKPiA+ID4gPiA+ID4gPiA+ID4gICAoYykgQmlkaXJlY3Rpb25h bCBDTEtSRVEjLCBhcyB1c2VkIGZvciBMMSBTdWJzdGF0ZXMgKEwxU1MpLgo+ID4gPiA+ID4gPiA+ ID4gPgo+ID4gPiA+ID4gPiA+ID4gPiAgIFRoZSBIVytkcml2ZXIgY2FuIHRlbGwgdGhlIGRpZmZl cmVuY2UgYmV0d2VlbiBkb3duc3RyZWFtIGRldmljZXMgdGhhdAo+ID4gPiA+ID4gPiA+ID4gPiAg IG5lZWQgKGEpIGFuZCAoYiksIGJ1dCBkb2VzIG5vdCBrbm93IHdoZW4gdG8gY29uZmlndXJlIChj KS4gIEFsbCBkZXZpY2VzCj4gPiA+ID4gPiA+ID4gPiA+ICAgc2hvdWxkIHdvcmsgZmluZSB3aGVu IHRoZSBkcml2ZXIgY2hvb3NlcyAoYSkgb3IgKGIpLCBidXQgKGMpIG1heSBiZQo+ID4gPiA+ID4g PiA+ID4gPiAgIGRlc2lyZWQgdG8gcmVhbGl6ZSB0aGUgZXh0cmEgcG93ZXIgc2F2aW5ncyB0aGF0 IEwxU1Mgb2ZmZXJzLiAgU28gd2UKPiA+ID4gPiA+ID4gPiA+ID4gICBpbnRyb2R1Y2UgdGhlIGJv b2xlYW4gImJyY20sZW5hYmxlLWwxc3MiIHByb3BlcnR5IHRvIGluZm9ybSB0aGUgZHJpdmVyCj4g PiA+ID4gPiA+ID4gPiA+ICAgdGhhdCAoYykgaXMgZGVzaXJlZC4gIFNldHRpbmcgdGhpcyBwcm9w ZXJ0eSBvbmx5IG1ha2VzIHNlbnNlIHdoZW4gdGhlCj4gPiA+ID4gPiA+ID4gPiA+ICAgZG93bnN0 cmVhbSBkZXZpY2UgaXMgTDFTUy1jYXBhYmxlIGFuZCB0aGUgT1MgaXMgY29uZmlndXJlZCB0byBh Y3RpdmF0ZQo+ID4gPiA+ID4gPiA+ID4gPiAgIHRoaXMgbW9kZSAoZS5nLiBwb2xpY3k9PXN1cGVy cG93ZXJzYXZlKS4KPiA+Cj4gPiBKdXN0IG5vdGljZWQgdGhhdCB0aGlzIHNob3VsZCBiZSAicG9s aWN5PT1wb3dlcnN1cGVyc2F2ZSIKPiA+Cj4gPiA+ID4gPiA+ID4gPiBXaGF0IGJhZCB0aGluZ3Mg d291bGQgaGFwcGVuIGlmIHRoZSBkcml2ZXIgYWx3YXlzIGNvbmZpZ3VyZWQgKGMpPwo+ID4gPiA+ ID4gPiA+Cj4gPiA+ID4gPiA+ID4gV2VsbCwgb3VyIGRyaXZlciBoYXMgdHJhZGl0aW9uYWxseSBv bmx5IHN1cHBvcnRlZCAoYikgYW5kIG91cgo+ID4gPiA+ID4gPiA+IGV4aXN0aW5nIGJvYXJkcyBo YXZlIGJlZW4gZGVzaWduZWQgd2l0aCB0aGlzIGluIG1pbmQuICBJIHdvdWxkIG5vdAo+ID4gPiA+ ID4gPiA+IHdhbnQgdG8gc3dpdGNoIG1vZGVzIHcnbyB0aGUgdXNlci9jdXN0b21lci9lbmdpbmVl ciBvcHRpbmctaW4gdG8gZG8KPiA+ID4gPiA+ID4gPiBzby4gIEZ1cnRoZXIsIHRoZSBQQ0llIEhX IGVuZ2luZWVyIHRvbGQgbWUgZGVmYXVsdGluZyB0byAoYykgd2FzIGEKPiA+ID4gPiA+ID4gPiBi YWQgaWRlYSBhbmQgd2FzICJhc2tpbmcgZm9yIHRyb3VibGUiLiAgTm90ZSB0aGF0IHRoZSBjb21t aXQncwo+ID4gPiA+ID4gPiA+IGNvbW1lbnQgaGFzIHRoYXQgd2FybmluZyBhYm91dCBMMVNTIG1v ZGUgbm90IG1lZXRpbmcgdGhpcyA0MDBucwo+ID4gPiA+ID4gPiA+IHNwZWMsIGFuZCBJIHN1c3Bl Y3QgdGhhdCBtYW55IG9mIG91ciBleGlzdGluZyBkZXNpZ25zIGhhdmUgYnVtcGVkCj4gPiA+ID4g PiA+ID4gaW50byB0aGF0Lgo+ID4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+ID4gQnV0IHRvIGFuc3dl ciB5b3VyIHF1ZXN0aW9uLCBJIGhhdmVuJ3QgZm91bmQgYSBzY2VuYXJpbyB0aGF0IGRpZCBub3QK PiA+ID4gPiA+ID4gPiB3b3JrIGJ5IHNldHRpbmcgbW9kZSAoYykuICBUaGF0IGRvZXNuJ3QgbWVh biB0aGV5IGFyZSBub3Qgb3V0IHRoZXJlLgo+ID4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+ID4gPiBP dGhlciBwbGF0Zm9ybXMgZG9uJ3QgcmVxdWlyZSB0aGlzLCBhbmQgaGF2aW5nIHRvIGVkaXQgdGhl IERUCj4gPiA+ID4gPiA+ID4gPiBiYXNlZCBvbiB3aGF0IFBDSWUgZGV2aWNlIGlzIHBsdWdnZWQg aW4gc2VlbXMgd3JvbmcuICBJZiBicmNtc3RiCj4gPiA+ID4gPiA+ID4gPiBkb2VzIG5lZWQgaXQs IHRoYXQgc3VnZ2VzdHMgYSBoYXJkd2FyZSBkZWZlY3QuICBJZiB3ZSBuZWVkIHRoaXMgdG8KPiA+ ID4gPiA+ID4gPiA+IHdvcmsgYXJvdW5kIGEgZGVmZWN0LCB0aGF0J3MgT0ssIGJ1dCB3ZSBzaG91 bGQgYWNrbm93bGVkZ2UgdGhlCj4gPiA+ID4gPiA+ID4gPiBkZWZlY3Qgc28gd2UgY2FuIHN0b3Ag dXNpbmcgdGhpcyBmb3IgZnV0dXJlIGhhcmR3YXJlIHRoYXQgZG9lc24ndAo+ID4gPiA+ID4gPiA+ ID4gbmVlZCBpdC4KPiA+ID4gPiA+ID4gPgo+ID4gPiA+ID4gPiA+IEFsbCBkZXZpY2VzIHNob3Vs ZCB3b3JrIHcvbyB0aGUgdXNlciBoYXZpbmcgdG8gY2hhbmdlIHRoZSBEVC4gIE9ubHkKPiA+ID4g PiA+ID4gPiBpZiB0aGV5IGRlc2lyZSBMMVNTIG11c3QgdGhleSBhZGQgdGhlICJicmNtLGVuYWJs ZS1sMXNzIiBwcm9wZXJ0eS4KPiA+ID4gPiA+ID4KPiA+ID4gPiA+ID4gSSB0aG91Z2h0IHRoZSBE VCB3YXMgc3VwcG9zZWQgdG8gZGVzY3JpYmUgcHJvcGVydGllcyBvZiB0aGUKPiA+ID4gPiA+ID4g KmhhcmR3YXJlKiwgYnV0IHRoaXMgc2VlbXMgbW9yZSBsaWtlICJ1c2UgdGhpcyB1bnRlc3RlZCBj bGtyZXEKPiA+ID4gPiA+ID4gY29uZmlndXJhdGlvbiwiIHdoaWNoIG1heWJlIGNvdWxkIGJlIGRv bmUgdmlhIGEgbW9kdWxlIHBhcmFtZXRlcj8KPiA+ID4gPiA+Cj4gPiA+ID4gPiBFbGVjdHJpY2Fs bHksIGl0IGhhcyBiZWVuIHRlc3RlZCwgYnV0ICBzcGVjaWZpY2FsbHkgZm9yIEwxU1MgY2FwYWJs ZQo+ID4gPiA+ID4gZGV2aWNlcy4gIFdoYXQgaXMgdW50ZXN0ZWQgQUZBSUNUIGFyZSBwbGF0Zm9y bXMgdXNpbmcgdGhpcyBtb2RlIG9uCj4gPiA+ID4gPiBub24tTDFTUyBjYXBhYmxlIGRldmljZXMu Cj4gPiA+ID4KPiA+ID4gPiBOb24tTDFTUyBiZWhhdmlvciBpcyBhIHN1YnNldCBvZiBMMVNTLCBz byBpZiB5b3UndmUgdGVzdGVkIHdpdGggTDFTUwo+ID4gPiA+IGVuYWJsZWQsIEkgd291bGQgdGhp bmsgeW91J2QgYmUgY292ZXJlZC4KPiA+Cj4gPiBJIHRoaW5rIHRoaXMgcG9pbnQgaXMgc3RpbGwg d29ydGggY29uc2lkZXJpbmcuICBNYXliZSB5b3VyIGhhcmR3YXJlCj4gPiBmb2xrcyBoYXZlIGFu IG9waW5pb24gaGVyZT8KPiBTZWUgYmVsb3cuCj4gPgo+ID4gPiA+IEJ1dCBJJ20gbm90IGEgaGFy ZHdhcmUgZW5naW5lZXIsIHNvIG1heWJlIHRoZXJlJ3Mgc29tZSBzdWJ0bGV0eSB0aGVyZS4KPiA+ ID4gPiBUaGUgImFza2luZyBmb3IgdHJvdWJsZSIgY29tbWVudCBmcm9tIHlvdXIgZW5naW5lZXIg aXMgZGVmaW5pdGVseQo+ID4gPiA+IGNvbmNlcm5pbmcsIGJ1dCBJIGhhdmUgbm8gaWRlYSB3aGF0 J3MgYmVoaW5kIHRoYXQuCj4gPiA+ID4KPiA+ID4gPiBBbmQgb2J2aW91c2x5IGV2ZW4gaWYgd2Ug aGF2ZSAiYnJjbSxlbmFibGUtbDFzcyIsIHRoZSB1c2VyIG1heSBkZWNpZGUKPiA+ID4gPiB0byBk aXNhYmxlIEwxU1MgYWRtaW5pc3RyYXRpdmVseSwgc28gZXZlbiBpZiB0aGUgUm9vdCBQb3J0IGFu ZCB0aGUKPiA+ID4gPiBkZXZpY2UgYm90aCBzdXBwb3J0IEwxU1MsIGl0IG1heSBiZSBuZXZlciBi ZSBlbmFibGVkLgo+ID4gPiA+Cj4gPiA+ID4gPiBXUlQgYm9vdGxpbmUgcGFyYW0KPiA+ID4gPiA+ IHBjaT1bPGRvbWFpbj46XTxidXM+OjxkZXY+LjxmdW5jPlsvPGRldj4uPGZ1bmM+XSpwY2k6PHZl bmRvcj46PGRldmljZT5bOjxzdWJ2ZW5kb3I+OjxzdWJkZXZpY2U+XToKPiA+ID4gPiA+IHRoaXMg ZG9lcyBub3QgbG9vayBjb21wYXRpYmxlIGZvciB2ZW5kb3Igc3BlY2lmaWMgRFQgb3B0aW9ucyBs aWtlCj4gPiA+ID4gPiAiYnJjbSxlbmFibGUtbDFzcyIuICBJIG9ic2VydmUgdGhhdCBwY2lfZGV2 X3N0cl9tYXRjaF9wYXRoKCkgaXMgYQo+ID4gPiA+ID4gc3RhdGljIGZ1bmN0aW9uIGFuZCBJIGRv bid0IHNlZSBhIHNpbmdsZSBvcHRpb24gaW4gcGNpLmMgIHRoYXQgaXMKPiA+ID4gPiA+IHZlbmRv ciBzcGVjaWZpYy4gIEZXSVcsIG1vdmluZyBzb21ldGhpbmcgbGlrZSB0aGlzIHRvIHRoZSBib290 bGluZQo+ID4gPiA+ID4gd291bGQgbm90IGJlIHBvcHVsYXIgd2l0aCBvdXIgY3VzdG9tZXJzOyBm b3Igc29tZSByZWFzb24gdGhleSByZWFsbHkKPiA+ID4gPiA+IGRvbid0IGxpa2UgY2hhbmdlcyB0 byB0aGUgYm9vdGxpbmUuCj4gPiA+ID4KPiA+ID4gPiBUaGV5IHByZWZlciBlZGl0aW5nIHRoZSBE VD8KPiA+ID4gPgo+ID4gPiA+IEkgYWdyZWUgdGhlICJwY2k9QjpELkYiIHN0dWZmIGlzIGEgYml0 IHVnbHkuICBEbyB5b3UgaGF2ZSBtdWx0aXBsZQo+ID4gPiA+IHNsb3RzIHN1Y2ggdGhhdCB5b3Ug d291bGQgaGF2ZSB0byBhcHBseSB0aGlzIHBhcmFtZXRlciB0byBzb21lIGJ1dCBub3QKPiA+ID4g PiBvdGhlcnM/ICBJIGd1ZXNzIEkgd2FzIGltYWdpbmluZyBhIHNpbmdsZS1zbG90IHN5c3RlbSB3 aGVyZSB5b3UKPiA+ID4gPiB3b3VsZG4ndCBuZWVkIHRvIGlkZW50aWZ5IHRoZSBzcGVjaWZpYyBk ZXZpY2UgYmVjYXVzZSB0aGVyZSAqaXMqIG9ubHkKPiA+ID4gPiBvbmUuCj4gPiA+Cj4gPiA+IFdl IHR5cGljYWxseSBoYXZlIGEgc2luZ2xlIGRldmljZSBwZXIgY29udHJvbGxlci4gIE9jY2FzaW9u YWxseSwKPiA+ID4gdGhlcmUgaXMgYSBtaXNtYXRjaCBpbiBuZWVkcywgYW5kIHRoZSBjdXN0b21l ciBhZGRzIGEgc3dpdGNoIHRvCj4gPiA+IHRoZWlyIGJvYXJkIHVudGlsIHdlIGNhbiBhZGQgYW5v dGhlciBjb250cm9sbGVyIHRvIHRoZSBuZXh0IHJldiBvZgo+ID4gPiB0aGUgU09DLgo+ID4KPiA+ IElmIHlvdSBhZGQgYSBzd2l0Y2gsIGl0IHNvdW5kcyBsaWtlIHRoZXJlJ3Mgc3RpbGwgb25seSBh IHNpbmdsZSBsaW5rCj4gPiBiZXR3ZWVuIHRoZSBicmNtc3RiIGNvbnRyb2xsZXIgYW5kIHRoZSBz d2l0Y2guICBJJ20gYXNzdW1pbmcKPiA+ICJicmNtLGVuYWJsZS1sMXNzIiBvbmx5IGFmZmVjdHMg Q0xLUkVRIyBvbiB0aGF0IGxpbmsgYW5kIGl0IGhhcwo+ID4gbm90aGluZyB0byBkbyB3aXRoIGxp bmtzIGJlbG93IHRoZSBzd2l0Y2guCj4gPgo+ID4gKGMpIG11c3QgYmUgdGhlIHN0YW5kYXJkIFBD SWUgc2l0dWF0aW9uIGJlY2F1c2Ugbm8gb3RoZXIgc3lzdGVtcwo+ID4gcmVxdWlyZSB0aGUgdXNl ciB0byBjb25maWd1cmUgQ0xLUkVRIyBiYXNlZCBvbiB0aGUgdHlwZSBvZiBjYXJkCj4gPiBwbHVn Z2VkIGluLiAgQW5kIHdlIGRvbid0IGtub3cgYWJvdXQgYW55IGFjdHVhbCBwcm9ibGVtcyB0aGF0 IGhhcHBlbgo+ID4gaW4gKGMpIHdpdGggYW55IGNhcmRzLgo+ID4KPiA+IFRoYXQgbWFrZXMgbWUg dGhpbmsgdGhlIGlkZWFsIGVuZCBzdGF0ZSB3b3VsZCBiZSB0byB1c2UgKGMpIGJ5Cj4gPiBkZWZh dWx0IHNvIGV2ZXJ5dGhpbmcganVzdCB3b3JrcyBsaWtlIGV2ZXJ5IG90aGVyIHBsYXRmb3JtIHdp dGggbm8KPiA+IGZ1c3MuICBJZiB0aGVyZSdzIHNvbWUgc2l0dWF0aW9uIHRoYXQgcmVxdWlyZXMg KGEpIG9yIChiKSwgdGhlcmUgY291bGQKPiA+IGJlIGEgcHJvcGVydHkgb3IgcGFyYW1ldGVyIHRv IHNlbGVjdCAqdGhhdCogYmVjYXVzZSB0aGF0IHdvdWxkIGJlIHRoZQo+ID4gdW51c3VhbCBjYXNl Lgo+ID4KPiA+IEJ1dCBvYnZpb3VzbHkgdGhlIGNvbW1lbnQgZnJvbSB0aGUgaGFyZHdhcmUgZW5n aW5lZXI6Cj4gPgo+ID4gPiA+ID4gPiA+IEZ1cnRoZXIsIHRoZSBQQ0llIEhXIGVuZ2luZWVyIHRv bGQgbWUgZGVmYXVsdGluZyB0byAoYykgd2FzCj4gPiA+ID4gPiA+ID4gYSBiYWQgaWRlYSBhbmQg d2FzICJhc2tpbmcgZm9yIHRyb3VibGUiLgo+ID4KPiA+IHdvdWxkIG5lZWQgdG8gYmUgdW5kZXJz dG9vZCBiZWZvcmUgZG9pbmcgdGhhdC4KPiAKPiBLZWVwIGluIG1pbmQgdGhhdCBvdXIgY29udHJv bGxlciBpcyBhbHJlYWR5IHVudXN1YWwgaW4gdGhhdCBpdAo+IHJlcXVpcmVzIHRoaXMgbWFudWFs IG1vZGUgc2V0dGluZyB3aGVyZWFzCj4gb3RoZXIgY29udHJvbGxlcnMgZG9uJ3Qgc2VlbSB0byBo YXZlIHRoaXMgaXNzdWUuICBBcyBmYXIgYXMgZGlzY3Vzc2luZwo+IHRoaXMgd2l0aCB0aGUgSFcg cGVyc29uLCBlaXRoZXIgSSBhbSBub3QgdW5kZXJzdGFuZGluZyB0aGUgcmVhc29uKHMpCj4gb3Ig aGUgaXMgbm90IGV4cGxhaW5pbmcgdGhlbSB3ZWxsLiAgV2UndmUgdHJpZWQgYSBjb3VwbGUgb2Yg dGltZXMsCj4gRldJVy4gICBBdCBhbnkgcmF0ZSwgIG9uZSB0aGluZyBoZSBoYXMgcmVwZWF0ZWQg d2l0aCBlbXBoYXNpcyAgaXMgdGhhdAo+IG9ubHkgbDFzcyBjYXBhYmxlIGRldmljZXMgc2hvdWxk IGJlIHVzaW5nIG91ciBsMXNzIG1vZGUuCj4gRm9yIG1lLCB0aGlzIGZlZWRiYWNrICB0cnVtcHMg YWxsIG90aGVyIGNob2ljZXMuCj4gCj4gRmluYWxseSwgZXhwZXJpZW5jZSBoYXMgbWFkZSBtZSBx dWl0ZSB3YXJ5IG9mIHNpbGVudGx5IGNoYW5naW5nIGEKPiBkZWZhdWx0IGZvciBhbGwgb2Ygb3Vy IFNUQi9DTSBleGlzdGluZyBjdXN0b21lcnMsIHJlZ2FyZGxlc3Mgb2YgdGhlCj4gZmFjdCB0aGF0 IHRoZSBDTTQgUmFzcGlhbiBmb2xrcyBoYXZlIGJlZW4gdXNpbmcgbDFzcy1tb2RlIChtb3N0IGxp a2VseQo+IGFzIGEgd29ya2Fyb3VuZCB0byBib290IHdpdGggY2FyZHMgbGFja2luZyBhIGZ1bmN0 aW9uYWwgQ0xLUkVRIyBwaW4pLgoKT0suICBUaGlzIHNlZW1zIGxpa2UgYSBwcmV0dHkgc2lnbmlm aWNhbnQgaGFyZHdhcmUgZGVmaWNpZW5jeSwgYnV0CnNvdW5kcyBsaWtlIHRoZXJlJ3Mgbm8gZ29v ZCB3YXkgYXJvdW5kIGl0LgoKSG9wZWZ1bGx5IGZ1dHVyZSBkZXNpZ25zIHdpbGwgbm90IGhhdmUg dGhpcyBpc3N1ZSBiZWNhdXNlIGl0IHJlYWxseQpicmVha3MgdGhlIGNvbXBhdGliaWxpdHkgc3Rv cnkgb2YgUENJLgoKQmpvcm4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxA bGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK