Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp5896750ybv; Wed, 12 Feb 2020 02:14:37 -0800 (PST) X-Google-Smtp-Source: APXvYqwVpruhiIouV311w1JuFlU02z1xsywpYfEczT05peEn31hck74xBkb54q396U6mnd3KJSCZ X-Received: by 2002:aca:dc8b:: with SMTP id t133mr5794562oig.98.1581502477025; Wed, 12 Feb 2020 02:14:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581502477; cv=none; d=google.com; s=arc-20160816; b=WR90iGs4d1ScaTH/8F92EFzeoUX89TPwNIlrJqRjJI2pvdws8yZxFZzJlvaTjbDaaJ 5nrIbCjTtIp1+40u7KB6JpIGyE4Oa5fV83eKD7O6EdpgyHoJeYtFi59dqm5we3aJGzuC knSwdi3Y9DF3OwsnPn3ZTG6vV5dmznxDNGhA2t4qzEOKYqfBcmAIOwPEEF5hy4Ws078N n8PjatbPXCIx3pqSn0B8fNra5WgFhKbwwD1Qir2G8WBkrErcNHigAHFTjmW1Cctlghak J2X4NqhS9BtMC/fI53avzMBs5BY5Q31FTGqTMK6SH+wEGt4AJlCWbqlSn2FNvkO5v6eW tm0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :dkim-signature; bh=D/mpejxy7PKri91GVOJb+5nq2uEa8s34hdyJ8J5+Wtw=; b=zAiUMv0i30ck+7k+lDPEKzx8TQXycRXVnvgn6m8aiNc5LHLL7t9PqG7XMzxroKdqK8 A8K5tmlg6gFc+vyuqmPqSolvkIQzOUvpAShDFoFyOSbKtK2PGZ/N7ODV7mgjrmsyraFw sLdvKxUcToTX3O5QRnvzdJGnX/PmZPuhjBjnf/VTdvlxljdq4W6/kG9US5famXJMrybf 39Df31oxGf9HKIA5Wa3J5IhrTcUBthjp4Tti7tOPrrmI8buCA1id59yiuEaAQwyk5+t1 BNzFVz7AOSg0mTPPGYImC0go6mzJ4BCnRlurVHI2u1ahajutYe4HIR+/eDQdXhp7eeeX IaWg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b="GUw/v7eW"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s5si3452829otd.141.2020.02.12.02.14.24; Wed, 12 Feb 2020 02:14:37 -0800 (PST) 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; dkim=pass header.i=@mediatek.com header.s=dk header.b="GUw/v7eW"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726146AbgBLKOE (ORCPT + 99 others); Wed, 12 Feb 2020 05:14:04 -0500 Received: from mailgw01.mediatek.com ([210.61.82.183]:43010 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1725710AbgBLKOE (ORCPT ); Wed, 12 Feb 2020 05:14:04 -0500 X-UUID: 5c20761d031348018661c5204b72d460-20200212 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=D/mpejxy7PKri91GVOJb+5nq2uEa8s34hdyJ8J5+Wtw=; b=GUw/v7eWJ1xsl3lfxYOngnnhQxVWaQK7a+b0eYLnEogPgH68DAAlVLzYExWHHTH0Q5dPrmG2l6AEFw1b8XTkt0OmAbd5m62wFfAizdVXaWF2LLBM3jCxmB9D/PNsAgj4x3mREL82w2YhbhIyaU9+Z/MImuL6A8XEN0c20stOp/A=; X-UUID: 5c20761d031348018661c5204b72d460-20200212 Received: from mtkcas07.mediatek.inc [(172.21.101.84)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 249874273; Wed, 12 Feb 2020 18:13:55 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs02n2.mediatek.inc (172.21.101.101) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 12 Feb 2020 18:11:31 +0800 Received: from [172.21.77.33] (172.21.77.33) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Wed, 12 Feb 2020 18:12:06 +0800 Message-ID: <1581502433.13475.3.camel@mtkswgap22> Subject: Re: [PATCH v1 1/1] pinctrl: make MediaTek MT6765 pinctrl driver compatible to kernel module From: Light Hsieh To: Matthias Brugger CC: , , , , , Date: Wed, 12 Feb 2020 18:13:53 +0800 In-Reply-To: <158e61b3-8f37-9467-081f-f266f71258ce@gmail.com> References: <1581485407-32393-1-git-send-email-light.hsieh@mediatek.com> <158e61b3-8f37-9467-081f-f266f71258ce@gmail.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-TM-SNTS-SMTP: 53255D585442C5831CA0D53E62166254D273853281CEBDACD86B9D598C2372F22000:8 X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org RGVhciBNYXR0aGlhczoNCg0KR29vZ2xlIGFyZSB0cnlpbmcgdG8gYnVpbGQgbW9zdCBwbGF0Zm9y bSBkcml2ZXIgYXMga2VybmVsIG1vZHVsZSBmb3INCnRoZWlyIGZ1dHVyZSBBbmRyb2lkIGtlcm5l bCBwbGFuLg0KDQpUaGlzIGNoYW5nZSBpcyBwcmVwYXJpbmcgZm9yIHRoYXQgcHVycG9zZS4NCg0K TGlnaHQNCg0KT24gV2VkLCAyMDIwLTAyLTEyIGF0IDExOjA3ICswMTAwLCBNYXR0aGlhcyBCcnVn Z2VyIHdyb3RlOg0KPiANCj4gT24gMTIvMDIvMjAyMCAwNjozMCwgbGlnaHQuaHNpZWhAbWVkaWF0 ZWsuY29tIHdyb3RlOg0KPiA+IEZyb206IExpZ2h0IEhzaWVoIDxsaWdodC5oc2llaEBtZWRpYXRl ay5jb20+DQo+ID4gDQo+ID4gVG8gbWFrZSBNZWRpYVRlayBNVDY3NjUgcGluY3RybCBkcml2ZXIg YW5kIHJlbGF0ZWQgTWVkaWFUZWsgcGluY3RybCBkcml2ZXINCj4gPiBmaWxlcyBiZSBib3RoIGNv bXBhdGlibGUgZm9yIGJ1aWxkaW5nIGtlcm5lbCBtb2R1bGUgb3IgYnVpbHQtaW4sIHRoZQ0KPiA+ IGZvbGxvd2luZyBtb2RpZmljYXRpb24gYXJlIHBlcmZvcm1lZDoNCj4gPiANCj4gDQo+IEZyb20g d2hhdCBjYW4gSSBzZWUgeW91IGp1c3Qgd2FudCB0byBwcm92aWRlIGEgcG9zc2liaWxpdHkgdG8g YnVpbGQgbXQ2NzY1IGFzIGENCj4gbW9kdWxlLiBTbyB0aGUgcXVlc3Rpb24gaXMsIHdoeSB5b3Ug d2FudCB0aGF0Pw0KPiANCj4gUmVnYXJkcywNCj4gTWF0dGhpYXMNCj4gDQo+ID4gMS4gZHJpdmVy cy9waW5jdHJsL21lZGlhdGVrL3BpbmN0cmwtbXRrLWNvbW1vbi12Mi5jOiBleHBvcnQgc29tZSBm dW5jdGlvbnMNCj4gPiANCj4gPiAyLiBkcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1w YXJpcy5jOiBleHBvcnQgc29tZSBmdW5jdGlvbnMNCj4gPiANCj4gPiAzLiBkcml2ZXJzL3BpbmN0 cmwvbWVkaWF0ZWsvbXRrLWVpbnQuYzogZXhwb3J0IHNvbWUgZnVuY3Rpb25zDQo+ID4gDQo+ID4g NC4gZHJpdmVycy9waW5jdHJsL3BpbmNvbmYtZ2VuZXJpYy5jOiBleHBvcnQNCj4gPiAgICAgICAg cGluY29uZl9nZW5lcmljX3BhcnNlX2R0X2NvbmZpZygpIGZvciB1c2FnZSBieSBwaW5jdHJsLXBh cmlzLmMNCj4gPiAgICAgICAgYnVpbHQgYXMga2VybmVsIG1vZHVsZS4NCj4gPiANCj4gPiA1LiBk cml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvS2NvbmZpZzoNCj4gPiA1LjEgUElOQ1RSTF9NVDY3NjU6 IGNoYW5nZSBmcm9tIGJvb2wgdG8gdHJpc3RhdGUuIEl0IGlzIHNwZWNpZmllZCBpbg0KPiA+ICAg ICAgICAga2VybmVsIGNvbmZpZyBmaWxlLg0KPiA+IDUuMiBQSU5DVFJMX01US19QQVJJUzogY2hh bmdlIGZyb20gYm9vbCB0byB0cmlzdGF0ZSBhbmQgc2VsZWN0DQo+ID4gICAgICAgICBQSU5DVFJM X01US19WMi4NCj4gPiAgICAgICAqIFBJTkNUUkxfTVRLX1BBUklTIHdpbGwgYmUgeSBpZiBhbnkg UElOQ1RSTF9NVFhYWFggc2VsZWN0aW5nDQo+ID4gICAgICAgICBQSU5DVFJMX01US19QQVJJUyBp cyB5Lg0KPiA+ICAgICAgICogUElOQ1RSTF9NVEtfUEFSSVMgd2lsbCBiZSBuIGlmIGFsbCBQSU5D VFJMX01UWFhYWCBzZWxlY3RpbmcNCj4gPiAgICAgICAgIFBJTkNUUkxfTVRLX1BBUklTIGFyZSBu Lg0KPiA+ICAgICAgICogUElOQ1RSTF9NVEtfUEFSSVMgd2lsbCBiZSBtIGlmIGFsbCBQSU5DVFJM X01UWFhYWCBzZWxlY3RpbmcNCj4gPiAgICAgICAgIFBJTkNUUkxfTVRLX1BBUklTIGFyZSBtLg0K PiA+IDUuMyBQSU5DVFJMX01US19NT09SRTogc2VsZWN0IEVJTlRfTVRLIGFuZCBQSU5DVFJMX01U S19WMi4NCj4gPiA1LjMgUElOQ1RSTF9NVEtfVjI6IGFkZCB0aGlzIHRyaXN0YXRlIGNvbmZpZyB3 aGljaCBkZXBlbmRzIG9uDQo+ID4gICAgICAgICBQSU5DVFJMX01US19QQVJJUyBhbmQgUElOQ1RS TF9NVEtfTU9PUkUuDQo+ID4gICAgICAgKiBQSU5DVFJMX01US19WMiB3aWxsIGJlIHkgaWYgZWl0 aGVyIFBJTkNUUkxfTVRLX1BBUklTIG9yDQo+ID4gICAgICAgICBQSU5DVFJMX01US19NT09SRSBp cyB5Lg0KPiA+ICAgICAgICogUElOQ1RSTF9NVEtfVjIgd2lsbCBiZSBuIGlmIGJvdGggUElOQ1RS TF9NVEtfUEFSSVMgYW5kDQo+ID4gICAgICAgICBQSU5DVFJMX01US19NT09SRSBhcmUgbi4NCj4g PiAgICAgICAqIFBJTkNUUkxfTVRLX1YyIHdpbGwgYmUgbSBpZiBib3RoIFBJTkNUUkxfTVRLX1BB UklTIGlzIG0gYW5kDQo+ID4gICAgICAgICBQSU5DVFJMX01US19NT09SRSBpcyBuLg0KPiA+IDUu NCBFSU5UX01USzogY2hhbmdlIGZyb20gYm9vbCB0byB0cmlzdGF0ZSBhbmQgYWRkIHJ1bGUgZm9y IGRlZmF1bHQuDQo+ID4gICAgICAgKiBGaXJzdCBydWxlOiBkZXRlcm1pbmUgaWYgRUlOVF9NVEsg aXMgeSBvciBuIGFjY29yZGluZyB0bw0KPiA+ICAgICAgICAgc2VsZWN0aW9uIG9mIFBJTkNUUkxf TVRLIG9yIFBJTkNUUkxfTVRLX01PUkUuDQo+ID4gICAgICAgKiBTZWNvbmQgcnVsZTogZGV0ZXJt aW5lIGlmIEVJTlRfTVRLIGlzIHksIG0sIG9yIG4gYWNjb3JkaW5nIHRvDQo+ID4gICAgICAgICBz ZWxlY3Rpb24gb2YgUElOQ1RSTF9NVEtfUEFSSVMuDQo+ID4gDQo+ID4gNi4gZHJpdmVycy9waW5j dHJsL21lZGlhdGVrL01ha2VmaWxlOiBVc2UgUElOQ1RSTF9NVEtfVjIgdG8gZGV0ZXJtaW5lDQo+ ID4gICAgICAgICBpZiBwaW5jdHJsLW10ay1jb21tb24tdjIuYyBpcyBidWlsdCBhcyBrZXJuZWwg bW9kdWxlIG9yDQo+ID4gICAgICAgICBidWlsdC1pbi4NCj4gPiANCj4gPiBTaWduZWQtb2ZmLWJ5 OiBMaWdodCBIc2llaCA8bGlnaHQuaHNpZWhAbWVkaWF0ZWsuY29tPg0KPiA+IC0tLQ0KPiA+ICBk cml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvS2NvbmZpZyAgICAgICAgICAgICAgICAgfCAxNyArKysr KysrKysrKysrLS0tLQ0KPiA+ICBkcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvTWFrZWZpbGUgICAg ICAgICAgICAgICAgfCAgNSArKystLQ0KPiA+ICBkcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvbXRr LWVpbnQuYyAgICAgICAgICAgICAgfCAgOSArKysrKysrKysNCj4gPiAgZHJpdmVycy9waW5jdHJs L21lZGlhdGVrL3BpbmN0cmwtbXQ2NzY1LmMgICAgICAgIHwgIDQgKysrKw0KPiA+ICBkcml2ZXJz L3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdGstY29tbW9uLXYyLmMgfCAyNCArKysrKysrKysr KysrKysrKysrKysrKysNCj4gPiAgZHJpdmVycy9waW5jdHJsL21lZGlhdGVrL3BpbmN0cmwtcGFy aXMuYyAgICAgICAgIHwgIDUgKysrKysNCj4gPiAgZHJpdmVycy9waW5jdHJsL3BpbmNvbmYtZ2Vu ZXJpYy5jICAgICAgICAgICAgICAgIHwgIDEgKw0KPiA+ICA3IGZpbGVzIGNoYW5nZWQsIDU5IGlu c2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pDQo+ID4gDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvcGluY3RybC9tZWRpYXRlay9LY29uZmlnIGIvZHJpdmVycy9waW5jdHJsL21lZGlhdGVrL0tj b25maWcNCj4gPiBpbmRleCA3MDFmOWFmLi5kNDhjMzEzIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZl cnMvcGluY3RybC9tZWRpYXRlay9LY29uZmlnDQo+ID4gKysrIGIvZHJpdmVycy9waW5jdHJsL21l ZGlhdGVrL0tjb25maWcNCj4gPiBAQCAtMywxMCArMywxMiBAQCBtZW51ICJNZWRpYVRlayBwaW5j dHJsIGRyaXZlcnMiDQo+ID4gIAlkZXBlbmRzIG9uIEFSQ0hfTUVESUFURUsgfHwgQ09NUElMRV9U RVNUDQo+ID4gIA0KPiA+ICBjb25maWcgRUlOVF9NVEsNCj4gPiAtCWJvb2wgIk1lZGlhVGVrIEV4 dGVybmFsIEludGVycnVwdCBTdXBwb3J0Ig0KPiA+ICsJdHJpc3RhdGUgIk1lZGlhVGVrIEV4dGVy bmFsIEludGVycnVwdCBTdXBwb3J0Ig0KPiA+ICAJZGVwZW5kcyBvbiBQSU5DVFJMX01USyB8fCBQ SU5DVFJMX01US19NT09SRSB8fCBQSU5DVFJMX01US19QQVJJUyB8fCBDT01QSUxFX1RFU1QNCj4g PiAgCXNlbGVjdCBHUElPTElCDQo+ID4gIAlzZWxlY3QgSVJRX0RPTUFJTg0KPiA+ICsJZGVmYXVs dCB5IGlmIFBJTkNUUkxfTVRLIHx8IFBJTkNUUkxfTVRLX01PT1JFDQo+ID4gKwlkZWZhdWx0IFBJ TkNUUkxfTVRLX1BBUklTDQo+ID4gIA0KPiA+ICBjb25maWcgUElOQ1RSTF9NVEsNCj4gPiAgCWJv b2wNCj4gPiBAQCAtMTcsMjMgKzE5LDMwIEBAIGNvbmZpZyBQSU5DVFJMX01USw0KPiA+ICAJc2Vs ZWN0IEVJTlRfTVRLDQo+ID4gIAlzZWxlY3QgT0ZfR1BJTw0KPiA+ICANCj4gPiArY29uZmlnIFBJ TkNUUkxfTVRLX1YyDQo+ID4gKwl0cmlzdGF0ZQ0KPiA+ICsJZGVwZW5kcyBvbiBQSU5DVFJMX01U S19NT09SRSB8fCBQSU5DVFJMX01US19QQVJJUw0KPiA+ICsNCj4gPiAgY29uZmlnIFBJTkNUUkxf TVRLX01PT1JFDQo+ID4gLQlib29sDQo+ID4gKwl0cmlzdGF0ZQ0KPiA+ICAJZGVwZW5kcyBvbiBP Rg0KPiA+ICAJc2VsZWN0IEdFTkVSSUNfUElOQ09ORg0KPiA+ICAJc2VsZWN0IEdFTkVSSUNfUElO Q1RSTF9HUk9VUFMNCj4gPiAgCXNlbGVjdCBHRU5FUklDX1BJTk1VWF9GVU5DVElPTlMNCj4gPiAr CXNlbGVjdCBFSU5UX01USw0KPiA+ICAJc2VsZWN0IEdQSU9MSUINCj4gPiAgCXNlbGVjdCBPRl9H UElPDQo+ID4gKwlzZWxlY3QgUElOQ1RSTF9NVEtfVjINCj4gPiAgDQo+ID4gIGNvbmZpZyBQSU5D VFJMX01US19QQVJJUw0KPiA+IC0JYm9vbA0KPiA+ICsJdHJpc3RhdGUNCj4gPiAgCWRlcGVuZHMg b24gT0YNCj4gPiAgCXNlbGVjdCBQSU5NVVgNCj4gPiAgCXNlbGVjdCBHRU5FUklDX1BJTkNPTkYN Cj4gPiAgCXNlbGVjdCBHUElPTElCDQo+ID4gIAlzZWxlY3QgRUlOVF9NVEsNCj4gPiAgCXNlbGVj dCBPRl9HUElPDQo+ID4gKwlzZWxlY3QgUElOQ1RSTF9NVEtfVjINCj4gPiAgDQo+ID4gICMgRm9y IEFSTXY3IFNvQ3MNCj4gPiAgY29uZmlnIFBJTkNUUkxfTVQyNzAxDQo+ID4gQEAgLTgwLDcgKzg5 LDcgQEAgY29uZmlnIFBJTkNUUkxfTVQyNzEyDQo+ID4gIAlzZWxlY3QgUElOQ1RSTF9NVEsNCj4g PiAgDQo+ID4gIGNvbmZpZyBQSU5DVFJMX01UNjc2NQ0KPiA+IC0JYm9vbCAiTWVkaWF0ZWsgTVQ2 NzY1IHBpbiBjb250cm9sIg0KPiA+ICsJdHJpc3RhdGUgIk1lZGlhdGVrIE1UNjc2NSBwaW4gY29u dHJvbCINCj4gPiAgCWRlcGVuZHMgb24gT0YNCj4gPiAgCWRlcGVuZHMgb24gQVJNNjQgfHwgQ09N UElMRV9URVNUDQo+ID4gIAlkZWZhdWx0IEFSTTY0ICYmIEFSQ0hfTUVESUFURUsNCj4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9waW5jdHJsL21lZGlhdGVrL01ha2VmaWxlIGIvZHJpdmVycy9waW5j dHJsL21lZGlhdGVrL01ha2VmaWxlDQo+ID4gaW5kZXggYTc0MzI1YS4uNGI3MTMyOCAxMDA2NDQN Cj4gPiAtLS0gYS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvTWFrZWZpbGUNCj4gPiArKysgYi9k cml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvTWFrZWZpbGUNCj4gPiBAQCAtMiw4ICsyLDkgQEANCj4g PiAgIyBDb3JlDQo+ID4gIG9iai0kKENPTkZJR19FSU5UX01USykJCSs9IG10ay1laW50Lm8NCj4g PiAgb2JqLSQoQ09ORklHX1BJTkNUUkxfTVRLKQkrPSBwaW5jdHJsLW10ay1jb21tb24ubw0KPiA+ IC1vYmotJChDT05GSUdfUElOQ1RSTF9NVEtfTU9PUkUpICs9IHBpbmN0cmwtbW9vcmUubyBwaW5j dHJsLW10ay1jb21tb24tdjIubw0KPiA+IC1vYmotJChDT05GSUdfUElOQ1RSTF9NVEtfUEFSSVMp ICs9IHBpbmN0cmwtcGFyaXMubyBwaW5jdHJsLW10ay1jb21tb24tdjIubw0KPiA+ICtvYmotJChD T05GSUdfUElOQ1RSTF9NVEtfVjIpCSs9IHBpbmN0cmwtbXRrLWNvbW1vbi12Mi5vDQo+ID4gK29i ai0kKENPTkZJR19QSU5DVFJMX01US19NT09SRSkgKz0gcGluY3RybC1tb29yZS5vDQo+ID4gK29i ai0kKENPTkZJR19QSU5DVFJMX01US19QQVJJUykgKz0gcGluY3RybC1wYXJpcy5vDQo+ID4gIA0K PiA+ICAjIFNvQyBEcml2ZXJzDQo+ID4gIG9iai0kKENPTkZJR19QSU5DVFJMX01UMjcwMSkJKz0g cGluY3RybC1tdDI3MDEubw0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0 ZWsvbXRrLWVpbnQuYyBiL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9tdGstZWludC5jDQo+ID4g aW5kZXggN2U1MjZiY2YuLjk5NzAzYTggMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9waW5jdHJs L21lZGlhdGVrL210ay1laW50LmMNCj4gPiArKysgYi9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsv bXRrLWVpbnQuYw0KPiA+IEBAIC05LDYgKzksNyBAQA0KPiA+ICAgKg0KPiA+ICAgKi8NCj4gPiAg DQo+ID4gKyNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L2Rl bGF5Lmg+DQo+ID4gICNpbmNsdWRlIDxsaW51eC9lcnIuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4 L2dwaW8vZHJpdmVyLmg+DQo+ID4gQEAgLTM3OSw2ICszODAsNyBAQCBpbnQgbXRrX2VpbnRfZG9f c3VzcGVuZChzdHJ1Y3QgbXRrX2VpbnQgKmVpbnQpDQo+ID4gIA0KPiA+ICAJcmV0dXJuIDA7DQo+ ID4gIH0NCj4gPiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX2VpbnRfZG9fc3VzcGVuZCk7DQo+ID4g IA0KPiA+ICBpbnQgbXRrX2VpbnRfZG9fcmVzdW1lKHN0cnVjdCBtdGtfZWludCAqZWludCkNCj4g PiAgew0KPiA+IEBAIC0zODYsNiArMzg4LDcgQEAgaW50IG10a19laW50X2RvX3Jlc3VtZShzdHJ1 Y3QgbXRrX2VpbnQgKmVpbnQpDQo+ID4gIA0KPiA+ICAJcmV0dXJuIDA7DQo+ID4gIH0NCj4gPiAr RVhQT1JUX1NZTUJPTF9HUEwobXRrX2VpbnRfZG9fcmVzdW1lKTsNCj4gPiAgDQo+ID4gIGludCBt dGtfZWludF9zZXRfZGVib3VuY2Uoc3RydWN0IG10a19laW50ICplaW50LCB1bnNpZ25lZCBsb25n IGVpbnRfbnVtLA0KPiA+ICAJCQkgIHVuc2lnbmVkIGludCBkZWJvdW5jZSkNCj4gPiBAQCAtNDQw LDYgKzQ0Myw3IEBAIGludCBtdGtfZWludF9zZXRfZGVib3VuY2Uoc3RydWN0IG10a19laW50ICpl aW50LCB1bnNpZ25lZCBsb25nIGVpbnRfbnVtLA0KPiA+ICANCj4gPiAgCXJldHVybiAwOw0KPiA+ ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKG10a19laW50X3NldF9kZWJvdW5jZSk7DQo+ID4g IA0KPiA+ICBpbnQgbXRrX2VpbnRfZmluZF9pcnEoc3RydWN0IG10a19laW50ICplaW50LCB1bnNp Z25lZCBsb25nIGVpbnRfbikNCj4gPiAgew0KPiA+IEBAIC00NTEsNiArNDU1LDcgQEAgaW50IG10 a19laW50X2ZpbmRfaXJxKHN0cnVjdCBtdGtfZWludCAqZWludCwgdW5zaWduZWQgbG9uZyBlaW50 X24pDQo+ID4gIA0KPiA+ICAJcmV0dXJuIGlycTsNCj4gPiAgfQ0KPiA+ICtFWFBPUlRfU1lNQk9M X0dQTChtdGtfZWludF9maW5kX2lycSk7DQo+ID4gIA0KPiA+ICBpbnQgbXRrX2VpbnRfZG9faW5p dChzdHJ1Y3QgbXRrX2VpbnQgKmVpbnQpDQo+ID4gIHsNCj4gPiBAQCAtNDk1LDMgKzUwMCw3IEBA IGludCBtdGtfZWludF9kb19pbml0KHN0cnVjdCBtdGtfZWludCAqZWludCkNCj4gPiAgDQo+ID4g IAlyZXR1cm4gMDsNCj4gPiAgfQ0KPiA+ICtFWFBPUlRfU1lNQk9MX0dQTChtdGtfZWludF9kb19p bml0KTsNCj4gPiArDQo+ID4gK01PRFVMRV9MSUNFTlNFKCJHUEwgdjIiKTsNCj4gPiArTU9EVUxF X0RFU0NSSVBUSU9OKCJNZWRpYVRlayBFSU5UIERyaXZlciIpOw0KPiA+IGRpZmYgLS1naXQgYS9k cml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdDY3NjUuYyBiL2RyaXZlcnMvcGluY3Ry bC9tZWRpYXRlay9waW5jdHJsLW10Njc2NS5jDQo+ID4gaW5kZXggOTA1ZGFlOGMuLjJjNTlkMzkg MTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9waW5jdHJsL21lZGlhdGVrL3BpbmN0cmwtbXQ2NzY1 LmMNCj4gPiArKysgYi9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdDY3NjUuYw0K PiA+IEBAIC02LDYgKzYsNyBAQA0KPiA+ICAgKg0KPiA+ICAgKi8NCj4gPiAgDQo+ID4gKyNpbmNs dWRlIDxsaW51eC9tb2R1bGUuaD4NCj4gPiAgI2luY2x1ZGUgInBpbmN0cmwtbXRrLW10Njc2NS5o Ig0KPiA+ICAjaW5jbHVkZSAicGluY3RybC1wYXJpcy5oIg0KPiA+ICANCj4gPiBAQCAtMTEwMywz ICsxMTA0LDYgQEAgc3RhdGljIGludCBfX2luaXQgbXQ2NzY1X3BpbmN0cmxfaW5pdCh2b2lkKQ0K PiA+ICAJcmV0dXJuIHBsYXRmb3JtX2RyaXZlcl9yZWdpc3RlcigmbXQ2NzY1X3BpbmN0cmxfZHJp dmVyKTsNCj4gPiAgfQ0KPiA+ICBhcmNoX2luaXRjYWxsKG10Njc2NV9waW5jdHJsX2luaXQpOw0K PiA+ICsNCj4gPiArTU9EVUxFX0xJQ0VOU0UoIkdQTCB2MiIpOw0KPiA+ICtNT0RVTEVfREVTQ1JJ UFRJT04oIk1lZGlhVGVrIE1UNjc2NSBQaW5jdHJsIERyaXZlciIpOw0KPiA+IGRpZmYgLS1naXQg YS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdGstY29tbW9uLXYyLmMgYi9kcml2 ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdGstY29tbW9uLXYyLmMNCj4gPiBpbmRleCAx ZGE5NDI1Li5jZGYyZDY5IDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvcGluY3RybC9tZWRpYXRl ay9waW5jdHJsLW10ay1jb21tb24tdjIuYw0KPiA+ICsrKyBiL2RyaXZlcnMvcGluY3RybC9tZWRp YXRlay9waW5jdHJsLW10ay1jb21tb24tdjIuYw0KPiA+IEBAIC02LDYgKzYsNyBAQA0KPiA+ICAg Kg0KPiA+ICAgKi8NCj4gPiAgDQo+ID4gKyNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4NCj4gPiAg I2luY2x1ZGUgPGR0LWJpbmRpbmdzL3BpbmN0cmwvbXQ2NXh4Lmg+DQo+ID4gICNpbmNsdWRlIDxs aW51eC9kZXZpY2UuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L2Vyci5oPg0KPiA+IEBAIC0yMDYs NiArMjA3LDcgQEAgaW50IG10a19od19zZXRfdmFsdWUoc3RydWN0IG10a19waW5jdHJsICpodywg Y29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywNCj4gPiAgDQo+ID4gIAlyZXR1cm4gMDsN Cj4gPiAgfQ0KPiA+ICtFWFBPUlRfU1lNQk9MX0dQTChtdGtfaHdfc2V0X3ZhbHVlKTsNCj4gPiAg DQo+ID4gIGludCBtdGtfaHdfZ2V0X3ZhbHVlKHN0cnVjdCBtdGtfcGluY3RybCAqaHcsIGNvbnN0 IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsDQo+ID4gIAkJICAgICBpbnQgZmllbGQsIGludCAq dmFsdWUpDQo+ID4gQEAgLTIyNSw2ICsyMjcsNyBAQCBpbnQgbXRrX2h3X2dldF92YWx1ZShzdHJ1 Y3QgbXRrX3BpbmN0cmwgKmh3LCBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLA0KPiA+ ICANCj4gPiAgCXJldHVybiAwOw0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKG10a19o d19nZXRfdmFsdWUpOw0KPiA+ICANCj4gPiAgc3RhdGljIGludCBtdGtfeHRfZmluZF9laW50X251 bShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LCB1bnNpZ25lZCBsb25nIGVpbnRfbikNCj4gPiAgew0K PiA+IEBAIC0zNjMsNiArMzY2LDcgQEAgaW50IG10a19idWlsZF9laW50KHN0cnVjdCBtdGtfcGlu Y3RybCAqaHcsIHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpDQo+ID4gIA0KPiA+ICAJcmV0 dXJuIG10a19laW50X2RvX2luaXQoaHctPmVpbnQpOw0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1C T0xfR1BMKG10a19idWlsZF9laW50KTsNCj4gPiAgDQo+ID4gIC8qIFJldmlzaW9uIDAgKi8NCj4g PiAgaW50IG10a19waW5jb25mX2JpYXNfZGlzYWJsZV9zZXQoc3RydWN0IG10a19waW5jdHJsICpo dywNCj4gPiBAQCAtMzgyLDYgKzM4Niw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2Rpc2FibGVf c2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQo+ID4gIA0KPiA+ICAJcmV0dXJuIDA7DQo+ID4g IH0NCj4gPiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYmlhc19kaXNhYmxlX3NldCk7 DQo+ID4gIA0KPiA+ICBpbnQgbXRrX3BpbmNvbmZfYmlhc19kaXNhYmxlX2dldChzdHJ1Y3QgbXRr X3BpbmN0cmwgKmh3LA0KPiA+ICAJCQkJIGNvbnN0IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2Ms IGludCAqcmVzKQ0KPiA+IEBAIC00MDQsNiArNDA5LDcgQEAgaW50IG10a19waW5jb25mX2JpYXNf ZGlzYWJsZV9nZXQoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAgDQo+ID4gIAlyZXR1cm4g MDsNCj4gPiAgfQ0KPiA+ICtFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9iaWFzX2Rpc2Fi bGVfZ2V0KTsNCj4gPiAgDQo+ID4gIGludCBtdGtfcGluY29uZl9iaWFzX3NldChzdHJ1Y3QgbXRr X3BpbmN0cmwgKmh3LA0KPiA+ICAJCQkgY29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywg Ym9vbCBwdWxsdXApDQo+ID4gQEAgLTQyMyw2ICs0MjksNyBAQCBpbnQgbXRrX3BpbmNvbmZfYmlh c19zZXQoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAgDQo+ID4gIAlyZXR1cm4gMDsNCj4g PiAgfQ0KPiA+ICtFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9iaWFzX3NldCk7DQo+ID4g IA0KPiA+ICBpbnQgbXRrX3BpbmNvbmZfYmlhc19nZXQoc3RydWN0IG10a19waW5jdHJsICpodywN Cj4gPiAgCQkJIGNvbnN0IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsIGJvb2wgcHVsbHVwLCBp bnQgKnJlcykNCj4gPiBAQCAtNDQyLDYgKzQ0OSw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2dl dChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+ICANCj4gPiAgCXJldHVybiAwOw0KPiA+ICB9 DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKG10a19waW5jb25mX2JpYXNfZ2V0KTsNCj4gPiAgDQo+ ID4gIC8qIFJldmlzaW9uIDEgKi8NCj4gPiAgaW50IG10a19waW5jb25mX2JpYXNfZGlzYWJsZV9z ZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+IEBAIC00NTYsNiArNDY0LDcgQEAg aW50IG10a19waW5jb25mX2JpYXNfZGlzYWJsZV9zZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwg Kmh3LA0KPiA+ICANCj4gPiAgCXJldHVybiAwOw0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xf R1BMKG10a19waW5jb25mX2JpYXNfZGlzYWJsZV9zZXRfcmV2MSk7DQo+ID4gIA0KPiA+ICBpbnQg bXRrX3BpbmNvbmZfYmlhc19kaXNhYmxlX2dldF9yZXYxKHN0cnVjdCBtdGtfcGluY3RybCAqaHcs DQo+ID4gIAkJCQkgICAgICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBpbnQgKnJl cykNCj4gPiBAQCAtNDczLDYgKzQ4Miw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2Rpc2FibGVf Z2V0X3JldjEoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAgDQo+ID4gIAlyZXR1cm4gMDsN Cj4gPiAgfQ0KPiA+ICtFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9iaWFzX2Rpc2FibGVf Z2V0X3JldjEpOw0KPiA+ICANCj4gPiAgaW50IG10a19waW5jb25mX2JpYXNfc2V0X3JldjEoc3Ry dWN0IG10a19waW5jdHJsICpodywNCj4gPiAgCQkJICAgICAgY29uc3Qgc3RydWN0IG10a19waW5f ZGVzYyAqZGVzYywgYm9vbCBwdWxsdXApDQo+ID4gQEAgLTQ5Miw2ICs1MDIsNyBAQCBpbnQgbXRr X3BpbmNvbmZfYmlhc19zZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+ICANCj4g PiAgCXJldHVybiAwOw0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKG10a19waW5jb25m X2JpYXNfc2V0X3JldjEpOw0KPiA+ICANCj4gPiAgaW50IG10a19waW5jb25mX2JpYXNfZ2V0X3Jl djEoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAgCQkJICAgICAgY29uc3Qgc3RydWN0IG10 a19waW5fZGVzYyAqZGVzYywgYm9vbCBwdWxsdXAsDQo+ID4gQEAgLTUxNyw2ICs1MjgsNyBAQCBp bnQgbXRrX3BpbmNvbmZfYmlhc19nZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+ ICANCj4gPiAgCXJldHVybiAwOw0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKG10a19w aW5jb25mX2JpYXNfc2V0X2dldjEpOw0KPiA+ICANCj4gPiAgLyogQ29tYm8gZm9yIHRoZSBmb2xs b3dpbmcgcHVsbCByZWdpc3RlciB0eXBlOg0KPiA+ICAgKiAxLiBQVSArIFBEDQo+ID4gQEAgLTcx Nyw2ICs3MjksNyBAQCBpbnQgbXRrX3BpbmNvbmZfYmlhc19zZXRfY29tYm8oc3RydWN0IG10a19w aW5jdHJsICpodywNCj4gPiAgb3V0Og0KPiA+ICAJcmV0dXJuIGVycjsNCj4gPiAgfQ0KPiA+ICtF WFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9iaWFzX3NldF9jb21ibyk7DQo+ID4gIA0KPiA+ ICBpbnQgbXRrX3BpbmNvbmZfYmlhc19nZXRfY29tYm8oc3RydWN0IG10a19waW5jdHJsICpodywN Cj4gPiAgCQkJICAgICAgY29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywNCj4gPiBAQCAt NzM3LDYgKzc1MCw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2dldF9jb21ibyhzdHJ1Y3QgbXRr X3BpbmN0cmwgKmh3LA0KPiA+ICBvdXQ6DQo+ID4gIAlyZXR1cm4gZXJyOw0KPiA+ICB9DQo+ID4g K0VYUE9SVF9TWU1CT0xfR1BMKG10a19waW5jb25mX2JpYXNfZ2V0X2NvbWJvKTsNCj4gPiAgDQo+ ID4gIC8qIFJldmlzaW9uIDAgKi8NCj4gPiAgaW50IG10a19waW5jb25mX2RyaXZlX3NldChzdHJ1 Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+IEBAIC03NjYsNiArNzgwLDcgQEAgaW50IG10a19waW5j b25mX2RyaXZlX3NldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+ICANCj4gPiAgCXJldHVy biBlcnI7DQo+ID4gIH0NCj4gPiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfZHJpdmVf c2V0KTsNCj4gPiAgDQo+ID4gIGludCBtdGtfcGluY29uZl9kcml2ZV9nZXQoc3RydWN0IG10a19w aW5jdHJsICpodywNCj4gPiAgCQkJICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBp bnQgKnZhbCkNCj4gPiBAQCAtNzkwLDYgKzgwNSw3IEBAIGludCBtdGtfcGluY29uZl9kcml2ZV9n ZXQoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAgDQo+ID4gIAlyZXR1cm4gMDsNCj4gPiAg fQ0KPiA+ICtFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9kcml2ZV9nZXQpOw0KPiA+ICAN Cj4gPiAgLyogUmV2aXNpb24gMSAqLw0KPiA+ICBpbnQgbXRrX3BpbmNvbmZfZHJpdmVfc2V0X3Jl djEoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiBAQCAtODExLDYgKzgyNyw3IEBAIGludCBt dGtfcGluY29uZl9kcml2ZV9zZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+ICAN Cj4gPiAgCXJldHVybiBlcnI7DQo+ID4gIH0NCj4gPiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX3Bp bmNvbmZfZHJpdmVfc2V0X3JldjEpOw0KPiA+ICANCj4gPiAgaW50IG10a19waW5jb25mX2RyaXZl X2dldF9yZXYxKHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQo+ID4gIAkJCSAgICAgICBjb25zdCBz dHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBpbnQgKnZhbCkNCj4gPiBAQCAtODI4LDE4ICs4NDUs MjEgQEAgaW50IG10a19waW5jb25mX2RyaXZlX2dldF9yZXYxKHN0cnVjdCBtdGtfcGluY3RybCAq aHcsDQo+ID4gIA0KPiA+ICAJcmV0dXJuIDA7DQo+ID4gIH0NCj4gPiArRVhQT1JUX1NZTUJPTF9H UEwobXRrX3BpbmNvbmZfZHJpdmVfZ2V0X3JldjEpOw0KPiA+ICANCj4gPiAgaW50IG10a19waW5j b25mX2RyaXZlX3NldF9yYXcoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAgCQkJICAgICAg IGNvbnN0IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsIHUzMiBhcmcpDQo+ID4gIHsNCj4gPiAg CXJldHVybiBtdGtfaHdfc2V0X3ZhbHVlKGh3LCBkZXNjLCBQSU5DVFJMX1BJTl9SRUdfRFJWLCBh cmcpOw0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKG10a19waW5jb25mX2RyaXZlX3Nl dF9yYXcpOw0KPiA+ICANCj4gPiAgaW50IG10a19waW5jb25mX2RyaXZlX2dldF9yYXcoc3RydWN0 IG10a19waW5jdHJsICpodywNCj4gPiAgCQkJICAgICAgIGNvbnN0IHN0cnVjdCBtdGtfcGluX2Rl c2MgKmRlc2MsIGludCAqdmFsKQ0KPiA+ICB7DQo+ID4gIAlyZXR1cm4gbXRrX2h3X2dldF92YWx1 ZShodywgZGVzYywgUElOQ1RSTF9QSU5fUkVHX0RSViwgdmFsKTsNCj4gPiAgfQ0KPiA+ICtFWFBP UlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9kcml2ZV9nZXRfcmF3KTsNCj4gPiAgDQo+ID4gIGlu dCBtdGtfcGluY29uZl9hZHZfcHVsbF9zZXQoc3RydWN0IG10a19waW5jdHJsICpodywNCj4gPiAg CQkJICAgICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBib29sIHB1bGx1cCwNCj4g PiBAQCAtODgwLDYgKzkwMCw3IEBAIGludCBtdGtfcGluY29uZl9hZHZfcHVsbF9zZXQoc3RydWN0 IG10a19waW5jdHJsICpodywNCj4gPiAgDQo+ID4gIAlyZXR1cm4gZXJyOw0KPiA+ICB9DQo+ID4g K0VYUE9SVF9TWU1CT0xfR1BMKG10a19waW5jb25mX2Fkdl9wdWxsX3NldCk7DQo+ID4gIA0KPiA+ ICBpbnQgbXRrX3BpbmNvbmZfYWR2X3B1bGxfZ2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQo+ ID4gIAkJCSAgICAgY29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywgYm9vbCBwdWxsdXAs DQo+ID4gQEAgLTkyMiw2ICs5NDMsNyBAQCBpbnQgbXRrX3BpbmNvbmZfYWR2X3B1bGxfZ2V0KHN0 cnVjdCBtdGtfcGluY3RybCAqaHcsDQo+ID4gIA0KPiA+ICAJcmV0dXJuIDA7DQo+ID4gIH0NCj4g PiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYWR2X3B1bGxfZ2V0KTsNCj4gPiAgDQo+ ID4gIGludCBtdGtfcGluY29uZl9hZHZfZHJpdmVfc2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcs DQo+ID4gIAkJCSAgICAgIGNvbnN0IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsIHUzMiBhcmcp DQo+ID4gQEAgLTk0OCw2ICs5NzAsNyBAQCBpbnQgbXRrX3BpbmNvbmZfYWR2X2RyaXZlX3NldChz dHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KPiA+ICANCj4gPiAgCXJldHVybiBlcnI7DQo+ID4gIH0N Cj4gPiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYWR2X2RyaXZlX3NldCk7DQo+ID4g IA0KPiA+ICBpbnQgbXRrX3BpbmNvbmZfYWR2X2RyaXZlX2dldChzdHJ1Y3QgbXRrX3BpbmN0cmwg Kmh3LA0KPiA+ICAJCQkgICAgICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCB1MzIg KnZhbCkNCj4gPiBAQCAtOTcxLDMgKzk5NCw0IEBAIGludCBtdGtfcGluY29uZl9hZHZfZHJpdmVf Z2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQo+ID4gIA0KPiA+ICAJcmV0dXJuIDA7DQo+ID4g IH0NCj4gPiArRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYWR2X2RyaXZlX2dldCk7DQo+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9waW5jdHJsLXBhcmlzLmMg Yi9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1wYXJpcy5jDQo+ID4gaW5kZXggODNi ZjI5Yy4uYWY5Nzc5NCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsv cGluY3RybC1wYXJpcy5jDQo+ID4gKysrIGIvZHJpdmVycy9waW5jdHJsL21lZGlhdGVrL3BpbmN0 cmwtcGFyaXMuYw0KPiA+IEBAIC05LDYgKzksNyBAQA0KPiA+ICAgKgkgICBIb25nemhvdS5ZYW5n IDxob25nemhvdS55YW5nQG1lZGlhdGVrLmNvbT4NCj4gPiAgICovDQo+ID4gIA0KPiA+ICsjaW5j bHVkZSA8bGludXgvbW9kdWxlLmg+DQo+ID4gICNpbmNsdWRlIDxsaW51eC9ncGlvL2RyaXZlci5o Pg0KPiA+ICAjaW5jbHVkZSA8ZHQtYmluZGluZ3MvcGluY3RybC9tdDY1eHguaD4NCj4gPiAgI2lu Y2x1ZGUgInBpbmN0cmwtcGFyaXMuaCINCj4gPiBAQCAtMTAzNywzICsxMDM4LDcgQEAgc3RhdGlj IGludCBtdGtfcGFyaXNfcGluY3RybF9yZXN1bWUoc3RydWN0IGRldmljZSAqZGV2aWNlKQ0KPiA+ ICAJLnN1c3BlbmRfbm9pcnEgPSBtdGtfcGFyaXNfcGluY3RybF9zdXNwZW5kLA0KPiA+ICAJLnJl c3VtZV9ub2lycSA9IG10a19wYXJpc19waW5jdHJsX3Jlc3VtZSwNCj4gPiAgfTsNCj4gPiArRVhQ T1JUX1NZTUJPTF9HUEwobXRrX3BhcmlzX3BpbmN0cmxfcHJvYmUpOw0KPiA+ICsNCj4gPiArTU9E VUxFX0xJQ0VOU0UoIkdQTCB2MiIpOw0KPiA+ICtNT0RVTEVfREVTQ1JJUFRJT04oIk1lZGlhVGVr IFBpbmN0cmwgQ29tbW9uIERyaXZlciBWMiBQYXJpcyIpOw0KPiA+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL3BpbmN0cmwvcGluY29uZi1nZW5lcmljLmMgYi9kcml2ZXJzL3BpbmN0cmwvcGluY29uZi1n ZW5lcmljLmMNCj4gPiBpbmRleCA5ZWI4NjMwLi5kZmVmNDcxIDEwMDY0NA0KPiA+IC0tLSBhL2Ry aXZlcnMvcGluY3RybC9waW5jb25mLWdlbmVyaWMuYw0KPiA+ICsrKyBiL2RyaXZlcnMvcGluY3Ry bC9waW5jb25mLWdlbmVyaWMuYw0KPiA+IEBAIC0yODYsNiArMjg2LDcgQEAgaW50IHBpbmNvbmZf Z2VuZXJpY19wYXJzZV9kdF9jb25maWcoc3RydWN0IGRldmljZV9ub2RlICpucCwNCj4gPiAgCWtm cmVlKGNmZyk7DQo+ID4gIAlyZXR1cm4gcmV0Ow0KPiA+ICB9DQo+ID4gK0VYUE9SVF9TWU1CT0xf R1BMKHBpbmNvbmZfZ2VuZXJpY19wYXJzZV9kdF9jb25maWcpOw0KPiA+ICANCj4gPiAgaW50IHBp bmNvbmZfZ2VuZXJpY19kdF9zdWJub2RlX3RvX21hcChzdHJ1Y3QgcGluY3RybF9kZXYgKnBjdGxk ZXYsDQo+ID4gIAkJc3RydWN0IGRldmljZV9ub2RlICpucCwgc3RydWN0IHBpbmN0cmxfbWFwICoq bWFwLA0KPiA+IA0KDQo=