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 DBEA1C0015E for ; Tue, 1 Aug 2023 03:36:37 +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:From:References:Cc:To: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Il77JvU8E89RM/XzNQHPZhx5S7OLO53+IS8WfXYk7QE=; b=vvlVaRwAxEgwOi aIMLH0Bqdf+C7iBgr1nPa5g3gafqeK/UPbEDGT9ndpYniLMIR4Fw5KJVFMEMkXSHWs/x6cuh/O95/ BA2dmMoQZ48p/CnboxXYuEjlLfj1sriH/0KlL1dxhcAcnh2SR2M5mnxclwIuaLbV1B6ZkurYyz8nq 42eAiFbgjhXXrpkf+EFfpGTzMx1DCyOM7YE0AnmmdHpJCPafY7+VxL45JCUkkrR89RLV14do1hxOi 1LXzGg8MIm4jR68/MHXPljkT/rR8iHYKZzJwWDjqJtEnIYdq0WlDSutQbvBpE+x6N8bwGBWwaUfzf ykAaADGasmGrsEiBCtRQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qQgBB-000Hy8-0i; Tue, 01 Aug 2023 03:36:13 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qQgB0-000HvB-0r for linux-arm-kernel@lists.infradead.org; Tue, 01 Aug 2023 03:36:04 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6E08BD75; Mon, 31 Jul 2023 20:36:42 -0700 (PDT) Received: from [10.163.53.114] (unknown [10.163.53.114]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E6A5E3F59C; Mon, 31 Jul 2023 20:35:56 -0700 (PDT) Message-ID: Date: Tue, 1 Aug 2023 09:05:54 +0530 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: [PATCH 1/3] arm_pmu: acpi: Add a representative platform device for TRBE Content-Language: en-US To: Will Deacon Cc: linux-arm-kernel@lists.infradead.org, suzuki.poulose@arm.com, Catalin Marinas , Mark Rutland , linux-kernel@vger.kernel.org References: <20230728112733.359620-1-anshuman.khandual@arm.com> <20230728112733.359620-2-anshuman.khandual@arm.com> <20230728144056.GE21718@willie-the-truck> <3ee165d7-3727-53cc-295d-a2108734952d@arm.com> <20230731145922.GB24881@willie-the-truck> From: Anshuman Khandual In-Reply-To: <20230731145922.GB24881@willie-the-truck> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230731_203602_572181_17C5C1A3 X-CRM114-Status: GOOD ( 36.94 ) 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 CgpPbiA3LzMxLzIzIDIwOjI5LCBXaWxsIERlYWNvbiB3cm90ZToKPiBPbiBNb24sIEp1bCAzMSwg MjAyMyBhdCAwNTozODozOFBNICswNTMwLCBBbnNodW1hbiBLaGFuZHVhbCB3cm90ZToKPj4gT24g Ny8yOC8yMyAyMDoxMCwgV2lsbCBEZWFjb24gd3JvdGU6Cj4+PiBPbiBGcmksIEp1bCAyOCwgMjAy MyBhdCAwNDo1NzozMVBNICswNTMwLCBBbnNodW1hbiBLaGFuZHVhbCB3cm90ZToKPj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9wZXJmL2FybV9wbXVfYWNwaS5jIGIvZHJpdmVycy9wZXJmL2FybV9w bXVfYWNwaS5jCj4+Pj4gaW5kZXggOTA4MTVhZDc2MmViLi5kZDNkZjY3Mjk4MDggMTAwNjQ0Cj4+ Pj4gLS0tIGEvZHJpdmVycy9wZXJmL2FybV9wbXVfYWNwaS5jCj4+Pj4gKysrIGIvZHJpdmVycy9w ZXJmL2FybV9wbXVfYWNwaS5jCj4gCj4gWy4uLl0KPiAKPj4+PiArCXJldCA9IHBsYXRmb3JtX2Rl dmljZV9yZWdpc3RlcigmdHJiZV9hY3BpX2Rldik7Cj4+Pj4gKwlpZiAocmV0IDwgMCkgewo+Pj4+ ICsJCXByX3dhcm4oIkFDUEk6IFRSQkU6IFVuYWJsZSB0byByZWdpc3RlciBkZXZpY2VcbiIpOwo+ Pj4+ICsJCWFjcGlfdW5yZWdpc3Rlcl9nc2koZ3NpKTsKPj4+PiArCX0KPj4+PiArfQo+Pj4+ICsj ZWxzZQo+Pj4+ICtzdGF0aWMgaW5saW5lIHZvaWQgYXJtX3RyYmVfYWNwaV9yZWdpc3Rlcl9kZXZp Y2Uodm9pZCkKPj4+PiArewo+Pj4+ICsKPj4+PiArfQo+Pj4+ICsjZW5kaWYgLyogQ09ORklHX0NP UkVTSUdIVF9UUkJFICovCj4+Pgo+Pj4gVGhpcyBsb29rcyBsaWtlIHlvdSByYW4gcy9zcGUvdHJi ZS8gb3ZlciB0aGUgU1BFIGRldmljZSByZWdpc3RyYXRpb24KPj4+IGNvZGUgOikKPj4KPj4gWWVh aCwgYWxtb3N0IDopIAo+Pgo+Pj4gUGxlYXNlIGNhbiB5b3UgcmVmYWN0b3IgdGhpbmdzIHNvIHdl IGRvbid0IGhhdmUgYWxsIHRoZSBkdXBsaWNhdGlvbj8gSQo+Pj4gc3VzcGVjdCB0aGlzIHdvbid0 IGJlIHRoZSBsYXN0IGRldmljZSB3aGljaCBuZWVkcyB0aGUgc2FtZSB0cmVhdGVtZW50Lgo+Pgo+ PiBTaG91bGQgdGhlIHJlZmFjdG9yaW5nIGp1c3QgYWNjb21tb2RhdGUgU1BFLCBhbmQgVFJCRSBv ciBtYWtlIGl0IG1vcmUgZ2VuZXJpYyB0bwo+PiBhY2NvbW1vZGF0ZSBmdXR1cmUgZGV2aWNlcyBh cyB3ZWxsLiBTb21ldGhpbmcgbGlrZSB0aGUgZm9sbG93aW5nIGVudW1lcmF0aW9uLgo+Pgo+PiBl bnVtIGFybV9wbGF0Zm9ybV9kZXZpY2Ugewo+PiAgICAgICAgQVJNX1BMQVRGT1JNX0RFVklDRV9T UEUsCj4+ICAgICAgICBBUk1fUExBVEZPUk1fREVWSUNFX1RSQkUsCj4+ICAgICAgICBBUk1fUExB VEZPUk1fREVWSUNFX01BWCwKPj4gfTsKPj4KPj4gQnV0IHRoYXQgd291bGQgcmVxdWlyZSBhZGRp bmcgc29tZSBoZWxwZXIgZnVuY3Rpb25zIHRvIHNlbGVjdCB0aGVzZSBmb2xsb3dpbmcKPj4gZWxl bWVudHMgYmFzZWQgb24gdGhlIGFib3ZlIGVudW1lcmF0aW9uIHZpYSBhIGNvbW1vbiBmdW5jdGlv bgo+Pgo+PiAtIGdpY2MtPlhYWF9pbnRlcnJ1cHQKPj4gLSBBQ1BJX01BRFRfR0lDQ19TUEUvVFJC RSBmb3IgaGVhZGVyIGxlbmd0aCBjb21wYXJpc29uCj4+IC0gc3RhdGljIHN0cnVjdCBwbGF0Zm9y bV9kZXZpY2UvcmVzb3VyY2VzIChzdGF0aWMgb2JqZWN0cyBpbiB0aGUgZmlsZSkKPj4KPj4gU2Vl bXMgbGlrZSB3aWxsIGFkZCBtdWNoIG1vcmUgY29kZSBmb3IgYSByZWZhY3Rvci4gRGlkIHlvdSBo YXZlIHNvbWV0aGluZyBlbHNlCj4+IGluIG1pbmQgZm9yIHRoZSByZWZhY3Rvci4KPiAKPiBBbGwg SSdtIHNheWluZyBpcyB0aGF0IHdlIHNob3VsZG4ndCBoYXZlIGlkZW50aWNhbCBjb3BpZXMgb2Yg dGhlIGNvZGUgdG8KPiB3YWxrIHRoZSBNQURULCBwdWxsIG91dCB0aGUgaXJxcyBhbmQgcmVnaXN0 ZXIgdGhlIGRldmljZS4KPiAKPiBTbyBzb21ldGhpbmcgbGlrZSB0aGUgdG90YWxseSB1bnRlc3Rl ZCBoYWNrIGJlbG93LiBJIHByb2JhYmx5IGJyb2tlCj4gc29tZXRoaW5nLCBidXQgaG9wZWZ1bGx5 IHlvdSBzZWUgd2hhdCBJIG1lYW4uCj4gCj4gV2lsbAo+IAo+IC0tLT44Cj4gCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvcGVyZi9hcm1fcG11X2FjcGkuYyBiL2RyaXZlcnMvcGVyZi9hcm1fcG11X2Fj cGkuYwo+IGluZGV4IDkwODE1YWQ3NjJlYi4uN2YxY2YzNmM2ZTY5IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvcGVyZi9hcm1fcG11X2FjcGkuYwo+ICsrKyBiL2RyaXZlcnMvcGVyZi9hcm1fcG11X2Fj cGkuYwo+IEBAIC02OSw2ICs2OSw2MiBAQCBzdGF0aWMgdm9pZCBhcm1fcG11X2FjcGlfdW5yZWdp c3Rlcl9pcnEoaW50IGNwdSkKPiAgICAgICAgICAgICAgICAgYWNwaV91bnJlZ2lzdGVyX2dzaShn c2kpOwo+ICB9Cj4gIAo+ICtzdGF0aWMgaW50Cj4gK2FybV9hY3BpX3JlZ2lzdGVyX3BtdV9kZXZp Y2Uoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwgdTggbGVuLAo+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdTE2ICgqcGFyc2VfZ3NpKShzdHJ1Y3QgYWNwaV9tYWR0X2dlbmVyaWNf aW50ZXJydXB0ICopKQoKVGhpcyBmYWN0b3JlZCBvdXQgaGVscGVyIHNob3VsZCBiZSB3cmFwcGVk IGluc2lkZSBDT05GSUdfQVJNX1NQRV9QTVUKYW5kIENPTkZJR19DT1JFU0lHSFRfVFJCRSA/IE90 aGVyd2lzZSwgdGhlcmUgd2lsbCBiZSBubyBjYWxsZXJzIGxlZnQKZm9yIHRoaXMgaGVscGVyIHRy aWdnZXJpbmcgd2FybmluZy4KCmRyaXZlcnMvcGVyZi9hcm1fcG11X2FjcGkuYzo3MzoxOiB3YXJu aW5nOiDigJhhcm1fYWNwaV9yZWdpc3Rlcl9wbXVfZGV2aWNl4oCZIGRlZmluZWQgYnV0IG5vdCB1 c2VkIFstV3VudXNlZC1mdW5jdGlvbl0KICAgNzMgfCBhcm1fYWNwaV9yZWdpc3Rlcl9wbXVfZGV2 aWNlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsIHU4IGxlbiwKICAgICAgfCBefn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgpCdXQgaW4gdGhhdCBjYXNlLCB3ZSBoYXZlIHRvIGtlZXAg YWRkaW5nIG5ldyBjb25maWdzIHdoZW4gbmV3IGRldmljZXMKcmVxdWlyZSBwbGF0Zm9ybSBkZXZp Y2VzIHRvIGJlIHJlZ2lzdGVyZWQuIElzIHRoZXJlIGEgYmV0dGVyIHdheSA/Cgo+ICt7Cj4gKyAg ICAgICBpbnQgY3B1LCBoZXRpZCwgaXJxLCByZXQ7Cj4gKyAgICAgICBib29sIG1hdGNoZWQgPSBm YWxzZTsKPiArICAgICAgIHUxNiBnc2kgPSAwOwo+ICsKPiArICAgICAgIGlmIChwZGV2LT5udW1f cmVzb3VyY2VzICE9IDEpCj4gKyAgICAgICAgICAgICAgIHJldHVybiAtRU5YSU87Cj4gKwo+ICsg ICAgICAgaWYgKHBkZXYtPnJlc291cmNlWzBdLmZsYWdzICE9IElPUkVTT1VSQ0VfSVJRKQo+ICsg ICAgICAgICAgICAgICByZXR1cm4gLUVOWElPOwo+ICsKPiArICAgICAgIC8qCj4gKyAgICAgICAg KiBTYW5pdHkgY2hlY2sgYWxsIHRoZSBHSUNDIHRhYmxlcyBmb3IgdGhlIHNhbWUgaW50ZXJydXB0 IG51bWJlci4KPiArICAgICAgICAqIEZvciBub3csIHdlIG9ubHkgc3VwcG9ydCBob21vZ2VuZW91 cyBBQ1BJIG1hY2hpbmVzLgo+ICsgICAgICAgICovCj4gKyAgICAgICBmb3JfZWFjaF9wb3NzaWJs ZV9jcHUoY3B1KSB7Cj4gKyAgICAgICAgICAgICAgIHN0cnVjdCBhY3BpX21hZHRfZ2VuZXJpY19p bnRlcnJ1cHQgKmdpY2M7Cj4gKyAgICAgICAgICAgICAgIHUxNiB0aGlzX2dzaTsKPiArCj4gKyAg ICAgICAgICAgICAgIGdpY2MgPSBhY3BpX2NwdV9nZXRfbWFkdF9naWNjKGNwdSk7Cj4gKyAgICAg ICAgICAgICAgIGlmIChnaWNjLT5oZWFkZXIubGVuZ3RoIDwgbGVuKQo+ICsgICAgICAgICAgICAg ICAgICAgICAgIHJldHVybiBtYXRjaGVkID8gLUVOWElPIDogMDsKPiArCj4gKyAgICAgICAgICAg ICAgIHRoaXNfZ3NpID0gcGFyc2VfZ3NpKGdpY2MpOwo+ICsgICAgICAgICAgICAgICBpZiAoIW1h dGNoZWQpIHsKPiArICAgICAgICAgICAgICAgICAgICAgICBoZXRpZCA9IGZpbmRfYWNwaV9jcHVf dG9wb2xvZ3lfaGV0ZXJvX2lkKGNwdSk7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgZ3NpID0g dGhpc19nc2k7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgbWF0Y2hlZCA9IHRydWU7Cj4gKyAg ICAgICAgICAgICAgIH0gZWxzZSBpZiAoaGV0aWQgIT0gZmluZF9hY3BpX2NwdV90b3BvbG9neV9o ZXRlcm9faWQoY3B1KSB8fAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIGdzaSAhPSB0aGlz X2dzaSkgewo+ICsgICAgICAgICAgICAgICAgICAgICAgIHByX3dhcm4oIkFDUEk6ICVzOiBtdXN0 IGJlIGhvbW9nZW5lb3VzXG4iLCBwZGV2LT5uYW1lKTsKPiArICAgICAgICAgICAgICAgICAgICAg ICByZXR1cm4gLUVOWElPOwo+ICsgICAgICAgICAgICAgICB9Cj4gKyAgICAgICB9Cj4gKwo+ICsg ICAgICAgaXJxID0gYWNwaV9yZWdpc3Rlcl9nc2koTlVMTCwgZ3NpLCBBQ1BJX0xFVkVMX1NFTlNJ VElWRSwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFDUElfQUNUSVZFX0hJR0gp Owo+ICsgICAgICAgaWYgKGlycSA8IDApIHsKPiArICAgICAgICAgICAgICAgcHJfd2FybigiQUNQ STogJXMgVW5hYmxlIHRvIHJlZ2lzdGVyIGludGVycnVwdDogJWRcbiIsCj4gKyAgICAgICAgICAg ICAgICAgICAgICAgcGRldi0+bmFtZSwgZ3NpKTsKPiArICAgICAgICAgICAgICAgcmV0dXJuIC1F TlhJTzsKPiArICAgICAgIH0KPiArCj4gKyAgICAgICBwZGV2LT5yZXNvdXJjZVswXS5zdGFydCA9 IGlycTsKPiArICAgICAgIHJldCA9IHBsYXRmb3JtX2RldmljZV9yZWdpc3RlcihwZGV2KTsKPiAr ICAgICAgIGlmIChyZXQgPCAwKSB7Cj4gKyAgICAgICAgICAgICAgIHByX3dhcm4oIkFDUEk6ICVz OiBVbmFibGUgdG8gcmVnaXN0ZXIgZGV2aWNlXG4iLCBwZGV2LT5uYW1lKTsKPiArICAgICAgICAg ICAgICAgYWNwaV91bnJlZ2lzdGVyX2dzaShnc2kpOwo+ICsgICAgICAgfQo+ICsKPiArICAgICAg IHJldHVybiByZXQ7Cj4gK30KPiArCj4gICNpZiBJU19FTkFCTEVEKENPTkZJR19BUk1fU1BFX1BN VSkKPiAgc3RhdGljIHN0cnVjdCByZXNvdXJjZSBzcGVfcmVzb3VyY2VzW10gPSB7Cj4gICAgICAg ICB7Cj4gQEAgLTg5LDQ5ICsxNDUsMTggQEAgc3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2Ug c3BlX2RldiA9IHsKPiAgICogYW5kIGNyZWF0ZSBhIFNQRSBkZXZpY2UgaWYgd2UgZGV0ZWN0IGEg cmVjZW50IE1BRFQgd2l0aAo+ICAgKiBhIGhvbW9nZW5lb3VzIFBQSSBtYXBwaW5nLgo+ICAgKi8K PiArc3RhdGljIHUxNiBhcm1fc3BlX3BhcnNlX2dzaShzdHJ1Y3QgYWNwaV9tYWR0X2dlbmVyaWNf aW50ZXJydXB0ICpnaWNjKQo+ICt7Cj4gKyAgICAgICByZXR1cm4gZ2ljYy0+c3BlX2ludGVycnVw dDsKPiArfQo+ICsKPiAgc3RhdGljIHZvaWQgYXJtX3NwZV9hY3BpX3JlZ2lzdGVyX2RldmljZSh2 b2lkKQo+ICB7Cj4gLSAgICAgICBpbnQgY3B1LCBoZXRpZCwgaXJxLCByZXQ7Cj4gLSAgICAgICBi b29sIGZpcnN0ID0gdHJ1ZTsKPiAtICAgICAgIHUxNiBnc2kgPSAwOwo+ICsgICAgICAgaW50IGVy ciA9IGFybV9hY3BpX3JlZ2lzdGVyX3BtdV9kZXZpY2UoJnNwZV9kZXYsIEFDUElfTUFEVF9HSUND X1NQRSwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFy bV9zcGVfcGFyc2VfZ3NpKTsKPiAgCj4gLSAgICAgICAvKgo+IC0gICAgICAgICogU2FuaXR5IGNo ZWNrIGFsbCB0aGUgR0lDQyB0YWJsZXMgZm9yIHRoZSBzYW1lIGludGVycnVwdCBudW1iZXIuCj4g LSAgICAgICAgKiBGb3Igbm93LCB3ZSBvbmx5IHN1cHBvcnQgaG9tb2dlbmVvdXMgQUNQSS9TUEUg bWFjaGluZXMuCj4gLSAgICAgICAgKi8KPiAtICAgICAgIGZvcl9lYWNoX3Bvc3NpYmxlX2NwdShj cHUpIHsKPiAtICAgICAgICAgICAgICAgc3RydWN0IGFjcGlfbWFkdF9nZW5lcmljX2ludGVycnVw dCAqZ2ljYzsKPiAtCj4gLSAgICAgICAgICAgICAgIGdpY2MgPSBhY3BpX2NwdV9nZXRfbWFkdF9n aWNjKGNwdSk7Cj4gLSAgICAgICAgICAgICAgIGlmIChnaWNjLT5oZWFkZXIubGVuZ3RoIDwgQUNQ SV9NQURUX0dJQ0NfU1BFKQo+IC0gICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKPiAtCj4g LSAgICAgICAgICAgICAgIGlmIChmaXJzdCkgewo+IC0gICAgICAgICAgICAgICAgICAgICAgIGdz aSA9IGdpY2MtPnNwZV9pbnRlcnJ1cHQ7Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFn c2kpCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47Cj4gLSAgICAgICAg ICAgICAgICAgICAgICAgaGV0aWQgPSBmaW5kX2FjcGlfY3B1X3RvcG9sb2d5X2hldGVyb19pZChj cHUpOwo+IC0gICAgICAgICAgICAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7Cj4gLSAgICAgICAg ICAgICAgIH0gZWxzZSBpZiAoKGdzaSAhPSBnaWNjLT5zcGVfaW50ZXJydXB0KSB8fAo+IC0gICAg ICAgICAgICAgICAgICAgICAgICAgIChoZXRpZCAhPSBmaW5kX2FjcGlfY3B1X3RvcG9sb2d5X2hl dGVyb19pZChjcHUpKSkgewo+IC0gICAgICAgICAgICAgICAgICAgICAgIHByX3dhcm4oIkFDUEk6 IFNQRSBtdXN0IGJlIGhvbW9nZW5lb3VzXG4iKTsKPiAtICAgICAgICAgICAgICAgICAgICAgICBy ZXR1cm47Cj4gLSAgICAgICAgICAgICAgIH0KPiAtICAgICAgIH0KPiAtCj4gLSAgICAgICBpcnEg PSBhY3BpX3JlZ2lzdGVyX2dzaShOVUxMLCBnc2ksIEFDUElfTEVWRUxfU0VOU0lUSVZFLAo+IC0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQUNQSV9BQ1RJVkVfSElHSCk7Cj4gLSAgICAg ICBpZiAoaXJxIDwgMCkgewo+IC0gICAgICAgICAgICAgICBwcl93YXJuKCJBQ1BJOiBTUEUgVW5h YmxlIHRvIHJlZ2lzdGVyIGludGVycnVwdDogJWRcbiIsIGdzaSk7Cj4gLSAgICAgICAgICAgICAg IHJldHVybjsKPiAtICAgICAgIH0KPiAtCj4gLSAgICAgICBzcGVfcmVzb3VyY2VzWzBdLnN0YXJ0 ID0gaXJxOwo+IC0gICAgICAgcmV0ID0gcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyKCZzcGVfZGV2 KTsKPiAtICAgICAgIGlmIChyZXQgPCAwKSB7Cj4gLSAgICAgICAgICAgICAgIHByX3dhcm4oIkFD UEk6IFNQRTogVW5hYmxlIHRvIHJlZ2lzdGVyIGRldmljZVxuIik7Cj4gLSAgICAgICAgICAgICAg IGFjcGlfdW5yZWdpc3Rlcl9nc2koZ3NpKTsKPiAtICAgICAgIH0KPiArICAgICAgIGlmIChlcnIp Cj4gKyAgICAgICAgICAgICAgIHByX3dhcm4oIkFDUEk6IEZhaWxlZCB0byByZWdpc3RlciBTUEUg ZGV2aWNlXG4iKTsKPiAgfQo+ICAjZWxzZQo+ICBzdGF0aWMgaW5saW5lIHZvaWQgYXJtX3NwZV9h Y3BpX3JlZ2lzdGVyX2RldmljZSh2b2lkKQo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=