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=-7.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,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 6CB59C433E0 for ; Wed, 24 Jun 2020 06:47:47 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 2E04B206EB for ; Wed, 24 Jun 2020 06:47:47 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="UrorCenO"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="vMBeoFBR" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2E04B206EB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.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=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject: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=hP7zkv/KktQCuSH5uw/b1fGaWAl1av8Ybbp+apG0gvM=; b=UrorCenOZ4Q/f34ajXCiKbHYP Zbyv9Ez6tMx/dyyl1mKLlk+qmageYRr3DQzfxYiTYbXfzl/WYuDth+3n0Rmd/YyG8+3Sr/qHR1MK+ gctW+0W9hDCxjY8v25ZKX1ffYKUhPBkMvpd629XUtAR5EFzuAUF8qMB2XlejDnYYggaZpdp0q5bzZ 5N4ZVcFvakbs1QXNWhDb2cyY8Baskw2NzDflcA9c6SMRjCb482hdF1hc8zOqrhmcFFhehqHVGbcTi wc6Y9oF4kcOJB+4ttdPt7aoS8PK51KewA/0MsSQ8rC5SOHxfChBSxiThO7CHo7GLmyaMwW0xBWm0b Z38/aNDSQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jnzAL-0004gG-NU; Wed, 24 Jun 2020 06:45:49 +0000 Received: from mail-wm1-x343.google.com ([2a00:1450:4864:20::343]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jnzAE-0004e9-H8 for linux-arm-kernel@lists.infradead.org; Wed, 24 Jun 2020 06:45:43 +0000 Received: by mail-wm1-x343.google.com with SMTP id g75so1211372wme.5 for ; Tue, 23 Jun 2020 23:45:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=92ct+kIyuYCkffCnaII7e190oKIVCgMIRLBRHDA+hrQ=; b=vMBeoFBR6gWv1XCSeTiSfq4tCcSz6ogFdWuTufhhEEp+YjMHBGUPqKmSHaviBuZMzi jJOmcl8gsMyNsctNAEYmqZD8ara+sb6s9sKlGL+AS3XZlxZGcbKFDg+TxZWu35DDTghi p45RtWBLtPn5Fm2YVLfxcwi8+uRptoq4dghIgqr2Ze3PDzozh3pE1pNbyfC6dfeDTrIq l1Z0odWvxsFi9ZULzqIhf30Gqb5mwhrpmXjOZDPwIFTGGsBGl5osmP4XDaCl3Z0LirID 0TwpDNaxsfwOyKZixZoSN9iCtFiOCJ8q7utyir8piieszXTmAqHtqwjjgVW1u3r1Saiw hLug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=92ct+kIyuYCkffCnaII7e190oKIVCgMIRLBRHDA+hrQ=; b=fT0DEB9k/1coIbufgs9FTKnmTLoo4a1dXeuKSqrf8DLDirbsVEn99ZvR7QKYpkKHrr 5s8wjhxib0tM4XbNEh9JXlSabFoxU9gKqFZr5Em1kaxRmnm3mYcwEwXnksG3zLZOFc4d UPSIKPjGF2ST3PNA4UOy23OEW8Om5A16PPP+K5mf0lNifxZMcJqXQrbl7xegQkpFqB0W 9Ojv7o/CZqcnfdzMKJulej7UoSwJVilqcJowPYHFEwPytv1sfJax9kA+zGACjHBurwid Kc++Q0kx9JdmYrylmBZojcjggCfCg6rGebxMpDpymYqsuX73fi+10SmHfA5ITT21T2Kz gjfA== X-Gm-Message-State: AOAM5336FzKjq5RKzQNNKjInlXmeYBp49IgLauEvWrm3GFxsh5O/4rhH 1sA8qBrmUv5uTMla6yRHVxHhYSnqg3o= X-Google-Smtp-Source: ABdhPJyVDUfjm/E/allflF2ZvSZxow7JcquGxPsnUrNFqdBmD70tuJE9qiLNwz0mWV2sr/rUv8+dfg== X-Received: by 2002:a1c:1b0d:: with SMTP id b13mr7401130wmb.169.1592981141078; Tue, 23 Jun 2020 23:45:41 -0700 (PDT) Received: from dell ([2.27.35.144]) by smtp.gmail.com with ESMTPSA id u23sm11771941wru.94.2020.06.23.23.45.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Jun 2020 23:45:40 -0700 (PDT) Date: Wed, 24 Jun 2020 07:45:38 +0100 From: Lee Jones To: Frank Rowand Subject: Re: [PATCH v2 1/3] mfd: core: Make a best effort attempt to match devices with the correct of_nodes Message-ID: <20200624064538.GD954398@dell> References: <20200611191002.2256570-1-lee.jones@linaro.org> <2a25af37-a9b8-e4f3-6092-06c1c907dc9f@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <2a25af37-a9b8-e4f3-6092-06c1c907dc9f@gmail.com> X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, gregkh@linuxfoundation.org, broonie@kernel.org, michael@walle.cc, linux-kernel@vger.kernel.org, andy.shevchenko@gmail.com, robh+dt@kernel.org, linux-arm-kernel@lists.infradead.org, andriy.shevchenko@linux.intel.com, robin.murphy@arm.com, linus.walleij@linaro.org, linux@roeck-us.net 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 T24gVHVlLCAyMyBKdW4gMjAyMCwgRnJhbmsgUm93YW5kIHdyb3RlOgoKPiBPbiAyMDIwLTA2LTEx IDE0OjEwLCBMZWUgSm9uZXMgd3JvdGU6Cj4gPiBDdXJyZW50bHksIHdoZW4gYSBjaGlsZCBwbGF0 Zm9ybSBkZXZpY2UgKHNvbWV0aW1lcyByZWZlcnJlZCB0byBhcyBhCj4gPiBzdWItZGV2aWNlKSBp cyByZWdpc3RlcmVkIHZpYSB0aGUgTXVsdGktRnVuY3Rpb25hbCBEZXZpY2UgKE1GRCkgQVBJLAo+ ID4gdGhlIGZyYW1ld29yayBhdHRlbXB0cyB0byBtYXRjaCB0aGUgbmV3bHkgcmVnaXN0ZXJlZCBw bGF0Zm9ybSBkZXZpY2UKPiA+IHdpdGggaXRzIGFzc29jaWF0ZWQgRGV2aWNlIFRyZWUgKE9GKSBu b2RlLiAgVW50aWwgbm93LCB0aGUgZGV2aWNlIGhhcwo+ID4gYmVlbiBhbGxvY2F0ZWQgdGhlIGZp cnN0IG5vZGUgZm91bmQgd2l0aCBhbiBpZGVudGljYWwgT0YgY29tcGF0aWJsZQo+ID4gc3RyaW5n LiAgVW5mb3J0dW5hdGVseSwgaWYgdGhlcmUgYXJlLCBzYXkgZm9yIGV4YW1wbGUgJzMnIGRldmlj ZXMKPiA+IHdoaWNoIGFyZSB0byBiZSBoYW5kbGVkIGJ5IHRoZSBzYW1lIGRyaXZlciBhbmQgdGhl cmVmb3JlIGhhdmUgdGhlIHNhbWUKPiA+IGNvbXBhdGlibGUgc3RyaW5nLCBlYWNoIG9mIHRoZW0g d2lsbCBiZSBhbGxvY2F0ZWQgYSBwb2ludGVyIHRvIHRoZQo+ID4gKmZpcnN0KiBub2RlLgo+ID4g Cj4gPiBBbiBleGFtcGxlIERldmljZSBUcmVlIGVudHJ5IG1pZ2h0IGxvb2sgbGlrZSB0aGlzOgo+ ID4gCj4gPiAgIG1mZF9vZl90ZXN0IHsKPiA+ICAgICAgICAgICBjb21wYXRpYmxlID0gIm1mZCxv Zi10ZXN0LXBhcmVudCI7Cj4gPiAgICAgICAgICAgI2FkZHJlc3MtY2VsbHMgPSA8MHgwMj47Cj4g PiAgICAgICAgICAgI3NpemUtY2VsbHMgPSA8MHgwMj47Cj4gPiAKPiA+ICAgICAgICAgICBjaGls ZEBhYWFhYWFhYWFhYWFhYWFhIHsKPiA+ICAgICAgICAgICAgICAgICAgIGNvbXBhdGlibGUgPSAi bWZkLG9mLXRlc3QtY2hpbGQiOwo+ID4gICAgICAgICAgICAgICAgICAgcmVnID0gPDB4YWFhYWFh YWEgMHhhYWFhYWFhYSAwIDB4MTE+LAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgPDB4YmJi YmJiYmIgMHhiYmJiYmJiYiAwIDB4MjI+Owo+ID4gICAgICAgICAgIH07Cj4gPiAKPiA+ICAgICAg ICAgICBjaGlsZEBjY2NjY2NjYyB7Cj4gPiAgICAgICAgICAgICAgICAgICBjb21wYXRpYmxlID0g Im1mZCxvZi10ZXN0LWNoaWxkIjsKPiA+ICAgICAgICAgICAgICAgICAgIHJlZyA9IDwweDAwMDAw MDAwIDB4Y2NjY2NjY2MgMCAweDMzPjsKPiA+ICAgICAgICAgICB9Owo+ID4gCj4gPiAgICAgICAg ICAgY2hpbGRAZGRkZGRkZGQwMDAwMDAwMCB7Cj4gPiAgICAgICAgICAgICAgICAgICBjb21wYXRp YmxlID0gIm1mZCxvZi10ZXN0LWNoaWxkIjsKPiA+ICAgICAgICAgICAgICAgICAgIHJlZyA9IDww eGRkZGRkZGRkIDB4MDAwMDAwMDAgMCAweDQ0PjsKPiA+ICAgICAgICAgICB9Owo+ID4gICB9Owo+ ID4gCj4gPiBXaGVuIHVzZWQgd2l0aCBleGFtcGxlIHN1Yi1kZXZpY2UgcmVnaXN0cmF0aW9uIGxp a2UgdGhpczoKPiA+IAo+ID4gICBzdGF0aWMgY29uc3Qgc3RydWN0IG1mZF9jZWxsIG1mZF9vZl90 ZXN0X2NlbGxbXSA9IHsKPiA+ICAgICAgICAgT0ZfTUZEX0NFTEwoIm1mZC1vZi10ZXN0LWNoaWxk IiwgTlVMTCwgTlVMTCwgMCwgMCwgIm1mZCxvZi10ZXN0LWNoaWxkIiksCj4gPiAgICAgICAgIE9G X01GRF9DRUxMKCJtZmQtb2YtdGVzdC1jaGlsZCIsIE5VTEwsIE5VTEwsIDAsIDEsICJtZmQsb2Yt dGVzdC1jaGlsZCIpLAo+ID4gICAgICAgICBPRl9NRkRfQ0VMTCgibWZkLW9mLXRlc3QtY2hpbGQi LCBOVUxMLCBOVUxMLCAwLCAyLCAibWZkLG9mLXRlc3QtY2hpbGQiKQo+ID4gICB9Owo+ID4gCj4g PiAuLi4gdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gd2lsbCByZXN1bHQgaW4gYWxsIGRldmlj ZXMgYmVpbmcgYWxsb2NhdGVkCj4gPiB0aGUgZmlyc3QgT0Ygbm9kZSBmb3VuZCBjb250YWluaW5n IGEgbWF0Y2hpbmcgY29tcGF0aWJsZSBzdHJpbmc6Cj4gPiAKPiA+ICAgWzAuNzEyNTExXSBtZmQt b2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4wOiBQcm9iaW5nIHBsYXRmb3JtIGRldmlj ZTogMAo+ID4gICBbMC43MTI3MTBdIG1mZC1vZi10ZXN0LWNoaWxkIG1mZC1vZi10ZXN0LWNoaWxk LjA6IFVzaW5nIE9GIG5vZGU6IGNoaWxkQGFhYWFhYWFhYWFhYWFhYWEKPiA+ICAgWzAuNzEzMDMz XSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4xOiBQcm9iaW5nIHBsYXRmb3Jt IGRldmljZTogMQo+ID4gICBbMC43MTMzODFdIG1mZC1vZi10ZXN0LWNoaWxkIG1mZC1vZi10ZXN0 LWNoaWxkLjE6IFVzaW5nIE9GIG5vZGU6IGNoaWxkQGFhYWFhYWFhYWFhYWFhYWEKPiA+ICAgWzAu NzEzNjkxXSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4yOiBQcm9iaW5nIHBs YXRmb3JtIGRldmljZTogMgo+ID4gICBbMC43MTM4ODldIG1mZC1vZi10ZXN0LWNoaWxkIG1mZC1v Zi10ZXN0LWNoaWxkLjI6IFVzaW5nIE9GIG5vZGU6IGNoaWxkQGFhYWFhYWFhYWFhYWFhYWEKPiA+ IAo+ID4gQWZ0ZXIgdGhpcyBwYXRjaCBlYWNoIGRldmljZSB3aWxsIGJlIGFsbG9jYXRlZCBhIHVu aXF1ZSBPRiBub2RlOgo+ID4gCj4gPiAgIFswLjcxMjUxMV0gbWZkLW9mLXRlc3QtY2hpbGQgbWZk LW9mLXRlc3QtY2hpbGQuMDogUHJvYmluZyBwbGF0Zm9ybSBkZXZpY2U6IDAKPiA+ICAgWzAuNzEy NzEwXSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4wOiBVc2luZyBPRiBub2Rl OiBjaGlsZEBhYWFhYWFhYWFhYWFhYWFhCj4gPiAgIFswLjcxMzAzM10gbWZkLW9mLXRlc3QtY2hp bGQgbWZkLW9mLXRlc3QtY2hpbGQuMTogUHJvYmluZyBwbGF0Zm9ybSBkZXZpY2U6IDEKPiA+ICAg WzAuNzEzMzgxXSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4xOiBVc2luZyBP RiBub2RlOiBjaGlsZEBjY2NjY2NjYwo+ID4gICBbMC43MTM2OTFdIG1mZC1vZi10ZXN0LWNoaWxk IG1mZC1vZi10ZXN0LWNoaWxkLjI6IFByb2JpbmcgcGxhdGZvcm0gZGV2aWNlOiAyCj4gPiAgIFsw LjcxMzg4OV0gbWZkLW9mLXRlc3QtY2hpbGQgbWZkLW9mLXRlc3QtY2hpbGQuMjogVXNpbmcgT0Yg bm9kZTogY2hpbGRAZGRkZGRkZGQwMDAwMDAwMAo+ID4gCj4gPiBXaGljaCBpcyBmaW5lIGlmIGFs bCBPRiBub2RlcyBhcmUgaWRlbnRpY2FsLiAgSG93ZXZlciBpZiB3ZSB3aXNoIHRvCj4gPiBhcHBs eSBhbiBhdHRyaWJ1dGUgdG8gcGFydGljdWxhciBkZXZpY2UsIHdlIHJlYWxseSBuZWVkIHRvIGVu c3VyZSB0aGUKPiA+IGNvcnJlY3QgT0Ygbm9kZSB3aWxsIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUg ZGV2aWNlIGNvbnRhaW5pbmcgdGhlCj4gPiBjb3JyZWN0IGFkZHJlc3MuICBXZSBhY2NvbXBsaXNo IHRoaXMgYnkgbWF0Y2hpbmcgdGhlIGRldmljZSdzIGFkZHJlc3MKPiA+IGV4cHJlc3NlZCBpbiBE VCB3aXRoIG9uZSBwcm92aWRlZCBkdXJpbmcgc3ViLWRldmljZSByZWdpc3RyYXRpb24uCj4gPiBM aWtlIHRoaXM6Cj4gPiAKPiA+ICAgc3RhdGljIGNvbnN0IHN0cnVjdCBtZmRfY2VsbCBtZmRfb2Zf dGVzdF9jZWxsW10gPSB7Cj4gPiAgICAgICAgIE9GX01GRF9DRUxMX1JFRygibWZkLW9mLXRlc3Qt Y2hpbGQiLCBOVUxMLCBOVUxMLCAwLCAxLCAibWZkLG9mLXRlc3QtY2hpbGQiLCAweGRkZGRkZGRk MDAwMDAwMDApLAo+ID4gICAgICAgICBPRl9NRkRfQ0VMTF9SRUcoIm1mZC1vZi10ZXN0LWNoaWxk IiwgTlVMTCwgTlVMTCwgMCwgMiwgIm1mZCxvZi10ZXN0LWNoaWxkIiwgMHhhYWFhYWFhYWFhYWFh YWFhKSwKPiA+ICAgICAgICAgT0ZfTUZEX0NFTExfUkVHKCJtZmQtb2YtdGVzdC1jaGlsZCIsIE5V TEwsIE5VTEwsIDAsIDMsICJtZmQsb2YtdGVzdC1jaGlsZCIsIDB4MDAwMDAwMDBjY2NjY2NjYykK PiA+ICAgfTsKPiA+IAo+ID4gVGhpcyB3aWxsIGVuc3VyZSBhIHNwZWNpZmljIGRldmljZSAoZGVz aWduYXRlZCBoZXJlIHVzaW5nIHRoZQo+ID4gcGxhdGZvcm1faWRzOyAxLCAyIGFuZCAzKSBpcyBt YXRjaGVkIHdpdGggYSBwYXJ0aWN1bGFyIE9GIG5vZGU6Cj4gPiAKPiA+ICAgWzAuNzEyNTExXSBt ZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4wOiBQcm9iaW5nIHBsYXRmb3JtIGRl dmljZTogMAo+ID4gICBbMC43MTI3MTBdIG1mZC1vZi10ZXN0LWNoaWxkIG1mZC1vZi10ZXN0LWNo aWxkLjA6IFVzaW5nIE9GIG5vZGU6IGNoaWxkQGRkZGRkZGRkMDAwMDAwMDAKPiA+ICAgWzAuNzEz MDMzXSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4xOiBQcm9iaW5nIHBsYXRm b3JtIGRldmljZTogMQo+ID4gICBbMC43MTMzODFdIG1mZC1vZi10ZXN0LWNoaWxkIG1mZC1vZi10 ZXN0LWNoaWxkLjE6IFVzaW5nIE9GIG5vZGU6IGNoaWxkQGFhYWFhYWFhYWFhYWFhYWEKPiA+ICAg WzAuNzEzNjkxXSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVzdC1jaGlsZC4yOiBQcm9iaW5n IHBsYXRmb3JtIGRldmljZTogMgo+ID4gICBbMC43MTM4ODldIG1mZC1vZi10ZXN0LWNoaWxkIG1m ZC1vZi10ZXN0LWNoaWxkLjI6IFVzaW5nIE9GIG5vZGU6IGNoaWxkQGNjY2NjY2NjCj4gPiAKPiA+ IFRoaXMgaW1wbGVtZW50YXRpb24gaXMgc3RpbGwgbm90IGluZmFsbGlibGUsIGhlbmNlIHRoZSBt ZW50aW9uIG9mCj4gPiAiYmVzdCBlZmZvcnQiIGluIHRoZSBjb21taXQgc3ViamVjdC4gIFNpbmNl IHdlIGhhdmUgbm90ICppbnNpc3RlZCogb24KPiA+IHRoZSBleGlzdGVuY2Ugb2YgJ3JlZycgcHJv cGVydGllcyAoaW4gc29tZSBzY2VuYXJpb3MgdGhleSBqdXN0IGRvIG5vdAo+ID4gbWFrZSBzZW5z ZSkgYW5kIG5vIGRldmljZSBjdXJyZW50bHkgdXNlcyB0aGUgbmV3ICdvZl9yZWcnIGF0dHJpYnV0 ZSwKPiA+IHdlIGhhdmUgdG8gbWFrZSBhbiBvbi10aGUtZmx5IGp1ZGdlbWVudCBjYWxsIHdoZXRo ZXIgdG8gYXNzb2NpYXRlIHRoZQo+ID4gT0Ygbm9kZSBhbnl3YXkuICBXaGljaCB3ZSBkbyBpbiBj YXNlcyB3aGVyZSBwYXJlbnQgZHJpdmVycyBoYXZlbid0Cj4gPiBzcGVjaWZpZWQgYSBwYXJ0aWN1 bGFyIE9GIG5vZGUgdG8gbWF0Y2ggdG8uICBTbyB0aGVyZSBpcyBhICpzbGlnaHQqCj4gPiBwb3Nz aWJpbGl0eSBvZiB0aGUgZm9sbG93aW5nIHJlc3VsdCAobm90ZTogdGhlIGltcGxlbWVudGF0aW9u IGhlcmUgaXMKPiA+IGNvbnZvbHV0ZWQsIGJ1dCBpdCBzaG93cyB5b3Ugb25lIG1lYW5zIGJ5IHdo aWNoIHRoaXMgcHJvY2VzcyBjYW4KPiA+IHN0aWxsIGJyZWFrKToKPiA+IAo+ID4gICAvKgo+ID4g ICAgKiBGaXJzdCBlbnRyeSB3aWxsIG1hdGNoIHRvIHRoZSBmaXJzdCBPRiBub2RlIHdpdGggbWF0 Y2hpbmcgY29tcGF0aWJsZQo+ID4gICAgKiBTZWNvbmQgd2lsbCBmYWlsLCBzaW5jZSB0aGUgZmly c3QgdG9vayBpdHMgT0Ygbm9kZSBhbmQgaXMgbm8gbG9uZ2VyIGF2YWlsYWJsZQo+ID4gICAgKiBU aGlyZCB3aWxsIHN1Y2NlZWQKPiA+ICAgICovCj4gPiAgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbWZk X2NlbGwgbWZkX29mX3Rlc3RfY2VsbFtdID0gewo+ID4gICAgICAgICBPRl9NRkRfQ0VMTCgibWZk LW9mLXRlc3QtY2hpbGQiLCBOVUxMLCBOVUxMLCAwLCAxLCAibWZkLG9mLXRlc3QtY2hpbGQiKSwK PiA+IAlPRl9NRkRfQ0VMTF9SRUcoIm1mZC1vZi10ZXN0LWNoaWxkIiwgTlVMTCwgTlVMTCwgMCwg MiwgIm1mZCxvZi10ZXN0LWNoaWxkIiwgMHhhYWFhYWFhYWFhYWFhYWFhKSwKPiA+ICAgICAgICAg T0ZfTUZEX0NFTExfUkVHKCJtZmQtb2YtdGVzdC1jaGlsZCIsIE5VTEwsIE5VTEwsIDAsIDMsICJt ZmQsb2YtdGVzdC1jaGlsZCIsIDB4MDAwMDAwMDBjY2NjY2NjYykKPiA+ICAgfTsKPiA+IAo+ID4g VGhlIHJlc3VsdDoKPiA+IAo+ID4gICBbMC43NTM4NjldIG1mZC1vZi10ZXN0LXBhcmVudCBtZmRf b2ZfdGVzdDogUmVnaXN0ZXJpbmcgMyBkZXZpY2VzCj4gPiAgIFswLjc1NjU5N10gbWZkLW9mLXRl c3QtY2hpbGQ6IEZhaWxlZCB0byBsb2NhdGUgb2Zfbm9kZSBbaWQ6IDJdCj4gPiAgIFswLjc1OTk5 OV0gbWZkLW9mLXRlc3QtY2hpbGQgbWZkLW9mLXRlc3QtY2hpbGQuMTogUHJvYmluZyBwbGF0Zm9y bSBkZXZpY2U6IDEKPiA+ICAgWzAuNzYwMzE0XSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQtb2YtdGVz dC1jaGlsZC4xOiBVc2luZyBPRiBub2RlOiBjaGlsZEBhYWFhYWFhYWFhYWFhYWFhCj4gPiAgIFsw Ljc2MDkwOF0gbWZkLW9mLXRlc3QtY2hpbGQgbWZkLW9mLXRlc3QtY2hpbGQuMjogUHJvYmluZyBw bGF0Zm9ybSBkZXZpY2U6IDIKPiA+ICAgWzAuNzYxMTgzXSBtZmQtb2YtdGVzdC1jaGlsZCBtZmQt b2YtdGVzdC1jaGlsZC4yOiBObyBPRiBub2RlIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGRldmljZQo+ ID4gICBbMC43NjE2MjFdIG1mZC1vZi10ZXN0LWNoaWxkIG1mZC1vZi10ZXN0LWNoaWxkLjM6IFBy b2JpbmcgcGxhdGZvcm0gZGV2aWNlOiAzCj4gPiAgIFswLjc2MTg5OV0gbWZkLW9mLXRlc3QtY2hp bGQgbWZkLW9mLXRlc3QtY2hpbGQuMzogVXNpbmcgT0Ygbm9kZTogY2hpbGRAY2NjY2NjY2MKPiA+ IAo+ID4gV2UgY291bGQgY29kZSBhcm91bmQgdGhpcyB3aXRoIHNvbWUgcHJlLXBhcnNpbmcgc2Vt YW50aWNzLCBidXQgdGhlCj4gPiBhZGRlZCBjb21wbGV4aXR5IHJlcXVpcmVkIHRvIGNvdmVyIGVh Y2ggYW5kIGV2ZXJ5IGNvcm5lci1jYXNlIGlzIG5vdAo+ID4ganVzdGlmaWVkLiAgTWVyZWx5IHBh dGNoaW5nIHRoZSBjdXJyZW50IGZhaWxpbmcgKHZpYSB0aGlzIHBhdGNoKSBpcwo+ID4gYWxyZWFk eSB3b3JraW5nIHdpdGggc29tZSBwcmV0dHkgc21hbGwgY29ybmVyLWNhc2VzLiAgT3RoZXIgaXNz dWVzCj4gPiBzaG91bGQgYmUgcGF0Y2hlZCBpbiB0aGUgcGFyZW50IGRyaXZlcnMgd2hpY2ggY2Fu IGJlIGFjaGlldmVkIHNpbXBseQo+ID4gYnkgaW1wbGVtZW50aW5nIE9GX01GRF9DRUxMX1JFRygp Lgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3Jn Pgo+ID4gLS0tCj4gPiAKPiA+IENoYW5nZWxvZzoKPiA+IAo+ID4gdjEgPT4gdjI6Cj4gPiAgICog U2ltcGx5IHJldHVybiAtRUFHQUlOIGlmIG5vZGUgaXMgYWxyZWFkeSBpbiB1c2UKPiA+ICAgKiBB bGxvdyBmb3IgdmFsaWQgb2ZfcmVnPTAgYnkgaW50cm9kdWNpbmcgdXNlX29mX3JlZyBib29sZWFu IGZsYWcKPiA+ICAgKiBTcGxpdCBoZWxwZXJzIG91dCBpbnRvIHNlcGFyYXRlIHBhdGNoCj4gPiAK PiA+IGRyaXZlcnMvbWZkL21mZC1jb3JlLmMgICB8IDk5ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0KPiA+ICBpbmNsdWRlL2xpbnV4L21mZC9jb3JlLmggfCAxMCArKysr Cj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA5NyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkK ClsuLi5dCgo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbWZkL2NvcmUuaCBiL2luY2x1 ZGUvbGludXgvbWZkL2NvcmUuaAo+ID4gaW5kZXggZDAxZDEyOTllNDlkYy4uYTE0OGI5MDdiYjdm MSAxMDA2NDQKPiA+IC0tLSBhL2luY2x1ZGUvbGludXgvbWZkL2NvcmUuaAo+ID4gKysrIGIvaW5j bHVkZS9saW51eC9tZmQvY29yZS5oCj4gPiBAQCAtNzgsNiArNzgsMTYgQEAgc3RydWN0IG1mZF9j ZWxsIHsKPiA+ICAJICovCj4gPiAgCWNvbnN0IGNoYXIJCSpvZl9jb21wYXRpYmxlOwo+ID4gIAo+ ID4gKwkvKgo+ID4gKwkgKiBBZGRyZXNzIGFzIGRlZmluZWQgaW4gRGV2aWNlIFRyZWUuICBVc2Vk IHRvIGNvbXBlbWVudCAnb2ZfY29tcGF0aWJsZScKPiA+ICsJICogKGFib3ZlKSB3aGVuIG1hdGNo aW5nIE9GIG5vZGVzIHdpdGggZGV2aWNlcyB0aGF0IGhhdmUgaWRlbnRpY2FsCj4gPiArCSAqIGNv bXBhdGlibGUgc3RyaW5ncwo+ID4gKwkgKi8KPiAKPiBJbnN0ZWFkIG9mIHRoZSBhYm92ZSBjb21t ZW50LCBzdWdnZXN0IHNvbWV0aGluZyBsaWtlIGluc3RlYWQgKEkgaGF2ZSBub3QgcHJvcGVybHkK PiBsaW5lIHdyYXBwZWQsIHRvIG1ha2UgaXQgZWFzaWVyIHRvIHNlZSB0aGUgZGlmZmVyZW5jZSk6 Cj4gCj4gICAgPiArCS8qCj4gICAgPiArCSAqIEFkZHJlc3MgYXMgZGVmaW5lZCBpbiBEZXZpY2Ug VHJlZSBtZmQgY2hpbGQgbm9kZSAicmVnIiBwcm9wZXJ0eS4gIFVzZWQgaW4gY29tYmluYXRpb24g d2l0aCAnb2ZfY29tcGF0aWJsZScKPiAgICA+ICsJICogKGFib3ZlKSB3aGVuIG1hdGNoaW5nIE9G IG5vZGVzIHdpdGggZGV2aWNlcyB0aGF0IGhhdmUgaWRlbnRpY2FsCj4gICAgPiArCSAqIGNvbXBh dGlibGUgc3RyaW5ncwo+ICAgID4gKwkgKi8KCkknbGwgc3BsaXQgdGhlIGRpZmZlcmVuY2UgYW5k IG1ha2UgaXQgbW9yZSBjbGVhciwgdGhhbmtzLgoKLS0gCkxlZSBKb25lcyBb5p2O55C85pavXQpT ZW5pb3IgVGVjaG5pY2FsIExlYWQgLSBEZXZlbG9wZXIgU2VydmljZXMKTGluYXJvLm9yZyDilIIg T3BlbiBzb3VyY2Ugc29mdHdhcmUgZm9yIEFybSBTb0NzCkZvbGxvdyBMaW5hcm86IEZhY2Vib29r IHwgVHdpdHRlciB8IEJsb2cKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxA bGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK