Received: by 10.213.65.68 with SMTP id h4csp433354imn; Fri, 16 Mar 2018 07:38:21 -0700 (PDT) X-Google-Smtp-Source: AG47ELu11lgkUn0QSqeMJ7eAUIkXJB0fhWcgUbE3ex73THMjhRkBfgP6C0K6qpGs3YYFu5VEVf+k X-Received: by 10.99.96.130 with SMTP id u124mr1687534pgb.252.1521211101058; Fri, 16 Mar 2018 07:38:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521211101; cv=none; d=google.com; s=arc-20160816; b=t5Oy/IMrR9LQ1CuklX/UnTQaYkw6O6RYmBYTBfezgafaeUtn5gb3badvhJZ3oAhPil AhvAxmP1Q6kBfJPXAuDML8ydkiXbgUsP3SqZaDgR6reXtsbQZyHWo6sxaH1RAQ9llgvS oAeZJyjiT3IBC0JlE1Z/PUPsQJQmez1BYTFJFJaPwJlkAsIvnrH5YUPY9YSsPMxQRp9f 3umR01forrQcv8zvE6BbJSuLWPphOHUdW9pFP/wnkKCHCuJVKtgBYuExnpEOSfewMt8V vj/w2TsKlXcpH0l2S8omP3tadi00i3WEnQZYHV6AhDYsKVmM/csGaSLWI4Av37Q9caHQ QZFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:arc-authentication-results; bh=JSZiUBJ+hE3fb5Q2ZLJ++u2ADio3tzXCGz53Z1Lk2us=; b=RQgPW1WIoJm3aFaRjzqz1JQi6Gcdfg1xh6sSx8GhXijnrIBrUAeOt7f4VlSaMu7JvZ 1oP9UlVb4uh5rYeemzrNdnpf9dBkLbVZ/2COwKERo085B0PrQn+EITxJ0SSRcpN0hoj/ FOiJHJ6fFtLRdi2B3UAZ+Jtm/eiQ0Ze+06HfIx/FWCh/YlrrSczs89NoBPjmO8vQrF8O c/+8Yx/uAdrngXPt5HlyEuxNYixewtmQfksNJNCJGbg7/mxMkKFJARzctNeYchB3/f/W gMOJMu67TbT21iWk5cthKktJ6/LKyaDX6hBjcNVKfXS7LRJ6NfcU6crtSVa5yDEYBO9T Qlig== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w9si5574305pfl.193.2018.03.16.07.38.06; Fri, 16 Mar 2018 07:38:21 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752864AbeCPOg3 (ORCPT + 99 others); Fri, 16 Mar 2018 10:36:29 -0400 Received: from mx08-00178001.pphosted.com ([91.207.212.93]:35911 "EHLO mx07-00178001.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751233AbeCPOg2 (ORCPT ); Fri, 16 Mar 2018 10:36:28 -0400 Received: from pps.filterd (m0046660.ppops.net [127.0.0.1]) by mx08-.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id w2GEY6cd022030; Fri, 16 Mar 2018 15:35:18 +0100 Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx08-00178001.pphosted.com with ESMTP id 2gq8wcb4g1-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 16 Mar 2018 15:35:18 +0100 Received: from zeta.dmz-eu.st.com (zeta.dmz-eu.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id EB9143F; Fri, 16 Mar 2018 14:35:17 +0000 (GMT) Received: from Webmail-eu.st.com (sfhdag3node3.st.com [10.75.127.9]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id B88802C05; Fri, 16 Mar 2018 14:35:17 +0000 (GMT) Received: from SFHDAG4NODE2.st.com (10.75.127.11) by SFHDAG3NODE3.st.com (10.75.127.9) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Fri, 16 Mar 2018 15:35:17 +0100 Received: from SFHDAG4NODE2.st.com ([fe80::4457:45af:aece:883f]) by SFHDAG4NODE2.st.com ([fe80::4457:45af:aece:883f%20]) with mapi id 15.00.1347.000; Fri, 16 Mar 2018 15:35:17 +0100 From: Gabriel FERNANDEZ To: Philipp Zabel , Rob Herring , Mark Rutland , Maxime Coquelin , Alexandre TORGUE CC: "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "gabriel.fernandez.st@gmail.com" , Loic PALLARDY , Benjamin GAIGNARD , Michael Turquette , "sboyd@kernel.org" Subject: Re: [PATCH v2 2/2] reset: stm32mp1: Enable stm32mp1 reset driver Thread-Topic: [PATCH v2 2/2] reset: stm32mp1: Enable stm32mp1 reset driver Thread-Index: AQHTu7G2MI13qlmdg0yaOXoGEu7t/aPSzZKAgAASQgA= Date: Fri, 16 Mar 2018 14:35:16 +0000 Message-ID: <0aa41806-22c9-c8ef-6fe4-1353cbbd680a@st.com> References: <1521045001-30788-1-git-send-email-gabriel.fernandez@st.com> <1521045001-30788-3-git-send-email-gabriel.fernandez@st.com> <1521206991.5061.5.camel@pengutronix.de> In-Reply-To: <1521206991.5061.5.camel@pengutronix.de> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.75.127.48] Content-Type: text/plain; charset="utf-8" Content-ID: <5BE38ABF8E1FF64DBEEC588A588AD7A7@st.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2018-03-16_08:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org DQpIaSBQaGlsaXBwLA0KDQpUaGFua3MgZm9yIHJldmlld2luZy4NCg0KT24gMDMvMTYvMjAxOCAw MjoyOSBQTSwgUGhpbGlwcCBaYWJlbCB3cm90ZToNCj4gSGkgR2FicmllbCwNCj4NCj4gdGhpcyBs b29rcyBtb3N0bHkgZ29vZCB0byBtZSwgYSBmZXcgcXVlc3Rpb25zIGFuZCBjb21tZW50cyBiZWxv dzoNCj4NCj4gT24gV2VkLCAyMDE4LTAzLTE0IGF0IDE3OjMwICswMTAwLCBnYWJyaWVsLmZlcm5h bmRlekBzdC5jb20gd3JvdGU6DQo+PiBGcm9tOiBHYWJyaWVsIEZlcm5hbmRleiA8Z2FicmllbC5m ZXJuYW5kZXpAc3QuY29tPg0KPj4NCj4+IHN0bTMybXAxIFJDQyBJUCAxIGhhcyBhIHJlc2V0IFNF VCByZWdpc3RlciBhbmQgYSByZXNldCBDTEVBUiByZWdpc3Rlci4NCj4+DQo+PiBXcml0aW5nICcw JyBvbiByZXNldCBTRVQgcmVnaXN0ZXIgaGFzIG5vIGVmZmVjdA0KPj4gV3JpdGluZyAnMScgb24g cmVzZXQgU0VUIHJlZ2lzdGVyDQo+PiAJYWN0aXZhdGVzIHRoZSByZXNldCBvZiB0aGUgY29ycmVz cG9uZGluZyBwZXJpcGhlcmFsDQo+Pg0KPj4gV3JpdGluZyAnMCcgb24gcmVzZXQgQ0xFQVIgcmVn aXN0ZXIJaGFzIG5vIGVmZmVjdA0KPj4gV3JpdGluZyAnMScgb24gcmVzZXQgQ0xFQVIgcmVnaXN0 ZXINCj4+IAlyZWxlYXNlcyB0aGUgcmVzZXQgb2YgdGhlIGNvcnJlc3BvbmRpbmcgcGVyaXBoZXJh bA0KPj4NCj4+IFNlZSBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvY2xvY2svc3Qs c3RtMzJtcDEtcmNjLnR4dA0KPj4NCj4+IFNpZ25lZC1vZmYtYnk6IEdhYnJpZWwgRmVybmFuZGV6 IDxnYWJyaWVsLmZlcm5hbmRlekBzdC5jb20+DQo+PiAtLS0NCj4+ICAgZHJpdmVycy9yZXNldC9L Y29uZmlnICAgICAgICAgIHwgICA2ICsrDQo+PiAgIGRyaXZlcnMvcmVzZXQvTWFrZWZpbGUgICAg ICAgICB8ICAgMSArDQo+PiAgIGRyaXZlcnMvcmVzZXQvcmVzZXQtc3RtMzJtcDEuYyB8IDEyMiAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPj4gICAzIGZpbGVzIGNo YW5nZWQsIDEyOSBpbnNlcnRpb25zKCspDQo+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJz L3Jlc2V0L3Jlc2V0LXN0bTMybXAxLmMNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9yZXNl dC9LY29uZmlnIGIvZHJpdmVycy9yZXNldC9LY29uZmlnDQo+PiBpbmRleCAxZWZiYzZjLi5jMGIy OTJiIDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy9yZXNldC9LY29uZmlnDQo+PiArKysgYi9kcml2 ZXJzL3Jlc2V0L0tjb25maWcNCj4+IEBAIC05Nyw2ICs5NywxMiBAQCBjb25maWcgUkVTRVRfU0lN UExFDQo+PiAgIAkgICAtIEFsbHdpbm5lciBTb0NzDQo+PiAgIAkgICAtIFpURSdzIHp4Mjk2NyBm YW1pbHkNCj4+ICAgDQo+PiArY29uZmlnIFJFU0VUX1NUTTMyTVAxNTcNCj4+ICsJYm9vbCAiU1RN MzJNUDE1NyBSZXNldCBEcml2ZXIiIGlmIENPTVBJTEVfVEVTVA0KPj4gKwlkZWZhdWx0IE1BQ0hf U1RNMzJNUDE1Nw0KPj4gKwloZWxwDQo+PiArCSAgVGhpcyBlbmFibGVzIHRoZSBSQ0MgcmVzZXQg Y29udHJvbGxlciBkcml2ZXIgZm9yIFNUTTMyIE1QVXMuDQo+PiArDQo+PiAgIGNvbmZpZyBSRVNF VF9TVU5YSQ0KPj4gICAJYm9vbCAiQWxsd2lubmVyIFNvQ3MgUmVzZXQgRHJpdmVyIiBpZiBDT01Q SUxFX1RFU1QgJiYgIUFSQ0hfU1VOWEkNCj4+ICAgCWRlZmF1bHQgQVJDSF9TVU5YSQ0KPj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvcmVzZXQvTWFrZWZpbGUgYi9kcml2ZXJzL3Jlc2V0L01ha2VmaWxl DQo+PiBpbmRleCAxMzJjMjRmLi5jMTI2MWRjIDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy9yZXNl dC9NYWtlZmlsZQ0KPj4gKysrIGIvZHJpdmVycy9yZXNldC9NYWtlZmlsZQ0KPj4gQEAgLTE1LDYg KzE1LDcgQEAgb2JqLSQoQ09ORklHX1JFU0VUX01FU09OKSArPSByZXNldC1tZXNvbi5vDQo+PiAg IG9iai0kKENPTkZJR19SRVNFVF9PWE5BUykgKz0gcmVzZXQtb3huYXMubw0KPj4gICBvYmotJChD T05GSUdfUkVTRVRfUElTVEFDSElPKSArPSByZXNldC1waXN0YWNoaW8ubw0KPj4gICBvYmotJChD T05GSUdfUkVTRVRfU0lNUExFKSArPSByZXNldC1zaW1wbGUubw0KPj4gK29iai0kKENPTkZJR19S RVNFVF9TVE0zMk1QMTU3KSArPSByZXNldC1zdG0zMm1wMS5vDQo+PiAgIG9iai0kKENPTkZJR19S RVNFVF9TVU5YSSkgKz0gcmVzZXQtc3VueGkubw0KPj4gICBvYmotJChDT05GSUdfUkVTRVRfVElf U0NJKSArPSByZXNldC10aS1zY2kubw0KPj4gICBvYmotJChDT05GSUdfUkVTRVRfVElfU1lTQ09O KSArPSByZXNldC10aS1zeXNjb24ubw0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcmVzZXQvcmVz ZXQtc3RtMzJtcDEuYyBiL2RyaXZlcnMvcmVzZXQvcmVzZXQtc3RtMzJtcDEuYw0KPj4gbmV3IGZp bGUgbW9kZSAxMDA2NDQNCj4+IGluZGV4IDAwMDAwMDAuLjVlMjUzODgNCj4+IC0tLSAvZGV2L251 bGwNCj4+ICsrKyBiL2RyaXZlcnMvcmVzZXQvcmVzZXQtc3RtMzJtcDEuYw0KPj4gQEAgLTAsMCAr MSwxMjIgQEANCj4+ICsvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMA0KPj4gKy8q DQo+PiArICogQ29weXJpZ2h0IChDKSBTVE1pY3JvZWxlY3Ryb25pY3MgMjAxOCAtIEFsbCBSaWdo dHMgUmVzZXJ2ZWQNCj4+ICsgKiBBdXRob3I6IEdhYnJpZWwgRmVybmFuZGV6IDxnYWJyaWVsLmZl cm5hbmRlekBzdC5jb20+IGZvciBTVE1pY3JvZWxlY3Ryb25pY3MuDQo+PiArICovDQo+PiArDQo+ PiArI2luY2x1ZGUgPGxpbnV4L2FybS1zbWNjYy5oPg0KPiBUaGlzIGRvZXMgbm90IHNlZW0gdG8g YmUgbmVjZXNzYXJ5Lg0KcmlnaHQNCj4+ICsjaW5jbHVkZSA8bGludXgvZGV2aWNlLmg+DQo+PiAr I2luY2x1ZGUgPGxpbnV4L2Vyci5oPg0KPj4gKyNpbmNsdWRlIDxsaW51eC9vZi5oPg0KPj4gKyNp bmNsdWRlIDxsaW51eC9vZl9kZXZpY2UuaD4NCj4gVGhpcyBkb2VzIG5vdCBzZWVtIHRvIGJlIG5l Y2Vzc2FyeSBlaXRoZXIuDQpvaw0KPj4gKyNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kZXZpY2Uu aD4NCj4+ICsjaW5jbHVkZSA8bGludXgvcmVzZXQtY29udHJvbGxlci5oPg0KPj4gKw0KPj4gKyNk ZWZpbmUgQ0xSX09GRlNFVCAweDQNCj4+ICsNCj4+ICtzdHJ1Y3Qgc3RtMzJfcmVzZXRfZGF0YSB7 DQo+PiArCXN0cnVjdCByZXNldF9jb250cm9sbGVyX2RldglyY2RldjsNCj4+ICsJdm9pZCBfX2lv bWVtCQkJKm1lbWJhc2U7DQo+PiArfTsNCj4+ICsNCj4+ICtzdGF0aWMgaW5saW5lIHN0cnVjdCBz dG0zMl9yZXNldF9kYXRhICoNCj4+ICt0b19zdG0zMl9yZXNldF9kYXRhKHN0cnVjdCByZXNldF9j b250cm9sbGVyX2RldiAqcmNkZXYpDQo+PiArew0KPj4gKwlyZXR1cm4gY29udGFpbmVyX29mKHJj ZGV2LCBzdHJ1Y3Qgc3RtMzJfcmVzZXRfZGF0YSwgcmNkZXYpOw0KPj4gK30NCj4+ICsNCj4+ICtz dGF0aWMgaW50IHN0bTMyX3Jlc2V0X3VwZGF0ZShzdHJ1Y3QgcmVzZXRfY29udHJvbGxlcl9kZXYg KnJjZGV2LA0KPj4gKwkJCSAgICAgIHVuc2lnbmVkIGxvbmcgaWQsIGJvb2wgYXNzZXJ0KQ0KPj4g K3sNCj4+ICsJc3RydWN0IHN0bTMyX3Jlc2V0X2RhdGEgKmRhdGEgPSB0b19zdG0zMl9yZXNldF9k YXRhKHJjZGV2KTsNCj4+ICsJaW50IHJlZ193aWR0aCA9IHNpemVvZih1MzIpOw0KPj4gKwlpbnQg YmFuayA9IGlkIC8gKHJlZ193aWR0aCAqIEJJVFNfUEVSX0JZVEUpOw0KPj4gKwlpbnQgb2Zmc2V0 ID0gaWQgJSAocmVnX3dpZHRoICogQklUU19QRVJfQllURSk7DQo+PiArCXZvaWQgX19pb21lbSAq YWRkcjsNCj4+ICsNCj4+ICsJYWRkciA9IGRhdGEtPm1lbWJhc2UgKyAoYmFuayAqIHJlZ193aWR0 aCk7DQo+PiArCWlmICghYXNzZXJ0KQ0KPj4gKwkJYWRkciArPSBDTFJfT0ZGU0VUOw0KPj4gKw0K Pj4gKwl3cml0ZWwoQklUKG9mZnNldCksIGFkZHIpOw0KPj4gKw0KPj4gKwlyZXR1cm4gMDsNCj4+ ICt9DQo+PiArDQo+PiArc3RhdGljIGludCBzdG0zMl9yZXNldF9hc3NlcnQoc3RydWN0IHJlc2V0 X2NvbnRyb2xsZXJfZGV2ICpyY2RldiwNCj4+ICsJCQkgICAgICB1bnNpZ25lZCBsb25nIGlkKQ0K Pj4gK3sNCj4+ICsJcmV0dXJuIHN0bTMyX3Jlc2V0X3VwZGF0ZShyY2RldiwgaWQsIHRydWUpOw0K Pj4gK30NCj4+ICsNCj4+ICtzdGF0aWMgaW50IHN0bTMyX3Jlc2V0X2RlYXNzZXJ0KHN0cnVjdCBy ZXNldF9jb250cm9sbGVyX2RldiAqcmNkZXYsDQo+PiArCQkJCXVuc2lnbmVkIGxvbmcgaWQpDQo+ PiArew0KPj4gKwlyZXR1cm4gc3RtMzJfcmVzZXRfdXBkYXRlKHJjZGV2LCBpZCwgZmFsc2UpOw0K Pj4gK30NCj4+ICsNCj4+ICtzdGF0aWMgaW50IHN0bTMyX3Jlc2V0X3N0YXR1cyhzdHJ1Y3QgcmVz ZXRfY29udHJvbGxlcl9kZXYgKnJjZGV2LA0KPj4gKwkJCSAgICAgIHVuc2lnbmVkIGxvbmcgaWQp DQo+PiArew0KPj4gKwlzdHJ1Y3Qgc3RtMzJfcmVzZXRfZGF0YSAqZGF0YSA9IHRvX3N0bTMyX3Jl c2V0X2RhdGEocmNkZXYpOw0KPj4gKwlpbnQgcmVnX3dpZHRoID0gc2l6ZW9mKHUzMik7DQo+PiAr CWludCBiYW5rID0gaWQgLyAocmVnX3dpZHRoICogQklUU19QRVJfQllURSk7DQo+PiArCWludCBv ZmZzZXQgPSBpZCAlIChyZWdfd2lkdGggKiBCSVRTX1BFUl9CWVRFKTsNCj4+ICsJdTMyIHJlZzsN Cj4+ICsNCj4+ICsJcmVnID0gcmVhZGwoZGF0YS0+bWVtYmFzZSArIChiYW5rICogcmVnX3dpZHRo KSk7DQo+PiArDQo+PiArCXJldHVybiAhKHJlZyAmIEJJVChvZmZzZXQpKTsNCj4+ICt9DQo+IFNv IHRoZSBTRVQgcmVnaXN0ZXIgY2FuIGJlIHJlYWQgYmFjayBhbmQgcmV0dXJucyAwIGZvciByZXNl dCBsaW5lcyB0aGF0DQo+IGFyZSBjdXJyZW50bHkgYXNzZXJ0ZWQgYW5kIHJldHVybnMgMSBmb3Ig cmVzZXQgbGluZXMgdGhhdCBhcmUgY3VycmVudGx5DQo+IGRlYXNzZXJ0ZWQ/DQp5ZXMgeW91IGhh dmUgc3BvdHRlZCBhIGVycm9yLCBpIHdpbGwgcmVwbGFjZSBieSdyZXR1cm4gISEocmVnICYgDQpC SVQob2Zmc2V0KSk7Jw0KPj4gKw0KPj4gK2NvbnN0IHN0cnVjdCByZXNldF9jb250cm9sX29wcyBz dG0zMl9yZXNldF9vcHMgPSB7DQo+PiArCS5hc3NlcnQJCT0gc3RtMzJfcmVzZXRfYXNzZXJ0LA0K Pj4gKwkuZGVhc3NlcnQJPSBzdG0zMl9yZXNldF9kZWFzc2VydCwNCj4+ICsJLnN0YXR1cwkJPSBz dG0zMl9yZXNldF9zdGF0dXMsDQo+PiArfTsNCj4+ICsNCj4+ICtzdGF0aWMgY29uc3Qgc3RydWN0 IG9mX2RldmljZV9pZCBzdG0zMl9yZXNldF9kdF9pZHNbXSA9IHsNCj4+ICsJeyAuY29tcGF0aWJs ZSA9ICJzdCxzdG0zMm1wMS1yY2MifSwNCj4+ICsJeyAvKiBzZW50aW5lbCAqLyB9LA0KPj4gK307 DQo+ICBGcm9tIHRoZSBEVCBiaW5kaW5ncyBpdCBsb29rcyBsaWtlIHRoZSBjbG9jayBhbmQgcmVz ZXQgZHJpdmVycyBhcmUNCj4gc2hhcmluZyB0aGUgc2FtZSBub2RlLiBJcyB0aGVyZSBqdXN0IG5v IGNsb2NrIHBsYXRmb3JtX2RyaXZlciBhdCBhbGw/DQp0aGVyZSBpcyBvbmUgaGFyZHdhcmUgYmxv Y2sgdGhhdCBpcyB1c2VkIGZvciBjbG9jaywgcmVzZXQgYW5kIHBvd2VyLCANCnRoZXkgc2hhcmUg dGhlIHNhbWUgbm9kZSBidXQgZWFjaCBoYXZlIGl0IG93biBwbGF0Zm9ybV9kcml2ZXINCg0KPj4g Kw0KPj4gK3N0YXRpYyBpbnQgc3RtMzJfcmVzZXRfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldikNCj4+ICt7DQo+PiArCXN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZGV2LT5kZXY7DQo+ PiArCXN0cnVjdCBzdG0zMl9yZXNldF9kYXRhICpkYXRhOw0KPj4gKwl2b2lkIF9faW9tZW0gKm1l bWJhc2U7DQo+PiArCXN0cnVjdCByZXNvdXJjZSAqcmVzOw0KPj4gKw0KPj4gKwlkYXRhID0gZGV2 bV9remFsbG9jKGRldiwgc2l6ZW9mKCpkYXRhKSwgR0ZQX0tFUk5FTCk7DQo+PiArCWlmICghZGF0 YSkNCj4+ICsJCXJldHVybiAtRU5PTUVNOw0KPj4gKw0KPj4gKwlyZXMgPSBwbGF0Zm9ybV9nZXRf cmVzb3VyY2UocGRldiwgSU9SRVNPVVJDRV9NRU0sIDApOw0KPj4gKwltZW1iYXNlID0gZGV2bV9p b3JlbWFwX3Jlc291cmNlKGRldiwgcmVzKTsNCj4+ICsJaWYgKElTX0VSUihtZW1iYXNlKSkNCj4+ ICsJCXJldHVybiBQVFJfRVJSKG1lbWJhc2UpOw0KPj4gKw0KPj4gKwlkYXRhLT5tZW1iYXNlID0g bWVtYmFzZTsNCj4+ICsJZGF0YS0+cmNkZXYub3duZXIgPSBUSElTX01PRFVMRTsNCj4+ICsJZGF0 YS0+cmNkZXYubnJfcmVzZXRzID0gcmVzb3VyY2Vfc2l6ZShyZXMpICogQklUU19QRVJfQllURTsN Cj4+ICsJZGF0YS0+cmNkZXYub3BzID0gJnN0bTMyX3Jlc2V0X29wczsNCj4+ICsJZGF0YS0+cmNk ZXYub2Zfbm9kZSA9IGRldi0+b2Zfbm9kZTsNCj4+ICsNCj4+ICsJcmV0dXJuIGRldm1fcmVzZXRf Y29udHJvbGxlcl9yZWdpc3RlcihkZXYsICZkYXRhLT5yY2Rldik7DQo+PiArfQ0KPj4gKw0KPj4g K3N0YXRpYyBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyIHN0bTMyX3Jlc2V0X2RyaXZlciA9IHsNCj4+ ICsJLnByb2JlCT0gc3RtMzJfcmVzZXRfcHJvYmUsDQo+PiArCS5kcml2ZXIgPSB7DQo+PiArCQku bmFtZQkJPSAic3RtMzJtcDEtcmVzZXQiLA0KPj4gKwkJLm9mX21hdGNoX3RhYmxlCT0gc3RtMzJf cmVzZXRfZHRfaWRzLA0KPj4gKwl9LA0KPj4gK307DQo+PiArDQo+PiArc3RhdGljIGludCBfX2lu aXQgc3RtMzJfcmVzZXRfaW5pdCh2b2lkKQ0KPj4gK3sNCj4+ICsJcmV0dXJuIHBsYXRmb3JtX2Ry aXZlcl9yZWdpc3Rlcigmc3RtMzJfcmVzZXRfZHJpdmVyKTsNCj4+ICt9DQo+PiArDQo+PiArcG9z dGNvcmVfaW5pdGNhbGwoc3RtMzJfcmVzZXRfaW5pdCk7DQo+IElzbid0IGJ1aWx0aW5fcGxhdGZv cm1fZHJpdmVyIGVhcmx5IGVub3VnaD8NCm9rDQoNCkJlc3QgUmVnYXJkcw0KDQpHYWJyaWVsDQoN Cj4NCj4gcmVnYXJkcw0KPiBQaGlsaXBwDQo=