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 B6772C10F13 for ; Mon, 4 Dec 2023 06:49:28 +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=izeVXe+fU5r1oY2hJoZbReExgsKsFENOIX8yAgDR7pU=; b=0gTYxS+7LvL7pe p9zIE48SiJCfxRi6oMR4gt4UAw8GByxXc4Sk4enGMNbmgjS/y80sr577XZ3quLBIwlLnsPoI14BnP o1Lkbn88wkcMylzwmuQLqFRHJ+h4s1P6Tr82RBk4kHgQvdIBgOTtbfBaNPrX28IIrNQjav6dbpkBe iR85QjvD6b+YXpVi6mFvnQNTHEb6sx1mveyy7Fd6E8Xy78qf3/dAS2hMgDV64cOHcPU4zEUfLdjw1 XpBVglqcPhJRnnQyyTi0rdXXir4MtYlVi6JAEzU+1W7Kq2K/Ol8IG6EGen0mIL71ZkOOncp20pYVt vQWmTLIHmBLnEg3WPRFw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1rA2lA-0037TM-1D; Mon, 04 Dec 2023 06:48:52 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1rA2l6-0037T0-0W for linux-arm-kernel@lists.infradead.org; Mon, 04 Dec 2023 06:48:51 +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 06EEB165C; Sun, 3 Dec 2023 22:49:28 -0800 (PST) Received: from [10.162.41.8] (a077893.blr.arm.com [10.162.41.8]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B14373F5A1; Sun, 3 Dec 2023 22:48:36 -0800 (PST) Message-ID: <7c7acbf5-a6d5-4fe6-92ca-c5b3be2e85af@arm.com> Date: Mon, 4 Dec 2023 12:18:33 +0530 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH V2 3/7] coresight: catu: Move ACPI support from AMBA driver to platform driver Content-Language: en-US To: Suzuki K Poulose , linux-arm-kernel@lists.infradead.org Cc: Lorenzo Pieralisi , Sudeep Holla , Mike Leach , James Clark , Maxime Coquelin , Alexandre Torgue , linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org, coresight@lists.linaro.org, linux-stm32@st-md-mailman.stormreply.com References: <20231201062053.1268492-1-anshuman.khandual@arm.com> <20231201062053.1268492-4-anshuman.khandual@arm.com> <56e9bc16-7962-46c6-858d-53aa7a6c8555@arm.com> From: Anshuman Khandual In-Reply-To: <56e9bc16-7962-46c6-858d-53aa7a6c8555@arm.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231203_224848_301126_4936E0A6 X-CRM114-Status: GOOD ( 27.25 ) 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 CgpPbiAxMi8xLzIzIDE5OjExLCBTdXp1a2kgSyBQb3Vsb3NlIHdyb3RlOgo+IEhpIEFuc2h1bWFu LAo+IAo+IE9uIDAxLzEyLzIwMjMgMDY6MjAsIEFuc2h1bWFuIEtoYW5kdWFsIHdyb3RlOgo+PiBB ZGQgc3VwcG9ydCBmb3IgdGhlIGNhdHUgZGV2aWNlcyBpbiBhIG5ldyBwbGF0Zm9ybSBkcml2ZXIs IHdoaWNoIGNhbiB0aGVuCj4+IGJlIHVzZWQgb24gQUNQSSBiYXNlZCBwbGF0Zm9ybXMuIFRoaXMg Y2hhbmdlIHdvdWxkIG5vdyBhbGxvdyBydW50aW1lIHBvd2VyCj4+IG1hbmFnZW1lbnQgZm9yIEFD UEkgYmFzZWQgc3lzdGVtcy4gVGhlIGRyaXZlciB3b3VsZCB0cnkgdG8gZW5hYmxlIHRoZSBBUEIK Pj4gY2xvY2sgaWYgYXZhaWxhYmxlLgo+IAo+IFRoaXMgZG9lc24ndCB0YWxrIGFib3V0IHRoZSBu ZXcgaGVscGVyLiBBcyBzdWNoIEkgd291bGQgcHJlZmVyIHRoYXQgdG8gYmUgYSBzZXBhcmF0ZSBw cmVwYXJhdG9yeSBwYXRjaC4gU2VlIGJlbG93LgoKTWFrZXMgc2Vuc2UuCgo+IAo+Pgo+PiBDYzog TG9yZW56byBQaWVyYWxpc2kgPGxwaWVyYWxpc2lAa2VybmVsLm9yZz4KPj4gQ2M6IFN1ZGVlcCBI b2xsYSA8c3VkZWVwLmhvbGxhQGFybS5jb20+Cj4+IENjOiBTdXp1a2kgSyBQb3Vsb3NlIDxzdXp1 a2kucG91bG9zZUBhcm0uY29tPgo+PiBDYzogTWlrZSBMZWFjaCA8bWlrZS5sZWFjaEBsaW5hcm8u b3JnPgo+PiBDYzogSmFtZXMgQ2xhcmsgPGphbWVzLmNsYXJrQGFybS5jb20+Cj4+IENjOiBsaW51 eC1hY3BpQHZnZXIua2VybmVsLm9yZwo+PiBDYzogbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZy YWRlYWQub3JnCj4+IENjOiBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnCj4+IENjOiBjb3Jl c2lnaHRAbGlzdHMubGluYXJvLm9yZwo+PiBTaWduZWQtb2ZmLWJ5OiBBbnNodW1hbiBLaGFuZHVh bCA8YW5zaHVtYW4ua2hhbmR1YWxAYXJtLmNvbT4KPj4gLS0tCj4+IMKgIGRyaXZlcnMvYWNwaS9h cm02NC9hbWJhLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCAx IC0KPj4gwqAgZHJpdmVycy9od3RyYWNpbmcvY29yZXNpZ2h0L2NvcmVzaWdodC1jYXR1LmMgfCAx MzAgKysrKysrKysrKysrKysrKy0tLQo+PiDCoCBkcml2ZXJzL2h3dHJhY2luZy9jb3Jlc2lnaHQv Y29yZXNpZ2h0LWNhdHUuaCB8wqDCoCAxICsKPj4gwqAgZHJpdmVycy9od3RyYWNpbmcvY29yZXNp Z2h0L2NvcmVzaWdodC1jb3JlLmMgfMKgIDI5ICsrKysrCj4+IMKgIGluY2x1ZGUvbGludXgvY29y ZXNpZ2h0LmjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCA3ICsK Pj4gwqAgNSBmaWxlcyBjaGFuZ2VkLCAxNDkgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0p Cj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2FjcGkvYXJtNjQvYW1iYS5jIGIvZHJpdmVycy9h Y3BpL2FybTY0L2FtYmEuYwo+PiBpbmRleCBhZmI2YWZiNjY5NjcuLjU4NzA2MWIwZmQyZiAxMDA2 NDQKPj4gLS0tIGEvZHJpdmVycy9hY3BpL2FybTY0L2FtYmEuYwo+PiArKysgYi9kcml2ZXJzL2Fj cGkvYXJtNjQvYW1iYS5jCj4+IEBAIC0yNyw3ICsyNyw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg YWNwaV9kZXZpY2VfaWQgYW1iYV9pZF9saXN0W10gPSB7Cj4+IMKgwqDCoMKgwqAgeyJBUk1IQzUw MyIsIDB9LCAvKiBBUk0gQ29yZVNpZ2h0IERlYnVnICovCj4+IMKgwqDCoMKgwqAgeyJBUk1IQzk3 OSIsIDB9LCAvKiBBUk0gQ29yZVNpZ2h0IFRQSVUgKi8KPj4gwqDCoMKgwqDCoCB7IkFSTUhDOTdD IiwgMH0sIC8qIEFSTSBDb3JlU2lnaHQgU29DLTQwMCBUTUMsIFNvQy02MDAgRVRGL0VUQiAqLwo+ PiAtwqDCoMKgIHsiQVJNSEM5Q0EiLCAwfSwgLyogQVJNIENvcmVTaWdodCBDQVRVICovCj4+IMKg wqDCoMKgwqAgeyIiLCAwfSwKPj4gwqAgfTsKPj4gwqAgZGlmZiAtLWdpdCBhL2RyaXZlcnMvaHd0 cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtY2F0dS5jIGIvZHJpdmVycy9od3RyYWNpbmcvY29y ZXNpZ2h0L2NvcmVzaWdodC1jYXR1LmMKPj4gaW5kZXggMzk0OWRlZDBkNGZhLi5iYTVlZTdkMTU4 ZGQgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvaHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQt Y2F0dS5jCj4+ICsrKyBiL2RyaXZlcnMvaHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtY2F0 dS5jCj4+IEBAIC03LDYgKzcsOCBAQAo+PiDCoMKgICogQXV0aG9yOiBTdXp1a2kgSyBQb3Vsb3Nl IDxzdXp1a2kucG91bG9zZUBhcm0uY29tPgo+PiDCoMKgICovCj4+IMKgICsjaW5jbHVkZSA8bGlu dXgvcGxhdGZvcm1fZGV2aWNlLmg+Cj4+ICsjaW5jbHVkZSA8bGludXgvYWNwaS5oPgo+PiDCoCAj aW5jbHVkZSA8bGludXgvYW1iYS9idXMuaD4KPj4gwqAgI2luY2x1ZGUgPGxpbnV4L2RldmljZS5o Pgo+PiDCoCAjaW5jbHVkZSA8bGludXgvZG1hLW1hcHBpbmcuaD4KPj4gQEAgLTUwMiwyOCArNTA0 LDIwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY29yZXNpZ2h0X29wcyBjYXR1X29wcyA9IHsKPj4g wqDCoMKgwqDCoCAuaGVscGVyX29wcyA9ICZjYXR1X2hlbHBlcl9vcHMsCj4+IMKgIH07Cj4+IMKg IC1zdGF0aWMgaW50IGNhdHVfcHJvYmUoc3RydWN0IGFtYmFfZGV2aWNlICphZGV2LCBjb25zdCBz dHJ1Y3QgYW1iYV9pZCAqaWQpCj4+ICtzdGF0aWMgaW50IF9fY2F0dV9wcm9iZShzdHJ1Y3QgZGV2 aWNlICpkZXYsIHN0cnVjdCByZXNvdXJjZSAqcmVzKQo+PiDCoCB7Cj4+IMKgwqDCoMKgwqAgaW50 IHJldCA9IDA7Cj4+IMKgwqDCoMKgwqAgdTMyIGRtYV9tYXNrOwo+PiAtwqDCoMKgIHN0cnVjdCBj YXR1X2RydmRhdGEgKmRydmRhdGE7Cj4+ICvCoMKgwqAgc3RydWN0IGNhdHVfZHJ2ZGF0YSAqZHJ2 ZGF0YSA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+PiDCoMKgwqDCoMKgIHN0cnVjdCBjb3Jlc2ln aHRfZGVzYyBjYXR1X2Rlc2M7Cj4+IMKgwqDCoMKgwqAgc3RydWN0IGNvcmVzaWdodF9wbGF0Zm9y bV9kYXRhICpwZGF0YSA9IE5VTEw7Cj4+IC3CoMKgwqAgc3RydWN0IGRldmljZSAqZGV2ID0gJmFk ZXYtPmRldjsKPj4gwqDCoMKgwqDCoCB2b2lkIF9faW9tZW0gKmJhc2U7Cj4+IMKgIMKgwqDCoMKg wqAgY2F0dV9kZXNjLm5hbWUgPSBjb3Jlc2lnaHRfYWxsb2NfZGV2aWNlX25hbWUoJmNhdHVfZGV2 cywgZGV2KTsKPj4gwqDCoMKgwqDCoCBpZiAoIWNhdHVfZGVzYy5uYW1lKQo+PiDCoMKgwqDCoMKg wqDCoMKgwqAgcmV0dXJuIC1FTk9NRU07Cj4+IMKgIC3CoMKgwqAgZHJ2ZGF0YSA9IGRldm1fa3ph bGxvYyhkZXYsIHNpemVvZigqZHJ2ZGF0YSksIEdGUF9LRVJORUwpOwo+PiAtwqDCoMKgIGlmICgh ZHJ2ZGF0YSkgewo+PiAtwqDCoMKgwqDCoMKgwqAgcmV0ID0gLUVOT01FTTsKPj4gLcKgwqDCoMKg wqDCoMKgIGdvdG8gb3V0Owo+PiAtwqDCoMKgIH0KPj4gLQo+PiAtwqDCoMKgIGRldl9zZXRfZHJ2 ZGF0YShkZXYsIGRydmRhdGEpOwo+PiAtwqDCoMKgIGJhc2UgPSBkZXZtX2lvcmVtYXBfcmVzb3Vy Y2UoZGV2LCAmYWRldi0+cmVzKTsKPj4gK8KgwqDCoCBiYXNlID0gZGV2bV9pb3JlbWFwX3Jlc291 cmNlKGRldiwgcmVzKTsKPj4gwqDCoMKgwqDCoCBpZiAoSVNfRVJSKGJhc2UpKSB7Cj4+IMKgwqDC oMKgwqDCoMKgwqDCoCByZXQgPSBQVFJfRVJSKGJhc2UpOwo+PiDCoMKgwqDCoMKgwqDCoMKgwqAg Z290byBvdXQ7Cj4+IEBAIC01NjgsMTggKzU2MiwzNSBAQCBzdGF0aWMgaW50IGNhdHVfcHJvYmUo c3RydWN0IGFtYmFfZGV2aWNlICphZGV2LCBjb25zdCBzdHJ1Y3QgYW1iYV9pZCAqaWQpCj4+IMKg wqDCoMKgwqAgaWYgKElTX0VSUihkcnZkYXRhLT5jc2RldikpCj4+IMKgwqDCoMKgwqDCoMKgwqDC oCByZXQgPSBQVFJfRVJSKGRydmRhdGEtPmNzZGV2KTsKPj4gwqDCoMKgwqDCoCBlbHNlCj4+IC3C oMKgwqDCoMKgwqDCoCBwbV9ydW50aW1lX3B1dCgmYWRldi0+ZGV2KTsKPj4gK8KgwqDCoMKgwqDC oMKgIHBtX3J1bnRpbWVfcHV0KGRldik7Cj4+IMKgIG91dDoKPj4gwqDCoMKgwqDCoCByZXR1cm4g cmV0Owo+PiDCoCB9Cj4+IMKgIC1zdGF0aWMgdm9pZCBjYXR1X3JlbW92ZShzdHJ1Y3QgYW1iYV9k ZXZpY2UgKmFkZXYpCj4+ICtzdGF0aWMgaW50IGNhdHVfcHJvYmUoc3RydWN0IGFtYmFfZGV2aWNl ICphZGV2LCBjb25zdCBzdHJ1Y3QgYW1iYV9pZCAqaWQpCj4+ICt7Cj4+ICvCoMKgwqAgc3RydWN0 IGNhdHVfZHJ2ZGF0YSAqZHJ2ZGF0YTsKPj4gKwo+PiArwqDCoMKgIGRydmRhdGEgPSBkZXZtX2t6 YWxsb2MoJmFkZXYtPmRldiwgc2l6ZW9mKCpkcnZkYXRhKSwgR0ZQX0tFUk5FTCk7Cj4+ICvCoMKg wqAgaWYgKCFkcnZkYXRhKQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIC1FTk9NRU07Cj4+ICsK Pj4gK8KgwqDCoCBhbWJhX3NldF9kcnZkYXRhKGFkZXYsIGRydmRhdGEpOwo+PiArwqDCoMKgIHJl dHVybiBfX2NhdHVfcHJvYmUoJmFkZXYtPmRldiwgJmFkZXYtPnJlcyk7Cj4+ICt9Cj4+ICsKPj4g K3N0YXRpYyB2b2lkIF9fY2F0dV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KQo+PiDCoCB7Cj4+ IC3CoMKgwqAgc3RydWN0IGNhdHVfZHJ2ZGF0YSAqZHJ2ZGF0YSA9IGRldl9nZXRfZHJ2ZGF0YSgm YWRldi0+ZGV2KTsKPj4gK8KgwqDCoCBzdHJ1Y3QgY2F0dV9kcnZkYXRhICpkcnZkYXRhID0gZGV2 X2dldF9kcnZkYXRhKGRldik7Cj4+IMKgIMKgwqDCoMKgwqAgY29yZXNpZ2h0X3VucmVnaXN0ZXIo ZHJ2ZGF0YS0+Y3NkZXYpOwo+PiDCoCB9Cj4+IMKgICtzdGF0aWMgdm9pZCBjYXR1X3JlbW92ZShz dHJ1Y3QgYW1iYV9kZXZpY2UgKmFkZXYpCj4+ICt7Cj4+ICvCoMKgwqAgX19jYXR1X3JlbW92ZSgm YWRldi0+ZGV2KTsKPj4gK30KPj4gKwo+PiDCoCBzdGF0aWMgc3RydWN0IGFtYmFfaWQgY2F0dV9p ZHNbXSA9IHsKPj4gwqDCoMKgwqDCoCBDU19BTUJBX0lEKDB4MDAwYmI5ZWUpLAo+PiDCoMKgwqDC oMKgIHt9LAo+PiBAQCAtNTk4LDEzICs2MDksOTYgQEAgc3RhdGljIHN0cnVjdCBhbWJhX2RyaXZl ciBjYXR1X2RyaXZlciA9IHsKPj4gwqDCoMKgwqDCoCAuaWRfdGFibGXCoMKgwqDCoMKgwqDCoMKg wqDCoMKgID0gY2F0dV9pZHMsCj4+IMKgIH07Cj4+IMKgICtzdGF0aWMgaW50IGNhdHVfcGxhdGZv cm1fcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPj4gK3sKPj4gK8KgwqDCoCBz dHJ1Y3QgcmVzb3VyY2UgKnJlcyA9IHBsYXRmb3JtX2dldF9yZXNvdXJjZShwZGV2LCBJT1JFU09V UkNFX01FTSwgMCk7Cj4+ICvCoMKgwqAgc3RydWN0IGNhdHVfZHJ2ZGF0YSAqZHJ2ZGF0YTsKPj4g K8KgwqDCoCBpbnQgcmV0ID0gMDsKPj4gKwo+PiArwqDCoMKgIGRydmRhdGEgPSBkZXZtX2t6YWxs b2MoJnBkZXYtPmRldiwgc2l6ZW9mKCpkcnZkYXRhKSwgR0ZQX0tFUk5FTCk7Cj4+ICvCoMKgwqAg aWYgKCFkcnZkYXRhKQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIC1FTk9NRU07Cj4+ICsKPj4g K8KgwqDCoCBkcnZkYXRhLT5wY2xrID0gY29yZXNpZ2h0X2dldF9lbmFibGVfYXBiX3BjbGsoJnBk ZXYtPmRldik7Cj4+ICvCoMKgwqAgaWYgKElTX0VSUihkcnZkYXRhLT5wY2xrKSkKPj4gK8KgwqDC oMKgwqDCoMKgIHJldHVybiAtRU5PREVWOwo+PiArCj4+ICvCoMKgwqAgaWYgKHJlcykgewo+PiAr wqDCoMKgwqDCoMKgwqAgZHJ2ZGF0YS0+YmFzZSA9IGRldm1faW9yZW1hcF9yZXNvdXJjZSgmcGRl di0+ZGV2LCByZXMpOwo+PiArwqDCoMKgwqDCoMKgwqAgaWYgKElTX0VSUihkcnZkYXRhLT5iYXNl KSkgewo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjbGtfcHV0KGRydmRhdGEtPnBjbGspOwo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gUFRSX0VSUihkcnZkYXRhLT5iYXNlKTsK Pj4gK8KgwqDCoMKgwqDCoMKgIH0KPj4gK8KgwqDCoCB9Cj4+ICsKPj4gK8KgwqDCoCBwbV9ydW50 aW1lX2dldF9ub3Jlc3VtZSgmcGRldi0+ZGV2KTsKPj4gK8KgwqDCoCBwbV9ydW50aW1lX3NldF9h Y3RpdmUoJnBkZXYtPmRldik7Cj4+ICvCoMKgwqAgcG1fcnVudGltZV9lbmFibGUoJnBkZXYtPmRl dik7Cj4+ICsKPj4gK8KgwqDCoCBkZXZfc2V0X2RydmRhdGEoJnBkZXYtPmRldiwgZHJ2ZGF0YSk7 Cj4+ICvCoMKgwqAgcmV0ID0gX19jYXR1X3Byb2JlKCZwZGV2LT5kZXYsIHJlcyk7Cj4+ICvCoMKg wqAgaWYgKHJldCkgewo+PiArwqDCoMKgwqDCoMKgwqAgcG1fcnVudGltZV9wdXRfbm9pZGxlKCZw ZGV2LT5kZXYpOwo+PiArwqDCoMKgwqDCoMKgwqAgcG1fcnVudGltZV9kaXNhYmxlKCZwZGV2LT5k ZXYpOwo+PiArwqDCoMKgIH0KPj4gK8KgwqDCoCByZXR1cm4gcmV0Owo+PiArfQo+PiArCj4+ICtz dGF0aWMgaW50IGNhdHVfcGxhdGZvcm1fcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYpCj4+ICt7Cj4+ICvCoMKgwqAgX19jYXR1X3JlbW92ZSgmcGRldi0+ZGV2KTsKPj4gK8KgwqDC oCByZXR1cm4gMDsKPj4gK30KPj4gKwo+PiArI2lmZGVmIENPTkZJR19QTQo+PiArc3RhdGljIGlu dCBjYXR1X3J1bnRpbWVfc3VzcGVuZChzdHJ1Y3QgZGV2aWNlICpkZXYpCj4+ICt7Cj4+ICvCoMKg wqAgc3RydWN0IGNhdHVfZHJ2ZGF0YSAqZHJ2ZGF0YSA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ PiArCj4+ICvCoMKgwqAgaWYgKGRydmRhdGEtPnBjbGsgJiYgIUlTX0VSUl9PUl9OVUxMKGRydmRh dGEtPnBjbGspKQo+IAo+IE9ubHkgdGhlIHNlY29uZCBwYXJ0IGlzIG5lZWRlZC4gSVNfRVJSX09S X05VTEwoKSBhbHJlYWR5IGNoZWNrcyBmb3IgTlVMTC4KCkFjdHVhbGx5LCB0aGUgZmlyc3QgY2hl Y2sgaGVyZSBzaG91bGQgYmUgZm9yIHZhbGlkIGRydmRhdGEgaW5zdGVhZCwKZW5zdXJpbmcgdGhh dCBzdWJzZXF1ZW50IGRlLXJlZmVyZW5jaW5nIGZvciBkcnZkYXRhLT5wY2xrIGRvZXMgbm90CmNy YXNoLiBXaWxsIGRvIHRoaXMgcmVwbGFjZW1lbnQgZm9yIGFsbCBhZmZlY3RlZCBwYXRjaGVzLgoK PiAKPj4gK8KgwqDCoMKgwqDCoMKgIGNsa19kaXNhYmxlX3VucHJlcGFyZShkcnZkYXRhLT5wY2xr KTsKPj4gK8KgwqDCoCByZXR1cm4gMDsKPj4gK30KPj4gKwo+PiArc3RhdGljIGludCBjYXR1X3J1 bnRpbWVfcmVzdW1lKHN0cnVjdCBkZXZpY2UgKmRldikKPj4gK3sKPj4gK8KgwqDCoCBzdHJ1Y3Qg Y2F0dV9kcnZkYXRhICpkcnZkYXRhID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4+ICsKPj4gK8Kg wqDCoCBpZiAoZHJ2ZGF0YS0+cGNsayAmJiAhSVNfRVJSX09SX05VTEwoZHJ2ZGF0YS0+cGNsaykp Cj4gCj4gU2FtZSBoZXJlLgo+IAo+PiArwqDCoMKgwqDCoMKgwqAgY2xrX3ByZXBhcmVfZW5hYmxl KGRydmRhdGEtPnBjbGspOwo+PiArwqDCoMKgIHJldHVybiAwOwo+PiArfQo+PiArI2VuZGlmCj4+ ICsKPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2X3BtX29wcyBjYXR1X2Rldl9wbV9vcHMgPSB7 Cj4+ICvCoMKgwqAgU0VUX1JVTlRJTUVfUE1fT1BTKGNhdHVfcnVudGltZV9zdXNwZW5kLCBjYXR1 X3J1bnRpbWVfcmVzdW1lLCBOVUxMKQo+PiArfTsKPj4gKwo+PiArI2lmZGVmIENPTkZJR19BQ1BJ Cj4+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFjcGlfZGV2aWNlX2lkIGNhdHVfYWNwaV9pZHNbXSA9 IHsKPj4gK8KgwqDCoCB7IkFSTUhDOUNBIiwgMH0sIC8qIEFSTSBDb3JlU2lnaHQgQ0FUVSAqLwo+ PiArwqDCoMKgIHt9LAo+PiArfTsKPj4gKwo+PiArTU9EVUxFX0RFVklDRV9UQUJMRShhY3BpLCBj YXR1X2FjcGlfaWRzKTsKPj4gKyNlbmRpZgo+PiArCj4+ICtzdGF0aWMgc3RydWN0IHBsYXRmb3Jt X2RyaXZlciBjYXR1X3BsYXRmb3JtX2RyaXZlciA9IHsKPj4gK8KgwqDCoCAucHJvYmXCoMKgwqAg PSBjYXR1X3BsYXRmb3JtX3Byb2JlLAo+PiArwqDCoMKgIC5yZW1vdmXCoMKgwqAgPSBjYXR1X3Bs YXRmb3JtX3JlbW92ZSwKPj4gK8KgwqDCoCAuZHJpdmVywqDCoMKgID0gewo+PiArwqDCoMKgwqDC oMKgwqAgLm5hbWXCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gImNvcmVzaWdodC1jYXR1LXBsYXRm b3JtIiwKPj4gK8KgwqDCoMKgwqDCoMKgIC5hY3BpX21hdGNoX3RhYmxlwqDCoMKgID0gQUNQSV9Q VFIoY2F0dV9hY3BpX2lkcyksCj4+ICvCoMKgwqDCoMKgwqDCoCAuc3VwcHJlc3NfYmluZF9hdHRy c8KgwqDCoCA9IHRydWUsCj4+ICvCoMKgwqDCoMKgwqDCoCAucG3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0gJmNhdHVfZGV2X3BtX29wcywKPj4gK8KgwqDCoCB9LAo+PiArfTsKPj4gKwo+PiDCoCBz dGF0aWMgaW50IF9faW5pdCBjYXR1X2luaXQodm9pZCkKPj4gwqAgewo+PiDCoMKgwqDCoMKgIGlu dCByZXQ7Cj4+IMKgIC3CoMKgwqAgcmV0ID0gYW1iYV9kcml2ZXJfcmVnaXN0ZXIoJmNhdHVfZHJp dmVyKTsKPj4gLcKgwqDCoCBpZiAocmV0KQo+PiAtwqDCoMKgwqDCoMKgwqAgcHJfaW5mbygiRXJy b3IgcmVnaXN0ZXJpbmcgY2F0dSBkcml2ZXJcbiIpOwo+PiArwqDCoMKgIHJldCA9IGNvcmVzaWdo dF9pbml0X2RyaXZlcigiY2F0dSIsICZjYXR1X2RyaXZlciwgJmNhdHVfcGxhdGZvcm1fZHJpdmVy KTsKPj4gwqDCoMKgwqDCoCB0bWNfZXRyX3NldF9jYXR1X29wcygmZXRyX2NhdHVfYnVmX29wcyk7 Cj4+IMKgwqDCoMKgwqAgcmV0dXJuIHJldDsKPj4gwqAgfQo+PiBAQCAtNjEyLDcgKzcwNiw3IEBA IHN0YXRpYyBpbnQgX19pbml0IGNhdHVfaW5pdCh2b2lkKQo+PiDCoCBzdGF0aWMgdm9pZCBfX2V4 aXQgY2F0dV9leGl0KHZvaWQpCj4+IMKgIHsKPj4gwqDCoMKgwqDCoCB0bWNfZXRyX3JlbW92ZV9j YXR1X29wcygpOwo+PiAtwqDCoMKgIGFtYmFfZHJpdmVyX3VucmVnaXN0ZXIoJmNhdHVfZHJpdmVy KTsKPj4gK8KgwqDCoCBjb3Jlc2lnaHRfcmVtb3ZlX2RyaXZlcigmY2F0dV9kcml2ZXIsICZjYXR1 X3BsYXRmb3JtX2RyaXZlcik7Cj4+IMKgIH0KPj4gwqAgwqAgbW9kdWxlX2luaXQoY2F0dV9pbml0 KTsKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvaHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQt Y2F0dS5oIGIvZHJpdmVycy9od3RyYWNpbmcvY29yZXNpZ2h0L2NvcmVzaWdodC1jYXR1LmgKPj4g aW5kZXggNDQyZTAzNGJiZmJhLi4xNDFmZWFjMWMxNGIgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMv aHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtY2F0dS5oCj4+ICsrKyBiL2RyaXZlcnMvaHd0 cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtY2F0dS5oCj4+IEBAIC02MSw2ICs2MSw3IEBACj4+ IMKgICNkZWZpbmUgQ0FUVV9JUlFFTl9PRkbCoMKgwqDCoMKgwqDCoCAweDAKPj4gwqAgwqAgc3Ry dWN0IGNhdHVfZHJ2ZGF0YSB7Cj4+ICvCoMKgwqAgc3RydWN0IGNsayAqcGNsazsKPj4gwqDCoMKg wqDCoCB2b2lkIF9faW9tZW0gKmJhc2U7Cj4+IMKgwqDCoMKgwqAgc3RydWN0IGNvcmVzaWdodF9k ZXZpY2UgKmNzZGV2Owo+PiDCoMKgwqDCoMKgIGludCBpcnE7Cj4+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2h3dHJhY2luZy9jb3Jlc2lnaHQvY29yZXNpZ2h0LWNvcmUuYyBiL2RyaXZlcnMvaHd0cmFj aW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtY29yZS5jCj4+IGluZGV4IDlmYWJlMDBhNDBkNi4uZWRl OWIwNzIzZjk1IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2h3dHJhY2luZy9jb3Jlc2lnaHQvY29y ZXNpZ2h0LWNvcmUuYwo+PiArKysgYi9kcml2ZXJzL2h3dHJhY2luZy9jb3Jlc2lnaHQvY29yZXNp Z2h0LWNvcmUuYwo+PiBAQCAtMTgzMyw2ICsxODMzLDM1IEBAIHN0YXRpYyB2b2lkIF9fZXhpdCBj b3Jlc2lnaHRfZXhpdCh2b2lkKQo+PiDCoCBtb2R1bGVfaW5pdChjb3Jlc2lnaHRfaW5pdCk7Cj4+ IMKgIG1vZHVsZV9leGl0KGNvcmVzaWdodF9leGl0KTsKPj4gwqAgCj4gCj4gLS0tOD4tLS0KPiAK Pj4gK2ludCBjb3Jlc2lnaHRfaW5pdF9kcml2ZXIoY29uc3QgY2hhciAqZHJ2LCBzdHJ1Y3QgYW1i YV9kcml2ZXIgKmFtYmFfZHJ2LAo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0 IHBsYXRmb3JtX2RyaXZlciAqcGRldl9kcnYpCj4+ICt7Cj4+ICvCoMKgwqAgaW50IHJldDsKPj4g Kwo+PiArwqDCoMKgIHJldCA9IGFtYmFfZHJpdmVyX3JlZ2lzdGVyKGFtYmFfZHJ2KTsKPj4gK8Kg wqDCoCBpZiAocmV0KSB7Cj4+ICvCoMKgwqDCoMKgwqDCoCBwcl9lcnIoIiVzOiBlcnJvciByZWdp c3RlcmluZyBBTUJBIGRyaXZlclxuIiwgZHJ2KTsKPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiBy ZXQ7Cj4+ICvCoMKgwqAgfQo+PiArCj4+ICvCoMKgwqAgcmV0ID0gcGxhdGZvcm1fZHJpdmVyX3Jl Z2lzdGVyKHBkZXZfZHJ2KTsKPj4gK8KgwqDCoCBpZiAoIXJldCkKPj4gK8KgwqDCoMKgwqDCoMKg IHJldHVybiAwOwo+PiArCj4+ICvCoMKgwqAgcHJfZXJyKCIlczogZXJyb3IgcmVnaXN0ZXJpbmcg cGxhdGZvcm0gZHJpdmVyXG4iLCBkcnYpOwo+PiArwqDCoMKgIGFtYmFfZHJpdmVyX3VucmVnaXN0 ZXIoYW1iYV9kcnYpOwo+PiArwqDCoMKgIHJldHVybiByZXQ7Cj4+ICt9Cj4+ICtFWFBPUlRfU1lN Qk9MX0dQTChjb3Jlc2lnaHRfaW5pdF9kcml2ZXIpOwo+PiArCj4+ICt2b2lkIGNvcmVzaWdodF9y ZW1vdmVfZHJpdmVyKHN0cnVjdCBhbWJhX2RyaXZlciAqYW1iYV9kcnYsCj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyICpwZGV2X2RydikK Pj4gK3sKPj4gK8KgwqDCoCBhbWJhX2RyaXZlcl91bnJlZ2lzdGVyKGFtYmFfZHJ2KTsKPj4gK8Kg wqDCoCBwbGF0Zm9ybV9kcml2ZXJfdW5yZWdpc3RlcihwZGV2X2Rydik7Cj4+ICt9Cj4+ICtFWFBP UlRfU1lNQk9MX0dQTChjb3Jlc2lnaHRfcmVtb3ZlX2RyaXZlcik7Cj4gCj4gUGxlYXNlIGNvdWxk IHdlIHNwbGl0IHRoaXMgaW50byBhIHNlcGFyYXRlIHBhdGNoIGl0c2VsZiA/IEFsc28sIGNhbiB3 ZSBub3QgdXNlIHRoZW0gZm9yIHRoZSBvdGhlciBjb21wb25lbnRzID8gZnVubmVsLCByZXBsaWNh dG9yID8KClN1cmUsIHdpbGwgc3BsaXQgdGhlIGhlbHBlcnMgYWRkaXRpb24gYWxvbmcgd2l0aCB0 aGVpciBoZWFkZXIgY2hhbmdlcwppbnRvIGEgc2VwYXJhdGUgcGF0Y2ggYXQgdGhlIGJlZ2lubmlu ZyBvZiB0aGlzIHNlcmllcywgYW5kIHRoZW4gdXNlCnRoZW0gZm9yIGZ1bm5lbCBhbmQgcmVwbGlj YXRvciBkZXZpY2VzIGluIHN1YnNlcXVlbnQgcGF0Y2hlcy4KCj4gCj4gCj4+ICsKPj4gwqAgTU9E VUxFX0xJQ0VOU0UoIkdQTCB2MiIpOwo+PiDCoCBNT0RVTEVfQVVUSE9SKCJQcmF0aWsgUGF0ZWwg PHByYXRpa3BAY29kZWF1cm9yYS5vcmc+Iik7Cj4+IMKgIE1PRFVMRV9BVVRIT1IoIk1hdGhpZXUg UG9pcmllciA8bWF0aGlldS5wb2lyaWVyQGxpbmFyby5vcmc+Iik7Cj4+IGRpZmYgLS1naXQgYS9p bmNsdWRlL2xpbnV4L2NvcmVzaWdodC5oIGIvaW5jbHVkZS9saW51eC9jb3Jlc2lnaHQuaAo+PiBp bmRleCBhMjY5ZmZmYWY5OTEuLmJlN2ZlMzc5Mzc2MyAxMDA2NDQKPj4gLS0tIGEvaW5jbHVkZS9s aW51eC9jb3Jlc2lnaHQuaAo+PiArKysgYi9pbmNsdWRlL2xpbnV4L2NvcmVzaWdodC5oCj4+IEBA IC0xMiw2ICsxMiw4IEBACj4+IMKgICNpbmNsdWRlIDxsaW51eC9pby5oPgo+PiDCoCAjaW5jbHVk ZSA8bGludXgvcGVyZl9ldmVudC5oPgo+PiDCoCAjaW5jbHVkZSA8bGludXgvc2NoZWQuaD4KPj4g KyNpbmNsdWRlIDxsaW51eC9hbWJhL2J1cy5oPgo+PiArI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3Jt X2RldmljZS5oPgo+PiDCoCDCoCAvKiBQZXJpcGhlcmFsIGlkIHJlZ2lzdGVycyAoMHhGRDAtMHhG RUMpICovCj4+IMKgICNkZWZpbmUgQ09SRVNJR0hUX1BFUklQSElEUjTCoMKgwqAgMHhmZDAKPj4g QEAgLTU5Nyw2ICs1OTksMTEgQEAgdm9pZCBjb3Jlc2lnaHRfcmVsYXhlZF93cml0ZTY0KHN0cnVj dCBjb3Jlc2lnaHRfZGV2aWNlICpjc2RldiwKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB1NjQgdmFsLCB1MzIgb2Zmc2V0KTsKPj4gwqAgdm9pZCBjb3Jlc2lnaHRf d3JpdGU2NChzdHJ1Y3QgY29yZXNpZ2h0X2RldmljZSAqY3NkZXYsIHU2NCB2YWwsIHUzMiBvZmZz ZXQpOwo+PiDCoCAraW50IGNvcmVzaWdodF9pbml0X2RyaXZlcihjb25zdCBjaGFyICpkcnYsIHN0 cnVjdCBhbWJhX2RyaXZlciAqYW1iYV9kcnYsCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyICpwZGV2X2Rydik7Cj4+ICsKPj4gK3ZvaWQgY29yZXNp Z2h0X3JlbW92ZV9kcml2ZXIoc3RydWN0IGFtYmFfZHJpdmVyICphbWJhX2RydiwKPj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgKnBkZXZf ZHJ2KTsKPj4gwqAgI2Vsc2UKPj4gwqAgc3RhdGljIGlubGluZSBzdHJ1Y3QgY29yZXNpZ2h0X2Rl dmljZSAqCj4+IMKgIGNvcmVzaWdodF9yZWdpc3RlcihzdHJ1Y3QgY29yZXNpZ2h0X2Rlc2MgKmRl c2MpIHsgcmV0dXJuIE5VTEw7IH0KPiAKPiAKPiBTdXp1a2kKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0 CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFk ZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK