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=-16.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=unavailable 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 1FF3FC4338F for ; Fri, 23 Jul 2021 02:54:30 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id D852C60EB2 for ; Fri, 23 Jul 2021 02:54:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org D852C60EB2 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org 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:MIME-Version:References:In-Reply-To: Date:CC:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=iRjI+7CLp7T4zpfgkyR4OGxibBZ4DeO6VMEgLVYLtnA=; b=BDM8JRjkhJnC9x D/vF4LMpn4FNC+cZDMuFS0H8CXGExPdYDFoUCN15+4VNLHFq6fJ922t4DMUJCqnWjrHxycITqkaIT WKvc1WsleOD1RDONRrM1iauCycjlULZS73ffGf/UBTqVmUYaL7H3G4nsYkjAnPgivbHoTv0qToUFw jFEPe4zNZBD+kHfKYPnigbO+EAMp993dgfiGSx4O99KBngAiL86Bvm7JN763+ltyYvHM3iWb8Umfu wegzzS4HpM6+jd89hPm/bvPdiYna2WyWzpFmc+6aO14pzj2fR8PhXt5NrQYJmJ8G21wCac0zeMyel 3FlOiVGGzkvNWN8MlG6w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1m6lJ4-0038BQ-Qp; Fri, 23 Jul 2021 02:52:58 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1m6lIy-0038AK-N9; Fri, 23 Jul 2021 02:52:55 +0000 X-UUID: 2297fd9125f04cbdbd0fd4fab8bff8a5-20210722 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=KdFDbCgcWNnCVfwtaCzCPUHJlsFR5UHjDDvtC6YZRKo=; b=KJ004TYj24gzuDyNkGFx0SF33kwd608nJ8zmG2rJSWu9TfpBQlstNzIrpIjLOvz4G4UK3lJ+18BgWYhOnAo6MrZstHNNy30/VzOa/2gtgYwwS+CiEo0yjMLOg/yRZRmhC+Q2nIoZ43vYDsNuqJ1q6EUMOppAI25p6UvY2VLwKLw=; X-UUID: 2297fd9125f04cbdbd0fd4fab8bff8a5-20210722 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 52451113; Thu, 22 Jul 2021 19:52:50 -0700 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62DR.mediatek.inc (172.29.94.18) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 22 Jul 2021 19:45:13 -0700 Received: from mtkcas11.mediatek.inc (172.21.101.40) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 23 Jul 2021 10:45:11 +0800 Received: from mtksdccf07 (172.21.84.99) by mtkcas11.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Fri, 23 Jul 2021 10:45:11 +0800 Message-ID: <751b870b61c099deb47ccaa9b6f41bc400163815.camel@mediatek.com> Subject: Re: [PATCH v3 11/12] drm/mediatek: add DSC support for MT8195 From: Jason-JH Lin To: Chun-Kuang Hu CC: Matthias Brugger , Linux ARM , "moderated list:ARM/Mediatek SoC support" , linux-kernel , , , Nancy Lin , Date: Fri, 23 Jul 2021 10:45:11 +0800 In-Reply-To: References: <20210715173750.10852-1-jason-jh.lin@mediatek.com> <20210715173750.10852-12-jason-jh.lin@mediatek.com> X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210722_195252_840946_88C3849D X-CRM114-Status: GOOD ( 32.33 ) 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 SGkgQ0ssDQoNCk9uIEZyaSwgMjAyMS0wNy0xNiBhdCAwNzoyMSArMDgwMCwgQ2h1bi1LdWFuZyBI dSB3cm90ZToNCj4gSGksIEphc29uOg0KPiANCj4gamFzb24tamgubGluIDxqYXNvbi1qaC5saW5A bWVkaWF0ZWsuY29tPiDmlrwgMjAyMeW5tDfmnIgxNuaXpSDpgLHkupQg5LiK5Y2IMTozOOWvq+mB k++8mg0KPiA+IA0KPiA+IEFkZCBEU0MgbW9kdWxlIGZpbGU6DQo+ID4gICBEU0MgaXMgZGVzaWdu ZWQgZm9yIHJlYWwtdGltZSBzeXN0ZW1zIHdpdGggcmVhbC10aW1lIGNvbXByZXNzaW9uLA0KPiA+ ICAgdHJhbnNtaXNzaW9uLCBkZWNvbXByZXNzaW9uIGFuZCBkaXNwbGF5Lg0KPiA+ICAgVGhlIERT QyBzdGFuZGFyZCBpcyBhIHNwZWNpZmljYXRpb24gb2YgdGhlIGFsZ29yaXRobXMgdXNlZCBmb3IN Cj4gPiAgIGNvbXByZXNzaW5nIGFuZCBkZWNvbXByZXNzaW5nIGltYWdlIGRpc3BsYXkgc3RyZWFt cywgaW5jbHVkaW5nDQo+ID4gICB0aGUgc3BlY2lmaWNhdGlvbiBvZiB0aGUgc3ludGF4IGFuZCBz ZW1hbnRpY3Mgb2YgdGhlIGNvbXByZXNzZWQNCj4gPiAgIHZpZGVvIGJpdCBzdHJlYW0uDQo+ID4g DQo+ID4gU2lnbmVkLW9mZi1ieTogamFzb24tamgubGluIDxqYXNvbi1qaC5saW5AbWVkaWF0ZWsu Y29tPg0KPiA+IC0tLQ0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvTWFrZWZpbGUgICAg ICAgICAgIHwgICAxICsNCj4gPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kaXNwX2Ry di5oICAgICB8ICAgOCArDQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZGlzcF9k c2MuYyAgICAgfCAxNjENCj4gPiArKysrKysrKysrKysrKysrKysrKw0KPiA+ICBkcml2ZXJzL2dw dS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5jIHwgIDE5ICsrLQ0KPiA+ICBkcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5oIHwgICAxICsNCj4gPiAgZHJpdmVy cy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZHJ2LmMgICAgICB8ICAgOCArLQ0KPiA+ICBkcml2 ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuaCAgICAgIHwgICAxICsNCj4gPiAgNyBm aWxlcyBjaGFuZ2VkLCAxOTQgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkNCj4gPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZGlzcF9kc2MuYw0K PiA+IA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvTWFrZWZpbGUN Cj4gPiBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9NYWtlZmlsZQ0KPiA+IGluZGV4IGRjNTRh N2E2OTAwNS4uNDQ5NDhlMjIxZmQzIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9t ZWRpYXRlay9NYWtlZmlsZQ0KPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9NYWtl ZmlsZQ0KPiA+IEBAIC0yLDYgKzIsNyBAQA0KPiA+IA0KPiA+ICBtZWRpYXRlay1kcm0teSA6PSBt dGtfZGlzcF9jY29yci5vIFwNCj4gPiAgICAgICAgICAgICAgICAgICBtdGtfZGlzcF9jb2xvci5v IFwNCj4gPiArICAgICAgICAgICAgICAgICBtdGtfZGlzcF9kc2MubyBcDQo+ID4gICAgICAgICAg ICAgICAgICAgbXRrX2Rpc3BfZ2FtbWEubyBcDQo+ID4gICAgICAgICAgICAgICAgICAgbXRrX2Rp c3Bfb3ZsLm8gXA0KPiA+ICAgICAgICAgICAgICAgICAgIG10a19kaXNwX3JkbWEubyBcDQo+ID4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZGlzcF9kcnYuaA0KPiA+ IGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kaXNwX2Rydi5oDQo+ID4gaW5kZXggY2Fm ZDlkZjJkNjNiLi5jN2U5YmQzNzBhY2QgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L21lZGlhdGVrL210a19kaXNwX2Rydi5oDQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21lZGlh dGVrL210a19kaXNwX2Rydi5oDQo+ID4gQEAgLTMzLDYgKzMzLDE0IEBAIHZvaWQgbXRrX2RpdGhl cl9zZXRfY29tbW9uKHZvaWQgX19pb21lbSAqcmVncywNCj4gPiBzdHJ1Y3QgY21kcV9jbGllbnRf cmVnICpjbWRxX3JlZywNCj4gPiAgdm9pZCBtdGtfZHBpX3N0YXJ0KHN0cnVjdCBkZXZpY2UgKmRl dik7DQo+ID4gIHZvaWQgbXRrX2RwaV9zdG9wKHN0cnVjdCBkZXZpY2UgKmRldik7DQo+ID4gDQo+ ID4gK2ludCBtdGtfZHNjX2Nsa19lbmFibGUoc3RydWN0IGRldmljZSAqZGV2KTsNCj4gPiArdm9p ZCBtdGtfZHNjX2Nsa19kaXNhYmxlKHN0cnVjdCBkZXZpY2UgKmRldik7DQo+ID4gK3ZvaWQgbXRr X2RzY19jb25maWcoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBpbnQgd2lkdGgsDQo+ID4g KyAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgaGVpZ2h0LCB1bnNpZ25lZCBpbnQgdnJl ZnJlc2gsDQo+ID4gKyAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnBjLCBzdHJ1Y3Qg Y21kcV9wa3QgKmNtZHFfcGt0KTsNCj4gPiArdm9pZCBtdGtfZHNjX3N0YXJ0KHN0cnVjdCBkZXZp Y2UgKmRldik7DQo+ID4gK3ZvaWQgbXRrX2RzY19zdG9wKHN0cnVjdCBkZXZpY2UgKmRldik7DQo+ ID4gKw0KPiA+ICB2b2lkIG10a19kc2lfZGRwX3N0YXJ0KHN0cnVjdCBkZXZpY2UgKmRldik7DQo+ ID4gIHZvaWQgbXRrX2RzaV9kZHBfc3RvcChzdHJ1Y3QgZGV2aWNlICpkZXYpOw0KPiA+IA0KPiA+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2Rpc3BfZHNjLmMNCj4g PiBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZGlzcF9kc2MuYw0KPiA+IG5ldyBmaWxl IG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMDAwMDAwLi42YTE5NjIyMGM1MzINCj4gPiAt LS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kaXNw X2RzYy5jDQo+ID4gQEAgLTAsMCArMSwxNjEgQEANCj4gPiArLy8gU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEdQTC0yLjANCj4gPiArLyoNCj4gPiArICogQ29weXJpZ2h0IChjKSAyMDIxIE1lZGlh VGVrIEluYy4NCj4gPiArICovDQo+ID4gKw0KPiA+ICsjaW5jbHVkZSA8bGludXgvY2xrLmg+DQo+ ID4gKyNpbmNsdWRlIDxsaW51eC9jb21wb25lbnQuaD4NCj4gPiArI2luY2x1ZGUgPGxpbnV4L29m X2RldmljZS5oPg0KPiA+ICsjaW5jbHVkZSA8bGludXgvb2ZfaXJxLmg+DQo+ID4gKyNpbmNsdWRl IDxsaW51eC9wbGF0Zm9ybV9kZXZpY2UuaD4NCj4gPiArI2luY2x1ZGUgPGxpbnV4L3NvYy9tZWRp YXRlay9tdGstY21kcS5oPg0KPiA+ICsNCj4gPiArI2luY2x1ZGUgIm10a19kcm1fY3J0Yy5oIg0K PiA+ICsjaW5jbHVkZSAibXRrX2RybV9kZHBfY29tcC5oIg0KPiA+ICsjaW5jbHVkZSAibXRrX2Ry bV9nZW0uaCINCj4gPiArI2luY2x1ZGUgIm10a19kaXNwX2Rydi5oIg0KPiA+ICsNCj4gPiArI2Rl ZmluZSBESVNQX1JFR19EU0NfQ09OICAgICAgICAgICAgICAgICAgICAgICAweDAwMDANCj4gPiAr I2RlZmluZSBEU0NfRU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVQoMCkNCj4g PiArI2RlZmluZSBEU0NfRFVBTF9JTk9VVCAgICAgICAgICAgICAgICAgICAgICAgICBCSVQoMikN Cj4gPiArI2RlZmluZSBEU0NfQllQQVNTICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVQo NCkNCj4gPiArI2RlZmluZSBEU0NfVUZPRV9TRUwgICAgICAgICAgICAgICAgICAgICAgICAgICBC SVQoMTYpDQo+ID4gKw0KPiA+ICsvKioNCj4gPiArICogc3RydWN0IG10a19kaXNwX2RzYyAtIERJ U1BfRFNDIGRyaXZlciBzdHJ1Y3R1cmUNCj4gPiArICogQGNsayAtIGNsayBvZiBkc2MgaGFyZHdh cmUNCj4gPiArICogQHJlZ3MgLSBoYXJkd2FyZSByZWdpc3RlciBhZGRyZXNzIG9mIGRzYw0KPiA+ ICsgKiBAY21kcV9yZWcgLSBzdHJ1Y3R1cmUgY29udGFpbmluZyBjbWRxIGhhcmR3YXJlIHJlc291 cmNlDQo+ID4gKyAqLw0KPiA+ICtzdHJ1Y3QgbXRrX2Rpc3BfZHNjIHsNCj4gPiArICAgICAgIHN0 cnVjdCBjbGsgKmNsazsNCj4gPiArICAgICAgIHZvaWQgX19pb21lbSAqcmVnczsNCj4gPiArICAg ICAgIHN0cnVjdCBjbWRxX2NsaWVudF9yZWcgICAgICAgICAgY21kcV9yZWc7DQo+ID4gK307DQo+ IA0KPiBTcXVhc2ggbXRrX2Rpc3BfZHNjLmMgaW50byBtdGtfZHJtX2RkcF9jb21wLmMgYW5kIHRo aXMgcGF0Y2ggd291bGQgYmUNCj4gbXVjaCBzaW1wbGVyLg0KPiANCk9LLCBJJ2xsIHNxdWFzaCBp dCBpbnRvIG10a19kcm1fZGRwX2NvbXAuYyBhdCBuZXh0IHZlcnNpb24uDQoNCj4gPiArDQo+ID4g K3ZvaWQgbXRrX2RzY19zdGFydChzdHJ1Y3QgZGV2aWNlICpkZXYpDQo+ID4gK3sNCj4gPiArICAg ICAgIHN0cnVjdCBtdGtfZGlzcF9kc2MgKmRzYyA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOw0KPiA+ ICsgICAgICAgdm9pZCBfX2lvbWVtICpiYWRkciA9IGRzYy0+cmVnczsNCj4gDQo+IGJhZGRyIGlz IHVzZWQgb25seSBvbmNlLCBzbyB1c2UgZHNjLT5yZWdzIGRpcmVjdGx5Lg0KDQpPSywgSSdsbCBm aXggdGhpcy4NCj4gDQo+ID4gKw0KPiA+ICsgICAgICAgbXRrX2RkcF93cml0ZV9tYXNrKE5VTEws IERTQ19FTiwgJmRzYy0+Y21kcV9yZWcsIGJhZGRyLA0KPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgIERJU1BfUkVHX0RTQ19DT04sIERTQ19FTik7DQo+ID4gK30NCj4gPiArDQo+ID4gK3Zv aWQgbXRrX2RzY19zdG9wKHN0cnVjdCBkZXZpY2UgKmRldikNCj4gPiArew0KPiA+ICsgICAgICAg c3RydWN0IG10a19kaXNwX2RzYyAqZHNjID0gZGV2X2dldF9kcnZkYXRhKGRldik7DQo+ID4gKyAg ICAgICB2b2lkIF9faW9tZW0gKmJhZGRyID0gZHNjLT5yZWdzOw0KPiANCj4gRGl0dG8uDQo+IA0K T0ssIEknbGwgZml4IHRoaXMuDQoNCj4gPiArDQo+ID4gKyAgICAgICBtdGtfZGRwX3dyaXRlX21h c2soTlVMTCwgMHgwLCAmZHNjLT5jbWRxX3JlZywgYmFkZHIsDQo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgRElTUF9SRUdfRFNDX0NPTiwgRFNDX0VOKTsNCj4gPiArfQ0KPiA+ICsNCj4g PiAraW50IG10a19kc2NfY2xrX2VuYWJsZShzdHJ1Y3QgZGV2aWNlICpkZXYpDQo+ID4gK3sNCj4g PiArICAgICAgIHN0cnVjdCBtdGtfZGlzcF9kc2MgKmRzYyA9IGRldl9nZXRfZHJ2ZGF0YShkZXYp Ow0KPiA+ICsNCj4gPiArICAgICAgIHJldHVybiBjbGtfcHJlcGFyZV9lbmFibGUoZHNjLT5jbGsp Ow0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2b2lkIG10a19kc2NfY2xrX2Rpc2FibGUoc3RydWN0IGRl dmljZSAqZGV2KQ0KPiA+ICt7DQo+ID4gKyAgICAgICBzdHJ1Y3QgbXRrX2Rpc3BfZHNjICpkc2Mg PSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsNCj4gPiArDQo+ID4gKyAgICAgICBjbGtfZGlzYWJsZV91 bnByZXBhcmUoZHNjLT5jbGspOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICt2b2lkIG10a19kc2NfY29u ZmlnKHN0cnVjdCBkZXZpY2UgKmRldiwgdW5zaWduZWQgaW50IHcsDQo+ID4gKyAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBpbnQgaCwgdW5zaWduZWQgaW50IHZyZWZyZXNoLA0KPiA+ICsgICAg ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJwYywgc3RydWN0IGNtZHFfcGt0ICpoYW5kbGUp DQo+ID4gK3sNCj4gPiArICAgICAgIHN0cnVjdCBtdGtfZGlzcF9kc2MgKmRzYyA9IGRldl9nZXRf ZHJ2ZGF0YShkZXYpOw0KPiA+ICsNCj4gPiArICAgICAgIC8qIGRzYyBieXBhc3MgbW9kZSAqLw0K PiA+ICsgICAgICAgbXRrX2RkcF93cml0ZV9tYXNrKGhhbmRsZSwgRFNDX0JZUEFTUywgJmRzYy0+ Y21kcV9yZWcsIGRzYy0NCj4gPiA+cmVncywNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICBESVNQX1JFR19EU0NfQ09OLCBEU0NfQllQQVNTKTsNCj4gPiArICAgICAgIG10a19kZHBfd3Jp dGVfbWFzayhoYW5kbGUsIERTQ19VRk9FX1NFTCwgJmRzYy0+Y21kcV9yZWcsDQo+ID4gZHNjLT5y ZWdzLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIERJU1BfUkVHX0RTQ19DT04sIERT Q19VRk9FX1NFTCk7DQo+ID4gKyAgICAgICBtdGtfZGRwX3dyaXRlX21hc2soaGFuZGxlLCBEU0Nf RFVBTF9JTk9VVCwgJmRzYy0+Y21kcV9yZWcsDQo+ID4gZHNjLT5yZWdzLA0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgIERJU1BfUkVHX0RTQ19DT04sIERTQ19EVUFMX0lOT1VUKTsNCj4g PiArfQ0KPiA+ICsNCj4gPiArc3RhdGljIGludCBtdGtfZGlzcF9kc2NfYmluZChzdHJ1Y3QgZGV2 aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UNCj4gPiAqbWFzdGVyLA0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdm9pZCAqZGF0YSkNCj4gPiArew0KPiA+ICsgICAgICAgcmV0dXJuIDA7 DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyB2b2lkIG10a19kaXNwX2RzY191bmJpbmQoc3Ry dWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZGV2aWNlDQo+ID4gKm1hc3RlciwNCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpDQo+ID4gK3sNCj4gPiArfQ0KPiA+ ICsNCj4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBjb21wb25lbnRfb3BzIG10a19kaXNwX2RzY19j b21wb25lbnRfb3BzID0gew0KPiA+ICsgICAgICAgLmJpbmQgPSBtdGtfZGlzcF9kc2NfYmluZCwN Cj4gPiArICAgICAgIC51bmJpbmQgPSBtdGtfZGlzcF9kc2NfdW5iaW5kLA0KPiA+ICt9Ow0KPiA+ ICsNCj4gPiArc3RhdGljIGludCBtdGtfZGlzcF9kc2NfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rl dmljZSAqcGRldikNCj4gPiArew0KPiA+ICsgICAgICAgc3RydWN0IGRldmljZSAqZGV2ID0gJnBk ZXYtPmRldjsNCj4gPiArICAgICAgIHN0cnVjdCByZXNvdXJjZSAqcmVzOw0KPiA+ICsgICAgICAg c3RydWN0IG10a19kaXNwX2RzYyAqcHJpdjsNCj4gPiArICAgICAgIGludCBpcnE7DQo+ID4gKyAg ICAgICBpbnQgcmV0Ow0KPiA+ICsNCj4gPiArICAgICAgIHByaXYgPSBkZXZtX2t6YWxsb2MoZGV2 LCBzaXplb2YoKnByaXYpLCBHRlBfS0VSTkVMKTsNCj4gPiArICAgICAgIGlmICghcHJpdikNCj4g PiArICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07DQo+ID4gKw0KPiA+ICsgICAgICAgcHJp di0+Y2xrID0gZGV2bV9jbGtfZ2V0KGRldiwgTlVMTCk7DQo+ID4gKyAgICAgICBpZiAoSVNfRVJS KHByaXYtPmNsaykpIHsNCj4gPiArICAgICAgICAgICAgICAgZGV2X2VycihkZXYsICJmYWlsZWQg dG8gZ2V0IGRzYyBjbGtcbiIpOw0KPiA+ICsgICAgICAgICAgICAgICByZXR1cm4gUFRSX0VSUihw cml2LT5jbGspOw0KPiA+ICsgICAgICAgfQ0KPiA+ICsNCj4gPiArICAgICAgIHJlcyA9IHBsYXRm b3JtX2dldF9yZXNvdXJjZShwZGV2LCBJT1JFU09VUkNFX01FTSwgMCk7DQo+ID4gKyAgICAgICBw cml2LT5yZWdzID0gZGV2bV9pb3JlbWFwX3Jlc291cmNlKGRldiwgcmVzKTsNCj4gPiArICAgICAg IGlmIChJU19FUlIocHJpdi0+cmVncykpIHsNCj4gPiArICAgICAgICAgICAgICAgZGV2X2Vycihk ZXYsICJmYWlsZWQgdG8gaW9yZW1hcCBkc2NcbiIpOw0KPiA+ICsgICAgICAgICAgICAgICByZXR1 cm4gUFRSX0VSUihwcml2LT5yZWdzKTsNCj4gPiArICAgICAgIH0NCj4gPiArDQo+ID4gKyNpZiBJ U19SRUFDSEFCTEUoQ09ORklHX01US19DTURRKQ0KPiA+ICsgICAgICAgcmV0ID0gY21kcV9kZXZf Z2V0X2NsaWVudF9yZWcoZGV2LCAmcHJpdi0+Y21kcV9yZWcsIDApOw0KPiA+ICsgICAgICAgaWYg KHJldCkNCj4gPiArICAgICAgICAgICAgICAgZGV2X2RiZyhkZXYsICJnZXQgbWVkaWF0ZWssZ2Nl LWNsaWVudC1yZWcNCj4gPiBmYWlsIVxuIik7DQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArICAg ICAgIHBsYXRmb3JtX3NldF9kcnZkYXRhKHBkZXYsIHByaXYpOw0KPiA+ICsNCj4gPiArICAgICAg IHJldCA9IGNvbXBvbmVudF9hZGQoZGV2LCAmbXRrX2Rpc3BfZHNjX2NvbXBvbmVudF9vcHMpOw0K PiA+ICsgICAgICAgaWYgKHJldCAhPSAwKQ0KPiA+ICsgICAgICAgICAgICAgICBkZXZfZXJyKGRl diwgIkZhaWxlZCB0byBhZGQgY29tcG9uZW50OiAlZFxuIiwgcmV0KTsNCj4gPiArDQo+ID4gKyAg ICAgICByZXR1cm4gcmV0Ow0KPiA+ICt9DQo+ID4gKw0KPiA+ICtzdGF0aWMgaW50IG10a19kaXNw X2RzY19yZW1vdmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gPiArew0KPiA+ICsg ICAgICAgY29tcG9uZW50X2RlbCgmcGRldi0+ZGV2LCAmbXRrX2Rpc3BfZHNjX2NvbXBvbmVudF9v cHMpOw0KPiA+ICsNCj4gPiArICAgICAgIHJldHVybiAwOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICtz dGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdGtfZGlzcF9kc2NfZHJpdmVyX2R0X21h dGNoW10gPQ0KPiA+IHsNCj4gPiArICAgICAgIHsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4 MTk1LWRpc3AtZHNjIiwgfSwNCj4gPiArICAgICAgIHt9LA0KPiA+ICt9Ow0KPiA+ICsNCj4gPiAr TU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbXRrX2Rpc3BfZHNjX2RyaXZlcl9kdF9tYXRjaCk7DQo+ ID4gKw0KPiA+ICtzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyIG10a19kaXNwX2RzY19kcml2ZXIgPSB7 DQo+ID4gKyAgICAgICAucHJvYmUgPSBtdGtfZGlzcF9kc2NfcHJvYmUsDQo+ID4gKyAgICAgICAu cmVtb3ZlID0gbXRrX2Rpc3BfZHNjX3JlbW92ZSwNCj4gPiArICAgICAgIC5kcml2ZXIgPSB7DQo+ ID4gKyAgICAgICAgICAgICAgIC5uYW1lID0gIm1lZGlhdGVrLWRpc3AtZHNjIiwNCj4gPiArICAg ICAgICAgICAgICAgLm93bmVyID0gVEhJU19NT0RVTEUsDQo+ID4gKyAgICAgICAgICAgICAgIC5v Zl9tYXRjaF90YWJsZSA9IG10a19kaXNwX2RzY19kcml2ZXJfZHRfbWF0Y2gsDQo+ID4gKyAgICAg ICB9LA0KPiA+ICt9Ow0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2RybV9kZHBfY29tcC5jDQo+ID4gYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2Ry bV9kZHBfY29tcC5jDQo+ID4gaW5kZXggNzViYzAwZTE3ZmM0Li5iYTNkN2ExY2U3YWIgMTAwNjQ0 DQo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuYw0K PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMNCj4g PiBAQCAtMzMzLDYgKzMzMywxNCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG10a19kZHBfY29tcF9m dW5jcw0KPiA+IGRkcF9yZG1hID0gew0KPiA+ICAgICAgICAgLmxheWVyX2NvbmZpZyA9IG10a19y ZG1hX2xheWVyX2NvbmZpZywNCj4gPiAgfTsNCj4gPiANCj4gPiArc3RhdGljIGNvbnN0IHN0cnVj dCBtdGtfZGRwX2NvbXBfZnVuY3MgZGRwX2RzYyA9IHsNCj4gPiArICAgICAgIC5jb25maWcgPSBt dGtfZHNjX2NvbmZpZywNCj4gPiArICAgICAgIC5zdGFydCA9IG10a19kc2Nfc3RhcnQsDQo+ID4g KyAgICAgICAuc3RvcCA9IG10a19kc2Nfc3RvcCwNCj4gPiArICAgICAgIC5jbGtfZW5hYmxlID0g bXRrX2RzY19jbGtfZW5hYmxlLA0KPiA+ICsgICAgICAgLmNsa19kaXNhYmxlID0gbXRrX2RzY19j bGtfZGlzYWJsZSwNCj4gPiArfTsNCj4gPiArDQo+ID4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRr X2RkcF9jb21wX2Z1bmNzIGRkcF91Zm9lID0gew0KPiA+ICAgICAgICAgLmNsa19lbmFibGUgPSBt dGtfZGRwX2Nsa19lbmFibGUsDQo+ID4gICAgICAgICAuY2xrX2Rpc2FibGUgPSBtdGtfZGRwX2Ns a19kaXNhYmxlLA0KPiA+IEBAIC0zNTYsNiArMzY0LDcgQEAgc3RhdGljIGNvbnN0IGNoYXIgKiBj b25zdA0KPiA+IG10a19kZHBfY29tcF9zdGVtW01US19ERFBfQ09NUF9UWVBFX01BWF0gPSB7DQo+ ID4gICAgICAgICBbTVRLX0RJU1BfTVVURVhdID0gIm11dGV4IiwNCj4gPiAgICAgICAgIFtNVEtf RElTUF9PRF0gPSAib2QiLA0KPiA+ICAgICAgICAgW01US19ESVNQX0JMU10gPSAiYmxzIiwNCj4g PiArICAgICAgIFtNVEtfRElTUF9EU0NdID0gImRzYyIsDQo+ID4gIH07DQo+ID4gDQo+ID4gIHN0 cnVjdCBtdGtfZGRwX2NvbXBfbWF0Y2ggew0KPiA+IEBAIC0zNzQsNiArMzgzLDkgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBtdGtfZGRwX2NvbXBfbWF0Y2gNCj4gPiBtdGtfZGRwX21hdGNoZXNbRERQ X0NPTVBPTkVOVF9JRF9NQVhdID0gew0KPiA+ICAgICAgICAgW0REUF9DT01QT05FTlRfRElUSEVS XSAgPSB7IE1US19ESVNQX0RJVEhFUiwgICAgMCwNCj4gPiAmZGRwX2RpdGhlciB9LA0KPiA+ICAg ICAgICAgW0REUF9DT01QT05FTlRfRFBJMF0gICAgPSB7IE1US19EUEksICAgICAgICAgICAgMCwg JmRkcF9kcGkNCj4gPiB9LA0KPiA+ICAgICAgICAgW0REUF9DT01QT05FTlRfRFBJMV0gICAgPSB7 IE1US19EUEksICAgICAgICAgICAgMSwgJmRkcF9kcGkNCj4gPiB9LA0KPiA+ICsgICAgICAgW0RE UF9DT01QT05FTlRfRFNDMF0gICAgPSB7IE1US19ESVNQX0RTQywgICAgICAgMCwgJmRkcF9kc2MN Cj4gPiB9LA0KPiA+ICsgICAgICAgW0REUF9DT01QT05FTlRfRFNDMV0gICAgPSB7IE1US19ESVNQ X0RTQywgICAgICAgMSwgJmRkcF9kc2MNCj4gPiB9LA0KPiA+ICsgICAgICAgW0REUF9DT01QT05F TlRfRFNDMV9WSVJUVUFMMF0gICA9IHsgTVRLX0RJU1BfRFNDLCAgICAgICAtMSwgDQo+ID4gJmRk cF9kc2MgfSwNCj4gDQo+IFdoYXQgaXMgRERQX0NPTVBPTkVOVF9EU0MxX1ZJUlRVQUwwPyBJZiB1 c2UgbGVzcywgcmVtb3ZlIGl0Lg0KDQpERFBfQ09NUE9ORU5UX0RTQzFfVklSVFVBTDAgaXMgdGhl IE1VWCB3aXRob3V0IGEgcGh5c2ljYWwgbW9kdWxlLg0KSXQgd2lsbCBiZSB1c2VkIGFzIHRoZSBz ZWxfaW4gZm9yIERJVEhFUjEgYW5kIERTQzEgYW5kIHRoZSBzZWxfb3V0IGZvcg0KRFNJMSwgRFBf SU5URjAsIFNJTkFfVklSVFVBTDAgYW5kIE1FUkdFMC4NCg0KU28gSSB0aGluayB3ZSBzaG9sdWQg a2VlcCB0aGlzIGNvbXBvbmVudCBlbnVtIHRvIHN1cG9vcnQgRElUSEVSMSBvcg0KRFNDMSBzZWxf aW4gYW5kICBEU0kxIG9yIERQX0lOVEYwIHNlbF9vdXQgZm9yIGR1YWwgcGlwZSBpbiB0aGUgZnV0 dXJlLg0KPiANCj4gPiAgICAgICAgIFtERFBfQ09NUE9ORU5UX0RTSTBdICAgID0geyBNVEtfRFNJ LCAgICAgICAgICAgIDAsICZkZHBfZHNpDQo+ID4gfSwNCj4gPiAgICAgICAgIFtERFBfQ09NUE9O RU5UX0RTSTFdICAgID0geyBNVEtfRFNJLCAgICAgICAgICAgIDEsICZkZHBfZHNpDQo+ID4gfSwN Cj4gPiAgICAgICAgIFtERFBfQ09NUE9ORU5UX0RTSTJdICAgID0geyBNVEtfRFNJLCAgICAgICAg ICAgIDIsICZkZHBfZHNpDQo+ID4gfSwNCj4gPiBAQCAtNTA4LDEzICs1MjAsMTQgQEAgaW50IG10 a19kZHBfY29tcF9pbml0KHN0cnVjdCBkZXZpY2Vfbm9kZQ0KPiA+ICpub2RlLCBzdHJ1Y3QgbXRr X2RkcF9jb21wICpjb21wLA0KPiA+ICAgICAgICAgaWYgKHR5cGUgPT0gTVRLX0RJU1BfQkxTIHx8 DQo+ID4gICAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9DQ09SUiB8fA0KPiA+ICAgICAgICAg ICAgIHR5cGUgPT0gTVRLX0RJU1BfQ09MT1IgfHwNCj4gPiArICAgICAgICAgICB0eXBlID09IE1U S19ESVNQX0RTQyB8fA0KPiA+ICAgICAgICAgICAgIHR5cGUgPT0gTVRLX0RJU1BfR0FNTUEgfHwN Cj4gPiAtICAgICAgICAgICB0eXBlID09IE1US19EUEkgfHwNCj4gPiAtICAgICAgICAgICB0eXBl ID09IE1US19EU0kgfHwNCj4gPiAgICAgICAgICAgICB0eXBlID09IE1US19ESVNQX09WTCB8fA0K PiA+ICAgICAgICAgICAgIHR5cGUgPT0gTVRLX0RJU1BfT1ZMXzJMIHx8DQo+ID4gICAgICAgICAg ICAgdHlwZSA9PSBNVEtfRElTUF9QV00gfHwNCj4gPiAtICAgICAgICAgICB0eXBlID09IE1US19E SVNQX1JETUEpDQo+ID4gKyAgICAgICAgICAgdHlwZSA9PSBNVEtfRElTUF9SRE1BIHx8DQo+ID4g KyAgICAgICAgICAgdHlwZSA9PSBNVEtfRFBJIHx8DQo+ID4gKyAgICAgICAgICAgdHlwZSA9PSBN VEtfRFNJKQ0KPiANCj4gTW92aW5nIE1US19EUEkgYW5kIE1US19EU0kgaXMgbm90IHJlbGF0ZWQg dG8gRFNDLCBzbyBtb3ZlIHRoaXMNCj4gbW9kaWZpY2F0aW9uIHRvIGFub3RoZXIgcGF0Y2guDQo+ IA0KT0ssIEkgd2lsbCByb2xsYmFjayB0aGlzIG1vZGlmaWNhdGlvbi4NCg0KPiA+ICAgICAgICAg ICAgICAgICByZXR1cm4gMDsNCj4gPiANCj4gPiAgICAgICAgIHByaXYgPSBkZXZtX2t6YWxsb2Mo Y29tcC0+ZGV2LCBzaXplb2YoKnByaXYpLCBHRlBfS0VSTkVMKTsNCj4gPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaA0KPiA+IGIvZHJpdmVy cy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaA0KPiA+IGluZGV4IGJiOTE0ZDk3 NmNmNS4uNjYxZmI2MjBlMjY2IDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZWRp YXRlay9tdGtfZHJtX2RkcF9jb21wLmgNCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0 ZWsvbXRrX2RybV9kZHBfY29tcC5oDQo+ID4gQEAgLTM0LDYgKzM0LDcgQEAgZW51bSBtdGtfZGRw X2NvbXBfdHlwZSB7DQo+ID4gICAgICAgICBNVEtfRElTUF9NVVRFWCwNCj4gPiAgICAgICAgIE1U S19ESVNQX09ELA0KPiA+ICAgICAgICAgTVRLX0RJU1BfQkxTLA0KPiA+ICsgICAgICAgTVRLX0RJ U1BfRFNDLA0KPiA+ICAgICAgICAgTVRLX0REUF9DT01QX1RZUEVfTUFYLA0KPiA+ICB9Ow0KPiA+ IA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYu Yw0KPiA+IGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZHJ2LmMNCj4gPiBpbmRl eCBkNmY2ZDFiZGFkODUuLjk5MGE1NDA0OWE3ZCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYw0KPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9t ZWRpYXRlay9tdGtfZHJtX2Rydi5jDQo+ID4gQEAgLTQ0Niw2ICs0NDYsOCBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IG9mX2RldmljZV9pZA0KPiA+IG10a19kZHBfY29tcF9kdF9pZHNbXSA9IHsNCj4g PiAgICAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19ESVNQX0dBTU1BLCB9LA0KPiA+ICAgICAg ICAgeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxODMtZGlzcC1kaXRoZXIiLA0KPiA+ICAg ICAgICAgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfRElUSEVSIH0sDQo+ID4gKyAgICAgICB7 IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE5NS1kaXNwLWRzYyIsDQo+ID4gKyAgICAgICAg IC5kYXRhID0gKHZvaWQgKilNVEtfRElTUF9EU0MgfSwNCj4gPiAgICAgICAgIHsgLmNvbXBhdGli bGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtdWZvZSIsDQo+ID4gICAgICAgICAgIC5kYXRhID0g KHZvaWQgKilNVEtfRElTUF9VRk9FIH0sDQo+ID4gICAgICAgICB7IC5jb21wYXRpYmxlID0gIm1l ZGlhdGVrLG10MjcwMS1kc2kiLA0KPiA+IEBAIC01NjIsMTIgKzU2NCwxMyBAQCBzdGF0aWMgaW50 IG10a19kcm1fcHJvYmUoc3RydWN0DQo+ID4gcGxhdGZvcm1fZGV2aWNlICpwZGV2KQ0KPiA+ICAg ICAgICAgICAgICAgICAgKi8NCj4gPiAgICAgICAgICAgICAgICAgaWYgKGNvbXBfdHlwZSA9PSBN VEtfRElTUF9DQ09SUiB8fA0KPiA+ICAgICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1U S19ESVNQX0NPTE9SIHx8DQo+ID4gKyAgICAgICAgICAgICAgICAgICBjb21wX3R5cGUgPT0gTVRL X0RJU1BfRFNDIHx8DQo+ID4gICAgICAgICAgICAgICAgICAgICBjb21wX3R5cGUgPT0gTVRLX0RJ U1BfR0FNTUEgfHwNCj4gPiAgICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRElT UF9PVkwgfHwNCj4gPiAgICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRElTUF9P VkxfMkwgfHwNCj4gPiAgICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRElTUF9S RE1BIHx8DQo+ID4gLSAgICAgICAgICAgICAgICAgICBjb21wX3R5cGUgPT0gTVRLX0RTSSB8fA0K PiA+IC0gICAgICAgICAgICAgICAgICAgY29tcF90eXBlID09IE1US19EUEkpIHsNCj4gPiArICAg ICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRFBJIHx8DQo+ID4gKyAgICAgICAgICAg ICAgICAgICBjb21wX3R5cGUgPT0gTVRLX0RTSSkgew0KPiA+ICAgICAgICAgICAgICAgICAgICAg ICAgIGRldl9pbmZvKGRldiwgIkFkZGluZyBjb21wb25lbnQgbWF0Y2ggZm9yDQo+ID4gJXBPRlxu IiwNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub2RlKTsNCj4gPiAgICAg ICAgICAgICAgICAgICAgICAgICBkcm1fb2ZfY29tcG9uZW50X21hdGNoX2FkZChkZXYsICZtYXRj aCwNCj4gPiBjb21wYXJlX29mLA0KPiA+IEBAIC02NjIsNiArNjY1LDcgQEAgc3RhdGljIHN0cnVj dCBwbGF0Zm9ybV9kcml2ZXINCj4gPiBtdGtfZHJtX3BsYXRmb3JtX2RyaXZlciA9IHsNCj4gPiAg c3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgKiBjb25zdCBtdGtfZHJtX2RyaXZlcnNbXSA9 IHsNCj4gPiAgICAgICAgICZtdGtfZGlzcF9jY29ycl9kcml2ZXIsDQo+ID4gICAgICAgICAmbXRr X2Rpc3BfY29sb3JfZHJpdmVyLA0KPiA+ICsgICAgICAgJm10a19kaXNwX2RzY19kcml2ZXIsDQo+ ID4gICAgICAgICAmbXRrX2Rpc3BfZ2FtbWFfZHJpdmVyLA0KPiA+ICAgICAgICAgJm10a19kaXNw X292bF9kcml2ZXIsDQo+ID4gICAgICAgICAmbXRrX2Rpc3BfcmRtYV9kcml2ZXIsDQo+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5oDQo+ID4gYi9k cml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuaA0KPiA+IGluZGV4IDYzN2Y1NjY5 ZTg5NS4uOGI3MjIzMzBlZjdkIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZWRp YXRlay9tdGtfZHJtX2Rydi5oDQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210 a19kcm1fZHJ2LmgNCj4gPiBAQCAtNTEsNiArNTEsNyBAQCBleHRlcm4gc3RydWN0IHBsYXRmb3Jt X2RyaXZlcg0KPiA+IG10a19kaXNwX2NvbG9yX2RyaXZlcjsNCj4gPiAgZXh0ZXJuIHN0cnVjdCBw bGF0Zm9ybV9kcml2ZXIgbXRrX2Rpc3BfZ2FtbWFfZHJpdmVyOw0KPiA+ICBleHRlcm4gc3RydWN0 IHBsYXRmb3JtX2RyaXZlciBtdGtfZGlzcF9vdmxfZHJpdmVyOw0KPiA+ICBleHRlcm4gc3RydWN0 IHBsYXRmb3JtX2RyaXZlciBtdGtfZGlzcF9yZG1hX2RyaXZlcjsNCj4gPiArZXh0ZXJuIHN0cnVj dCBwbGF0Zm9ybV9kcml2ZXIgbXRrX2Rpc3BfZHNjX2RyaXZlcjsNCj4gDQo+IEFscGhhYmV0aWMg b3JkZXIuDQoNCk9LLCBJJ2xsIGZpeCB0aGlzLg0KPiANCj4gUmVnYXJkcywNCj4gQ2h1bi1LdWFu Zy4NCj4gDQo+ID4gIGV4dGVybiBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyIG10a19kcGlfZHJpdmVy Ow0KPiA+ICBleHRlcm4gc3RydWN0IHBsYXRmb3JtX2RyaXZlciBtdGtfZHNpX2RyaXZlcjsNCj4g PiANCj4gPiAtLQ0KPiA+IDIuMTguMA0KPiA+IA0KDQpSZWdhcmRzLA0KSmFzb24tSkggTGluDQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0t a2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2Vy bmVsCg==