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=-5.5 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,UNWANTED_LANGUAGE_BODY, 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 92097C2D0DD for ; Thu, 2 Jan 2020 05:46:49 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 478DF206E6 for ; Thu, 2 Jan 2020 05:46:49 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="FoDK4KuK" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726039AbgABFqs (ORCPT ); Thu, 2 Jan 2020 00:46:48 -0500 Received: from mailgw01.mediatek.com ([210.61.82.183]:1339 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1725788AbgABFqs (ORCPT ); Thu, 2 Jan 2020 00:46:48 -0500 X-UUID: 633fb8d0d743414680ab0e9f1a78da79-20200102 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:Reply-To:From:Subject:Message-ID; bh=liAsqoERlVzV16eU7Ey8lXTmLdhFwakvFYgHcIUZuPc=; b=FoDK4KuKKsx8j4igcNtNzfel0Dd9ut32sSNzmUx+gd4qjhJFjg9ap9ZWVBcgAVVILCkcB1fO51YLlJjztnxs6m6Wq3O+B8g0nzJR97qhwul5wpG8r/Yh4FAaj+E//KgdG8hRthJAndKVRNkAUxMOSM9o8qar+67HKkSlYLJcjuo=; X-UUID: 633fb8d0d743414680ab0e9f1a78da79-20200102 Received: from mtkcas08.mediatek.inc [(172.21.101.126)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1710896627; Thu, 02 Jan 2020 13:46:38 +0800 Received: from MTKCAS32.mediatek.inc (172.27.4.184) by mtkmbs05n1.mediatek.inc (172.21.101.15) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Thu, 2 Jan 2020 13:46:12 +0800 Received: from [10.17.3.153] (10.17.3.153) by MTKCAS32.mediatek.inc (172.27.4.170) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Thu, 2 Jan 2020 13:47:01 +0800 Message-ID: <1577943906.15116.4.camel@mhfsdcap03> Subject: Re: [PATCH v6, 04/14] drm/mediatek: add mmsys private data for ddp path config From: Yongqiang Niu Reply-To: Yongqiang Niu To: CK Hu CC: Philipp Zabel , Rob Herring , Matthias Brugger , "David Airlie" , Daniel Vetter , Mark Rutland , , , , , Date: Thu, 2 Jan 2020 13:45:06 +0800 In-Reply-To: <1577943184.24650.10.camel@mtksdaap41> References: <1577937624-14313-1-git-send-email-yongqiang.niu@mediatek.com> <1577937624-14313-5-git-send-email-yongqiang.niu@mediatek.com> <1577943184.24650.10.camel@mtksdaap41> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 MIME-Version: 1.0 X-MTK: N Content-Transfer-Encoding: base64 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org T24gVGh1LCAyMDIwLTAxLTAyIGF0IDEzOjMzICswODAwLCBDSyBIdSB3cm90ZToNCj4gSGksIFlv bmdxaWFuZzoNCj4gDQo+IE9uIFRodSwgMjAyMC0wMS0wMiBhdCAxMjowMCArMDgwMCwgWW9uZ3Fp YW5nIE5pdSB3cm90ZToNCj4gPiBUaGlzIHBhdGNoIGFkZCBtbXN5cyBwcml2YXRlIGRhdGEgZm9y IGRkcCBwYXRoIGNvbmZpZw0KPiA+IGFsbCB0aGVzZSByZWdpc3RlciBvZmZzZXQgYW5kIHZhbHVl IHdpbGwgYmUgZGlmZmVyZW50IGluIGZ1dHVyZSBTT0MNCj4gPiBhZGQgdGhlc2UgZGVmaW5lIGlu dG8gbW1zeXMgcHJpdmF0ZSBkYXRhDQo+ID4gCXUzMiBvdmwwX21vdXRfZW47DQo+ID4gCXUzMiBy ZG1hMV9zb3V0X3NlbF9pbjsNCj4gPiAJdTMyIHJkbWExX3NvdXRfZHNpMDsNCj4gPiAJdTMyIGRw aTBfc2VsX2luOw0KPiA+IAl1MzIgZHBpMF9zZWxfaW5fcmRtYTE7DQo+ID4gCXUzMiBkc2kwX3Nl bF9pbjsNCj4gPiAJdTMyIGRzaTBfc2VsX2luX3JkbWExOw0KPiA+IA0KPiA+IFNpZ25lZC1vZmYt Ynk6IFlvbmdxaWFuZyBOaXUgPHlvbmdxaWFuZy5uaXVAbWVkaWF0ZWsuY29tPg0KPiA+IC0tLQ0K PiA+ICBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9jcnRjLmMgfCAgNCArKysNCj4g PiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwLmMgIHwgNjMgKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tDQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9t dGtfZHJtX2RkcC5oICB8ICA2ICsrKysNCj4gPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210 a19kcm1fZHJ2LmMgIHwgIDMgKysNCj4gPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19k cm1fZHJ2LmggIHwgIDMgKysNCj4gPiAgNSBmaWxlcyBjaGFuZ2VkLCA2MyBpbnNlcnRpb25zKCsp LCAxNiBkZWxldGlvbnMoLSkNCj4gPiANCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L21lZGlhdGVrL210a19kcm1fY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19k cm1fY3J0Yy5jDQo+ID4gaW5kZXggZTQ3Y2Y4NC4uOWFhY2JjZiAxMDA2NDQNCj4gPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9jcnRjLmMNCj4gPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9jcnRjLmMNCj4gPiBAQCAtNDQsNiArNDQsNyBAQCBz dHJ1Y3QgbXRrX2RybV9jcnRjIHsNCj4gPiAgCWJvb2wJCQkJcGVuZGluZ19wbGFuZXM7DQo+ID4g IA0KPiA+ICAJc3RydWN0IHJlZ21hcAkJCSpjb25maWdfcmVnczsNCj4gPiArCWNvbnN0IHN0cnVj dCBtdGtfbW1zeXNfcmVnX2RhdGEgKm1tc3lzX3JlZ19kYXRhOw0KPiA+ICAJc3RydWN0IG10a19k aXNwX211dGV4CQkqbXV0ZXg7DQo+ID4gIAl1bnNpZ25lZCBpbnQJCQlkZHBfY29tcF9ucjsNCj4g PiAgCXN0cnVjdCBtdGtfZGRwX2NvbXAJCSoqZGRwX2NvbXA7DQo+ID4gQEAgLTI4Myw2ICsyODQs NyBAQCBzdGF0aWMgaW50IG10a19jcnRjX2RkcF9od19pbml0KHN0cnVjdCBtdGtfZHJtX2NydGMg Km10a19jcnRjKQ0KPiA+ICAJRFJNX0RFQlVHX0RSSVZFUigibWVkaWF0ZWtfZGRwX2RkcF9wYXRo X3NldHVwXG4iKTsNCj4gPiAgCWZvciAoaSA9IDA7IGkgPCBtdGtfY3J0Yy0+ZGRwX2NvbXBfbnIg LSAxOyBpKyspIHsNCj4gPiAgCQltdGtfZGRwX2FkZF9jb21wX3RvX3BhdGgobXRrX2NydGMtPmNv bmZpZ19yZWdzLA0KPiA+ICsJCQkJCSBtdGtfY3J0Yy0+bW1zeXNfcmVnX2RhdGEsDQo+ID4gIAkJ CQkJIG10a19jcnRjLT5kZHBfY29tcFtpXS0+aWQsDQo+ID4gIAkJCQkJIG10a19jcnRjLT5kZHBf Y29tcFtpICsgMV0tPmlkKTsNCj4gPiAgCQltdGtfZGlzcF9tdXRleF9hZGRfY29tcChtdGtfY3J0 Yy0+bXV0ZXgsDQo+ID4gQEAgLTM0MCw2ICszNDIsNyBAQCBzdGF0aWMgdm9pZCBtdGtfY3J0Y19k ZHBfaHdfZmluaShzdHJ1Y3QgbXRrX2RybV9jcnRjICptdGtfY3J0YykNCj4gPiAgCW10a19kaXNw X211dGV4X2Rpc2FibGUobXRrX2NydGMtPm11dGV4KTsNCj4gPiAgCWZvciAoaSA9IDA7IGkgPCBt dGtfY3J0Yy0+ZGRwX2NvbXBfbnIgLSAxOyBpKyspIHsNCj4gPiAgCQltdGtfZGRwX3JlbW92ZV9j b21wX2Zyb21fcGF0aChtdGtfY3J0Yy0+Y29uZmlnX3JlZ3MsDQo+ID4gKwkJCQkJICAgICAgbXRr X2NydGMtPm1tc3lzX3JlZ19kYXRhLA0KPiA+ICAJCQkJCSAgICAgIG10a19jcnRjLT5kZHBfY29t cFtpXS0+aWQsDQo+ID4gIAkJCQkJICAgICAgbXRrX2NydGMtPmRkcF9jb21wW2kgKyAxXS0+aWQp Ow0KPiA+ICAJCW10a19kaXNwX211dGV4X3JlbW92ZV9jb21wKG10a19jcnRjLT5tdXRleCwNCj4g PiBAQCAtNjQ5LDYgKzY1Miw3IEBAIGludCBtdGtfZHJtX2NydGNfY3JlYXRlKHN0cnVjdCBkcm1f ZGV2aWNlICpkcm1fZGV2LA0KPiA+ICAJCXJldHVybiAtRU5PTUVNOw0KPiA+ICANCj4gPiAgCW10 a19jcnRjLT5jb25maWdfcmVncyA9IHByaXYtPmNvbmZpZ19yZWdzOw0KPiA+ICsJbXRrX2NydGMt Pm1tc3lzX3JlZ19kYXRhID0gcHJpdi0+ZGF0YS0+cmVnX2RhdGE7DQo+ID4gIAltdGtfY3J0Yy0+ ZGRwX2NvbXBfbnIgPSBwYXRoX2xlbjsNCj4gPiAgCW10a19jcnRjLT5kZHBfY29tcCA9IGRldm1f a21hbGxvY19hcnJheShkZXYsIG10a19jcnRjLT5kZHBfY29tcF9uciwNCj4gPiAgCQkJCQkJc2l6 ZW9mKCptdGtfY3J0Yy0+ZGRwX2NvbXApLA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vbWVkaWF0ZWsvbXRrX2RybV9kZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtf ZHJtX2RkcC5jDQo+ID4gaW5kZXggZjk5Zjg5YTEuLmVhMGNlMzIgMTAwNjQ0DQo+ID4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwLmMNCj4gPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHAuYw0KPiA+IEBAIC0xNjgsNiArMTY4LDE2IEBA IHN0cnVjdCBtdGtfZGRwIHsNCj4gPiAgCWNvbnN0IHN0cnVjdCBtdGtfZGRwX2RhdGEJKmRhdGE7 DQo+ID4gIH07DQo+ID4gIA0KPiA+ICtzdHJ1Y3QgbXRrX21tc3lzX3JlZ19kYXRhIHsNCj4gPiAr CXUzMiBvdmwwX21vdXRfZW47DQo+ID4gKwl1MzIgcmRtYTFfc291dF9zZWxfaW47DQo+ID4gKwl1 MzIgcmRtYTFfc291dF9kcGkwOw0KPiA+ICsJdTMyIGRwaTBfc2VsX2luOw0KPiA+ICsJdTMyIGRw aTBfc2VsX2luX3JkbWExOw0KPiA+ICsJdTMyIGRzaTBfc2VsX2luOw0KPiA+ICsJdTMyIGRzaTBf c2VsX2luX3JkbWExOw0KPiANCj4gVGhpcyBwYXRjaCBsb29rcyBsaWtlIGEgY29tYmluYXRpb24g b2YgdHdvIHBhdGNoZXMuIE9uZSBpcyBhIGJ1ZyBmaXgNCj4gdGhhdCBkc2kwX3NlbF9pbiBhbmQg ZHNpMF9zZWxfaW5fcmRtYTEgYXJlIGRpZmZlcmVudCBpbiBNVDgxNzMgYW5kDQo+IE1UMjcwMS4g QW5kIHRoZSBvdGhlciBpcyB0aGF0IG92bDBfbW91dF9lbiwgcmRtYTFfc291dF9zZWxfaW4sDQo+ IHJkbWExX3NvdXRfZHBpMCwgZHBpMF9zZWxfaW4sIGRwaTBfc2VsX2luX3JkbWExIGFyZSBkaWZm ZXJlbnQgaW4gTVQ4MTgzLg0KPiANCj4gUmVnYXJkcywNCj4gQ0sNCg0KaSB3aWxsIHNwbGl0IHRo aXMgaW50byBtb3JlIHBhdGNoZXMgaW4gbmV4dCB2ZXJzaW9uDQo+IA0KPiA+ICt9Ow0KPiA+ICsN Cj4gPiAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBtdDI3MDFfbXV0ZXhfbW9kW0REUF9DT01Q T05FTlRfSURfTUFYXSA9IHsNCj4gPiAgCVtERFBfQ09NUE9ORU5UX0JMU10gPSBNVDI3MDFfTVVU RVhfTU9EX0RJU1BfQkxTLA0KPiA+ICAJW0REUF9DT01QT05FTlRfQ09MT1IwXSA9IE1UMjcwMV9N VVRFWF9NT0RfRElTUF9DT0xPUiwNCj4gPiBAQCAtMjQ2LDE3ICsyNTYsMzQgQEAgc3RydWN0IG10 a19kZHAgew0KPiA+ICAJLm11dGV4X3NvZl9yZWcgPSBNVDI3MDFfRElTUF9NVVRFWDBfU09GMCwN Cj4gPiAgfTsNCj4gPiAgDQo+ID4gLXN0YXRpYyB1bnNpZ25lZCBpbnQgbXRrX2RkcF9tb3V0X2Vu KGVudW0gbXRrX2RkcF9jb21wX2lkIGN1ciwNCj4gPiArY29uc3Qgc3RydWN0IG10a19tbXN5c19y ZWdfZGF0YSBtdDI3MDFfbW1zeXNfcmVnX2RhdGEgPSB7DQo+ID4gKwkub3ZsMF9tb3V0X2VuID0g RElTUF9SRUdfQ09ORklHX0RJU1BfT1ZMX01PVVRfRU4sDQo+ID4gKwkuZHNpMF9zZWxfaW4gPSBE SVNQX1JFR19DT05GSUdfRFNJX1NFTCwNCj4gPiArCS5kc2kwX3NlbF9pbl9yZG1hMSA9IERTSV9T RUxfSU5fUkRNQSwNCj4gPiArfTsNCj4gPiArDQo+ID4gK2NvbnN0IHN0cnVjdCBtdGtfbW1zeXNf cmVnX2RhdGEgbXQ4MTczX21tc3lzX3JlZ19kYXRhID0gew0KPiA+ICsJLm92bDBfbW91dF9lbiA9 IERJU1BfUkVHX0NPTkZJR19ESVNQX09WTDBfTU9VVF9FTiwNCj4gPiArCS5yZG1hMV9zb3V0X3Nl bF9pbiA9IERJU1BfUkVHX0NPTkZJR19ESVNQX1JETUExX1NPVVRfRU4sDQo+ID4gKwkucmRtYTFf c291dF9kcGkwID0gUkRNQTFfU09VVF9EUEkwLA0KPiA+ICsJLmRwaTBfc2VsX2luID0gRElTUF9S RUdfQ09ORklHX0RQSV9TRUxfSU4sDQo+ID4gKwkuZHBpMF9zZWxfaW5fcmRtYTEgPSBEUEkwX1NF TF9JTl9SRE1BMSwNCj4gPiArCS5kc2kwX3NlbF9pbiA9IERJU1BfUkVHX0NPTkZJR19EU0lFX1NF TF9JTiwNCj4gPiArCS5kc2kwX3NlbF9pbl9yZG1hMSA9IERTSTBfU0VMX0lOX1JETUExLA0KPiA+ ICt9Ow0KPiA+ICsNCj4gPiArc3RhdGljIHVuc2lnbmVkIGludCBtdGtfZGRwX21vdXRfZW4oY29u c3Qgc3RydWN0IG10a19tbXN5c19yZWdfZGF0YSAqZGF0YSwNCj4gPiArCQkJCSAgICBlbnVtIG10 a19kZHBfY29tcF9pZCBjdXIsDQo+ID4gIAkJCQkgICAgZW51bSBtdGtfZGRwX2NvbXBfaWQgbmV4 dCwNCj4gPiAgCQkJCSAgICB1bnNpZ25lZCBpbnQgKmFkZHIpDQo+ID4gIHsNCj4gPiAgCXVuc2ln bmVkIGludCB2YWx1ZTsNCj4gPiAgDQo+ID4gIAlpZiAoY3VyID09IEREUF9DT01QT05FTlRfT1ZM MCAmJiBuZXh0ID09IEREUF9DT01QT05FTlRfQ09MT1IwKSB7DQo+ID4gLQkJKmFkZHIgPSBESVNQ X1JFR19DT05GSUdfRElTUF9PVkwwX01PVVRfRU47DQo+ID4gKwkJKmFkZHIgPSBkYXRhLT5vdmww X21vdXRfZW47DQo+ID4gIAkJdmFsdWUgPSBPVkwwX01PVVRfRU5fQ09MT1IwOw0KPiA+ICAJfSBl bHNlIGlmIChjdXIgPT0gRERQX0NPTVBPTkVOVF9PVkwwICYmIG5leHQgPT0gRERQX0NPTVBPTkVO VF9SRE1BMCkgew0KPiA+IC0JCSphZGRyID0gRElTUF9SRUdfQ09ORklHX0RJU1BfT1ZMX01PVVRf RU47DQo+ID4gKwkJKmFkZHIgPSBkYXRhLT5vdmwwX21vdXRfZW47DQo+ID4gIAkJdmFsdWUgPSBP VkxfTU9VVF9FTl9SRE1BOw0KPiA+ICAJfSBlbHNlIGlmIChjdXIgPT0gRERQX0NPTVBPTkVOVF9P RDAgJiYgbmV4dCA9PSBERFBfQ09NUE9ORU5UX1JETUEwKSB7DQo+ID4gIAkJKmFkZHIgPSBESVNQ X1JFR19DT05GSUdfRElTUF9PRF9NT1VUX0VOOw0KPiA+IEBAIC0yOTgsOCArMzI1LDggQEAgc3Rh dGljIHVuc2lnbmVkIGludCBtdGtfZGRwX21vdXRfZW4oZW51bSBtdGtfZGRwX2NvbXBfaWQgY3Vy LA0KPiA+ICAJCSphZGRyID0gRElTUF9SRUdfQ09ORklHX0RJU1BfUkRNQTFfU09VVF9FTjsNCj4g PiAgCQl2YWx1ZSA9IFJETUExX1NPVVRfRFNJMzsNCj4gPiAgCX0gZWxzZSBpZiAoY3VyID09IERE UF9DT01QT05FTlRfUkRNQTEgJiYgbmV4dCA9PSBERFBfQ09NUE9ORU5UX0RQSTApIHsNCj4gPiAt CQkqYWRkciA9IERJU1BfUkVHX0NPTkZJR19ESVNQX1JETUExX1NPVVRfRU47DQo+ID4gLQkJdmFs dWUgPSBSRE1BMV9TT1VUX0RQSTA7DQo+ID4gKwkJKmFkZHIgPSBkYXRhLT5yZG1hMV9zb3V0X3Nl bF9pbjsNCj4gPiArCQl2YWx1ZSA9IGRhdGEtPnJkbWExX3NvdXRfZHBpMDsNCj4gPiAgCX0gZWxz ZSBpZiAoY3VyID09IEREUF9DT01QT05FTlRfUkRNQTEgJiYgbmV4dCA9PSBERFBfQ09NUE9ORU5U X0RQSTEpIHsNCj4gPiAgCQkqYWRkciA9IERJU1BfUkVHX0NPTkZJR19ESVNQX1JETUExX1NPVVRf RU47DQo+ID4gIAkJdmFsdWUgPSBSRE1BMV9TT1VUX0RQSTE7DQo+ID4gQEAgLTMyNSw3ICszNTIs OCBAQCBzdGF0aWMgdW5zaWduZWQgaW50IG10a19kZHBfbW91dF9lbihlbnVtIG10a19kZHBfY29t cF9pZCBjdXIsDQo+ID4gIAlyZXR1cm4gdmFsdWU7DQo+ID4gIH0NCj4gPiAgDQo+ID4gLXN0YXRp YyB1bnNpZ25lZCBpbnQgbXRrX2RkcF9zZWxfaW4oZW51bSBtdGtfZGRwX2NvbXBfaWQgY3VyLA0K PiA+ICtzdGF0aWMgdW5zaWduZWQgaW50IG10a19kZHBfc2VsX2luKGNvbnN0IHN0cnVjdCBtdGtf bW1zeXNfcmVnX2RhdGEgKmRhdGEsDQo+ID4gKwkJCQkgICBlbnVtIG10a19kZHBfY29tcF9pZCBj dXIsDQo+ID4gIAkJCQkgICBlbnVtIG10a19kZHBfY29tcF9pZCBuZXh0LA0KPiA+ICAJCQkJICAg dW5zaWduZWQgaW50ICphZGRyKQ0KPiA+ICB7DQo+ID4gQEAgLTMzNSwxNCArMzYzLDE0IEBAIHN0 YXRpYyB1bnNpZ25lZCBpbnQgbXRrX2RkcF9zZWxfaW4oZW51bSBtdGtfZGRwX2NvbXBfaWQgY3Vy LA0KPiA+ICAJCSphZGRyID0gRElTUF9SRUdfQ09ORklHX0RJU1BfQ09MT1IwX1NFTF9JTjsNCj4g PiAgCQl2YWx1ZSA9IENPTE9SMF9TRUxfSU5fT1ZMMDsNCj4gPiAgCX0gZWxzZSBpZiAoY3VyID09 IEREUF9DT01QT05FTlRfUkRNQTEgJiYgbmV4dCA9PSBERFBfQ09NUE9ORU5UX0RQSTApIHsNCj4g PiAtCQkqYWRkciA9IERJU1BfUkVHX0NPTkZJR19EUElfU0VMX0lOOw0KPiA+IC0JCXZhbHVlID0g RFBJMF9TRUxfSU5fUkRNQTE7DQo+ID4gKwkJKmFkZHIgPSBkYXRhLT5kcGkwX3NlbF9pbjsNCj4g PiArCQl2YWx1ZSA9IGRhdGEtPmRwaTBfc2VsX2luX3JkbWExOw0KPiA+ICAJfSBlbHNlIGlmIChj dXIgPT0gRERQX0NPTVBPTkVOVF9SRE1BMSAmJiBuZXh0ID09IEREUF9DT01QT05FTlRfRFBJMSkg ew0KPiA+ICAJCSphZGRyID0gRElTUF9SRUdfQ09ORklHX0RQSV9TRUxfSU47DQo+ID4gIAkJdmFs dWUgPSBEUEkxX1NFTF9JTl9SRE1BMTsNCj4gPiAgCX0gZWxzZSBpZiAoY3VyID09IEREUF9DT01Q T05FTlRfUkRNQTEgJiYgbmV4dCA9PSBERFBfQ09NUE9ORU5UX0RTSTApIHsNCj4gPiAtCQkqYWRk ciA9IERJU1BfUkVHX0NPTkZJR19EU0lFX1NFTF9JTjsNCj4gPiAtCQl2YWx1ZSA9IERTSTBfU0VM X0lOX1JETUExOw0KPiA+ICsJCSphZGRyID0gZGF0YS0+ZHNpMF9zZWxfaW47DQo+ID4gKwkJdmFs dWUgPSBkYXRhLT5kc2kwX3NlbF9pbl9yZG1hMTsNCj4gPiAgCX0gZWxzZSBpZiAoY3VyID09IERE UF9DT01QT05FTlRfUkRNQTEgJiYgbmV4dCA9PSBERFBfQ09NUE9ORU5UX0RTSTEpIHsNCj4gPiAg CQkqYWRkciA9IERJU1BfUkVHX0NPTkZJR19EU0lPX1NFTF9JTjsNCj4gPiAgCQl2YWx1ZSA9IERT STFfU0VMX0lOX1JETUExOw0KPiA+IEBAIC0zODksNyArNDE3LDggQEAgc3RhdGljIHVuc2lnbmVk IGludCBtdGtfZGRwX3NlbF9pbihlbnVtIG10a19kZHBfY29tcF9pZCBjdXIsDQo+ID4gIAlyZXR1 cm4gdmFsdWU7DQo+ID4gIH0NCj4gPiAgDQo+ID4gLXN0YXRpYyB1bnNpZ25lZCBpbnQgbXRrX2Rk cF9zb3V0X3NlbChlbnVtIG10a19kZHBfY29tcF9pZCBjdXIsDQo+ID4gK3N0YXRpYyB1bnNpZ25l ZCBpbnQgbXRrX2RkcF9zb3V0X3NlbChjb25zdCBzdHJ1Y3QgbXRrX21tc3lzX3JlZ19kYXRhICpk YXRhLA0KPiA+ICsJCQkJICAgICBlbnVtIG10a19kZHBfY29tcF9pZCBjdXIsDQo+ID4gIAkJCQkg ICAgIGVudW0gbXRrX2RkcF9jb21wX2lkIG5leHQsDQo+ID4gIAkJCQkgICAgIHVuc2lnbmVkIGlu dCAqYWRkcikNCj4gPiAgew0KPiA+IEBAIC00MDksMzUgKzQzOCwzNyBAQCBzdGF0aWMgdW5zaWdu ZWQgaW50IG10a19kZHBfc291dF9zZWwoZW51bSBtdGtfZGRwX2NvbXBfaWQgY3VyLA0KPiA+ICB9 DQo+ID4gIA0KPiA+ICB2b2lkIG10a19kZHBfYWRkX2NvbXBfdG9fcGF0aChzdHJ1Y3QgcmVnbWFw ICpjb25maWdfcmVncywNCj4gPiArCQkJICAgICAgY29uc3Qgc3RydWN0IG10a19tbXN5c19yZWdf ZGF0YSAqcmVnX2RhdGEsDQo+ID4gIAkJCSAgICAgIGVudW0gbXRrX2RkcF9jb21wX2lkIGN1ciwN Cj4gPiAgCQkJICAgICAgZW51bSBtdGtfZGRwX2NvbXBfaWQgbmV4dCkNCj4gPiAgew0KPiA+ICAJ dW5zaWduZWQgaW50IGFkZHIsIHZhbHVlOw0KPiA+ICANCj4gPiAtCXZhbHVlID0gbXRrX2RkcF9t b3V0X2VuKGN1ciwgbmV4dCwgJmFkZHIpOw0KPiA+ICsJdmFsdWUgPSBtdGtfZGRwX21vdXRfZW4o cmVnX2RhdGEsIGN1ciwgbmV4dCwgJmFkZHIpOw0KPiA+ICAJaWYgKHZhbHVlKQ0KPiA+ICAJCXJl Z21hcF91cGRhdGVfYml0cyhjb25maWdfcmVncywgYWRkciwgdmFsdWUsIHZhbHVlKTsNCj4gPiAg DQo+ID4gLQl2YWx1ZSA9IG10a19kZHBfc291dF9zZWwoY3VyLCBuZXh0LCAmYWRkcik7DQo+ID4g Kwl2YWx1ZSA9IG10a19kZHBfc291dF9zZWwocmVnX2RhdGEsIGN1ciwgbmV4dCwgJmFkZHIpOw0K PiA+ICAJaWYgKHZhbHVlKQ0KPiA+ICAJCXJlZ21hcF91cGRhdGVfYml0cyhjb25maWdfcmVncywg YWRkciwgdmFsdWUsIHZhbHVlKTsNCj4gPiAgDQo+ID4gLQl2YWx1ZSA9IG10a19kZHBfc2VsX2lu KGN1ciwgbmV4dCwgJmFkZHIpOw0KPiA+ICsJdmFsdWUgPSBtdGtfZGRwX3NlbF9pbihyZWdfZGF0 YSwgY3VyLCBuZXh0LCAmYWRkcik7DQo+ID4gIAlpZiAodmFsdWUpDQo+ID4gIAkJcmVnbWFwX3Vw ZGF0ZV9iaXRzKGNvbmZpZ19yZWdzLCBhZGRyLCB2YWx1ZSwgdmFsdWUpOw0KPiA+ICB9DQo+ID4g IA0KPiA+ICB2b2lkIG10a19kZHBfcmVtb3ZlX2NvbXBfZnJvbV9wYXRoKHN0cnVjdCByZWdtYXAg KmNvbmZpZ19yZWdzLA0KPiA+ICsJCQkJICAgY29uc3Qgc3RydWN0IG10a19tbXN5c19yZWdfZGF0 YSAqcmVnX2RhdGEsDQo+ID4gIAkJCQkgICBlbnVtIG10a19kZHBfY29tcF9pZCBjdXIsDQo+ID4g IAkJCQkgICBlbnVtIG10a19kZHBfY29tcF9pZCBuZXh0KQ0KPiA+ICB7DQo+ID4gIAl1bnNpZ25l ZCBpbnQgYWRkciwgdmFsdWU7DQo+ID4gIA0KPiA+IC0JdmFsdWUgPSBtdGtfZGRwX21vdXRfZW4o Y3VyLCBuZXh0LCAmYWRkcik7DQo+ID4gKwl2YWx1ZSA9IG10a19kZHBfbW91dF9lbihyZWdfZGF0 YSwgY3VyLCBuZXh0LCAmYWRkcik7DQo+ID4gIAlpZiAodmFsdWUpDQo+ID4gIAkJcmVnbWFwX3Vw ZGF0ZV9iaXRzKGNvbmZpZ19yZWdzLCBhZGRyLCB2YWx1ZSwgMCk7DQo+ID4gIA0KPiA+IC0JdmFs dWUgPSBtdGtfZGRwX3NlbF9pbihjdXIsIG5leHQsICZhZGRyKTsNCj4gPiArCXZhbHVlID0gbXRr X2RkcF9zZWxfaW4ocmVnX2RhdGEsIGN1ciwgbmV4dCwgJmFkZHIpOw0KPiA+ICAJaWYgKHZhbHVl KQ0KPiA+ICAJCXJlZ21hcF91cGRhdGVfYml0cyhjb25maWdfcmVncywgYWRkciwgdmFsdWUsIDAp Ow0KPiA+ICB9DQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtf ZHJtX2RkcC5oIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwLmgNCj4gPiBp bmRleCAwMWZmOGI2Li43NWZhNTZlIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9t ZWRpYXRlay9tdGtfZHJtX2RkcC5oDQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19kcm1fZGRwLmgNCj4gPiBAQCAtMTEsMTEgKzExLDE3IEBADQo+ID4gIHN0cnVjdCByZWdt YXA7DQo+ID4gIHN0cnVjdCBkZXZpY2U7DQo+ID4gIHN0cnVjdCBtdGtfZGlzcF9tdXRleDsNCj4g PiArc3RydWN0IG10a19tbXN5c19yZWdfZGF0YTsNCj4gPiArDQo+ID4gK2V4dGVybiBjb25zdCBz dHJ1Y3QgbXRrX21tc3lzX3JlZ19kYXRhIG10MjcwMV9tbXN5c19yZWdfZGF0YTsNCj4gPiArZXh0 ZXJuIGNvbnN0IHN0cnVjdCBtdGtfbW1zeXNfcmVnX2RhdGEgbXQ4MTczX21tc3lzX3JlZ19kYXRh Ow0KPiA+ICANCj4gPiAgdm9pZCBtdGtfZGRwX2FkZF9jb21wX3RvX3BhdGgoc3RydWN0IHJlZ21h cCAqY29uZmlnX3JlZ3MsDQo+ID4gKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBtdGtfbW1zeXNfcmVn X2RhdGEgKnJlZ19kYXRhLA0KPiA+ICAJCQkgICAgICBlbnVtIG10a19kZHBfY29tcF9pZCBjdXIs DQo+ID4gIAkJCSAgICAgIGVudW0gbXRrX2RkcF9jb21wX2lkIG5leHQpOw0KPiA+ICB2b2lkIG10 a19kZHBfcmVtb3ZlX2NvbXBfZnJvbV9wYXRoKHN0cnVjdCByZWdtYXAgKmNvbmZpZ19yZWdzLA0K PiA+ICsJCQkJICAgY29uc3Qgc3RydWN0IG10a19tbXN5c19yZWdfZGF0YSAqcmVnX2RhdGEsDQo+ ID4gIAkJCQkgICBlbnVtIG10a19kZHBfY29tcF9pZCBjdXIsDQo+ID4gIAkJCQkgICBlbnVtIG10 a19kZHBfY29tcF9pZCBuZXh0KTsNCj4gPiAgDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210 a19kcm1fZHJ2LmMNCj4gPiBpbmRleCBmNjlhZjQyLi5lMzI5M2NmOCAxMDA2NDQNCj4gPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYw0KPiA+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jDQo+ID4gQEAgLTE4NSw2ICsxODUsNyBA QCBzdGF0aWMgaW50IG10a19hdG9taWNfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sDQo+ ID4gIAkubWFpbl9sZW4gPSBBUlJBWV9TSVpFKG10MjcwMV9tdGtfZGRwX21haW4pLA0KPiA+ICAJ LmV4dF9wYXRoID0gbXQyNzAxX210a19kZHBfZXh0LA0KPiA+ICAJLmV4dF9sZW4gPSBBUlJBWV9T SVpFKG10MjcwMV9tdGtfZGRwX2V4dCksDQo+ID4gKwkucmVnX2RhdGEgPSAmbXQyNzAxX21tc3lz X3JlZ19kYXRhLA0KPiA+ICAJLnNoYWRvd19yZWdpc3RlciA9IHRydWUsDQo+ID4gIAkuY2xrX2Ry dl9uYW1lID0gImNsay1tdDI3MDEtbW0iLA0KPiA+ICB9Ow0KPiA+IEBAIC0xOTYsNiArMTk3LDcg QEAgc3RhdGljIGludCBtdGtfYXRvbWljX2NvbW1pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLA0K PiA+ICAJLmV4dF9sZW4gPSBBUlJBWV9TSVpFKG10MjcxMl9tdGtfZGRwX2V4dCksDQo+ID4gIAku dGhpcmRfcGF0aCA9IG10MjcxMl9tdGtfZGRwX3RoaXJkLA0KPiA+ICAJLnRoaXJkX2xlbiA9IEFS UkFZX1NJWkUobXQyNzEyX210a19kZHBfdGhpcmQpLA0KPiA+ICsJLnJlZ19kYXRhID0gJm10ODE3 M19tbXN5c19yZWdfZGF0YSwNCj4gPiAgCS5jbGtfZHJ2X25hbWUgPSAiY2xrLW10MjcxMi1tbSIs DQo+ID4gIH07DQo+ID4gIA0KPiA+IEBAIC0yMDQsNiArMjA2LDcgQEAgc3RhdGljIGludCBtdGtf YXRvbWljX2NvbW1pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLA0KPiA+ICAJLm1haW5fbGVuID0g QVJSQVlfU0laRShtdDgxNzNfbXRrX2RkcF9tYWluKSwNCj4gPiAgCS5leHRfcGF0aCA9IG10ODE3 M19tdGtfZGRwX2V4dCwNCj4gPiAgCS5leHRfbGVuID0gQVJSQVlfU0laRShtdDgxNzNfbXRrX2Rk cF9leHQpLA0KPiA+ICsJLnJlZ19kYXRhID0gJm10ODE3M19tbXN5c19yZWdfZGF0YSwNCj4gPiAg CS5jbGtfZHJ2X25hbWUgPSAiY2xrLW10ODE3My1tbSIsDQo+ID4gIH07DQo+ID4gIA0KPiA+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuaCBiL2RyaXZl cnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5oDQo+ID4gaW5kZXggOGZlOTEzNi4uOWQ4 NzQ0MSAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9k cnYuaA0KPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5oDQo+ ID4gQEAgLTcsNiArNyw3IEBADQo+ID4gICNkZWZpbmUgTVRLX0RSTV9EUlZfSA0KPiA+ICANCj4g PiAgI2luY2x1ZGUgPGxpbnV4L2lvLmg+DQo+ID4gKyNpbmNsdWRlICJtdGtfZHJtX2RkcC5oIg0K PiA+ICAjaW5jbHVkZSAibXRrX2RybV9kZHBfY29tcC5oIg0KPiA+ICANCj4gPiAgI2RlZmluZSBN QVhfQ1JUQwkzDQo+ID4gQEAgLTI4LDYgKzI5LDggQEAgc3RydWN0IG10a19tbXN5c19kcml2ZXJf ZGF0YSB7DQo+ID4gIAljb25zdCBlbnVtIG10a19kZHBfY29tcF9pZCAqdGhpcmRfcGF0aDsNCj4g PiAgCXVuc2lnbmVkIGludCB0aGlyZF9sZW47DQo+ID4gIA0KPiA+ICsJY29uc3Qgc3RydWN0IG10 a19tbXN5c19yZWdfZGF0YSAqcmVnX2RhdGE7DQo+ID4gKw0KPiA+ICAJYm9vbCBzaGFkb3dfcmVn aXN0ZXI7DQo+ID4gIAljb25zdCBjaGFyICpjbGtfZHJ2X25hbWU7DQo+ID4gIH07DQo+IA0KPiAN Cg0K