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=-10.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham 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 4F1FEC4742C for ; Mon, 16 Nov 2020 16:14:17 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 E57042222C for ; Mon, 16 Nov 2020 16:14:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="DthcnY8O" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E57042222C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=BeZ781d1BkA9H6Mug5TObPkBfpZdiCTFqYy8W7TzL4A=; b=DthcnY8O8ny0kLhUkDdsGzsV8 5rnC7LKbGjWe5V+uxp2yPzgfsQYiQlskhXlG9tkG1r7AkOd0kjWM6LGUjToJ5VaTNNKoNQtzgLPzg VFNGDamxevUlPny19QzRKT1hIzr98ZVS2J6eY11024TBfJYvOFbbJQAZPhDAOY1RPQR1Acl5c+Xrk lUXA6XUfujHPYk43TsXsA4LfHTeNSDLBc624sp8TVuQNilmPWO+p+MjhZgwnoRKoHt8p+WybyCAnm RwBpH/o2uBr//bmAEvwPpBRQDjjdXzaO+GGsnKPkuBgsCFwasnrJKX6LGqzsiH+gPbjMeob8Qbfel hSfaK03Mw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1keh8V-0005eJ-AJ; Mon, 16 Nov 2020 16:13:47 +0000 Received: from mail-wr1-f66.google.com ([209.85.221.66]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1keh8R-0005dX-7u for linux-arm-kernel@lists.infradead.org; Mon, 16 Nov 2020 16:13:44 +0000 Received: by mail-wr1-f66.google.com with SMTP id u12so12072107wrt.0 for ; Mon, 16 Nov 2020 08:13:43 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=TiBrlRCI15rff/Wy8SUCXOuFom01xos98s3Zf+OsoY8=; b=tl2MJsH2GkEWSTWI6LqVcneddnIIH07gnmW+SBTYdzLQ1xjV6UzHun22smpcWSadlM GI63f9UZfigjNsJopR8ApNqafukKl/MbtSHtd6YEMjmv/ah+dNclZSBJOpCJ4OggU8rS sOY0HAnToQ/LaRNDRkm7TX6udcf2LSxOyBSbIFXIBv/2qEscPq75/XnBU22jvzM1h5GZ 2HxfhXPNKg9aEZxDi5e7tS7DhroGK844+Aw8S+bTsISeGyVNqhsvvEp/Gtt8d8hTQ8IT AXszx5cr8R03/X+5pdl0snsC8pXR1wTF3XXDK89mc73wQlVn7EP28dc8K77FuP6qyitL 6rxg== X-Gm-Message-State: AOAM530QjOhVnZbysjJcT/CslLHWBJMArHGplvbjvkjag0z/e51K6fCO hPPcwLMGiQEAiw5d9gQfWYY= X-Google-Smtp-Source: ABdhPJxEVpZHOstjss2BvVmXfoLehvX88HeBMF4Na+y7JvN2fejsZMWwbBwjPSP/WA8Q3bChRxueLw== X-Received: by 2002:adf:db0f:: with SMTP id s15mr20323116wri.354.1605543222021; Mon, 16 Nov 2020 08:13:42 -0800 (PST) Received: from kozik-lap (adsl-84-226-167-205.adslplus.ch. [84.226.167.205]) by smtp.googlemail.com with ESMTPSA id i11sm24203233wro.85.2020.11.16.08.13.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Nov 2020 08:13:39 -0800 (PST) Date: Mon, 16 Nov 2020 17:13:38 +0100 From: Krzysztof Kozlowski To: Alice Guo Subject: Re: [EXT] Re: [PATCH v3 4/4] soc: imx8m: change to use platform driver Message-ID: <20201116161338.GB25108@kozik-lap> References: <20201113110409.13546-1-alice.guo@nxp.com> <20201113110409.13546-4-alice.guo@nxp.com> <20201114164128.GD14989@kozik-lap> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201116_111343_316565_B3DDFA57 X-CRM114-Status: GOOD ( 44.39 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "devicetree@vger.kernel.org" , Peng Fan , "s.hauer@pengutronix.de" , "linux-kernel@vger.kernel.org" , "robh+dt@kernel.org" , dl-linux-imx , "shawnguo@kernel.org" , "linux-arm-kernel@lists.infradead.org" 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 T24gTW9uLCBOb3YgMTYsIDIwMjAgYXQgMDg6MTg6NTlBTSArMDAwMCwgQWxpY2UgR3VvIHdyb3Rl Ogo+IAo+IAo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiA+IEZyb206IEtyenlzenRv ZiBLb3psb3dza2kgPGtyemtAa2VybmVsLm9yZz4KPiA+IFNlbnQ6IDIwMjDlubQxMeaciDE15pel IDA6NDEKPiA+IFRvOiBBbGljZSBHdW8gPGFsaWNlLmd1b0BueHAuY29tPgo+ID4gQ2M6IHJvYmgr ZHRAa2VybmVsLm9yZzsgc2hhd25ndW9Aa2VybmVsLm9yZzsgcy5oYXVlckBwZW5ndXRyb25peC5k ZTsKPiA+IGRsLWxpbnV4LWlteCA8bGludXgtaW14QG54cC5jb20+OyBQZW5nIEZhbiA8cGVuZy5m YW5AbnhwLmNvbT47Cj4gPiBkZXZpY2V0cmVlQHZnZXIua2VybmVsLm9yZzsgbGludXgta2VybmVs QHZnZXIua2VybmVsLm9yZzsKPiA+IGxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9y Zwo+ID4gU3ViamVjdDogW0VYVF0gUmU6IFtQQVRDSCB2MyA0LzRdIHNvYzogaW14OG06IGNoYW5n ZSB0byB1c2UgcGxhdGZvcm0gZHJpdmVyCj4gPiAKPiA+IENhdXRpb246IEVYVCBFbWFpbAo+ID4g Cj4gPiBPbiBGcmksIE5vdiAxMywgMjAyMCBhdCAwNzowNDowOVBNICswODAwLCBBbGljZSBHdW8g d3JvdGU6Cj4gPiA+IERpcmVjdGx5IHJlYWRpbmcgb2NvdHAgcmVnaXN0ZXIgZGVwZW5kcyBvbiB0 aGF0IGJvb3Rsb2FkZXIgZW5hYmxlcwo+ID4gPiBvY290cCBjbGssIHdoaWNoIGlzIG5vdCBhbHdh eXMgZWZmZWN0aXZlLCBzbyBjaGFuZ2UgdG8gdXNlIG52bWVtIEFQSS4KPiA+ID4gVXNpbmcgbnZt ZW0gQVBJIHJlcXVpcmVzIHRvIHN1cHBvcnQgZHJpdmVyIGRlZmVyIHByb2JlIGFuZCB0aHVzIGNo YW5nZQo+ID4gPiBzb2MtaW14OG0uYyB0byB1c2UgcGxhdGZvcm0gZHJpdmVyLgo+ID4gPgo+ID4g PiBUaGUgb3RoZXIgcmVhc29uIGlzIHRoYXQgZGlyZWN0bHkgcmVhZGluZyBvY290cCByZWdpc3Rl ciBjYXVzZXMga2V4ZWMKPiA+ID4ga2VybmVsIGhhbmcgYmVjYXVzZSB0aGUgMXN0IGtlcm5lbCBy dW5uaW5nIHdpbGwgZGlzYWJsZSB1bnVzZWQgY2xrcwo+ID4gPiBhZnRlciBrZXJuZWwgYm9vdHMg dXAsIGFuZCB0aGVuIG9jb3RwIGNsayB3aWxsIGJlIGRpc2FibGVkIGV2ZW4gaWYKPiA+ID4gYm9v dGxvYWRlciBlbmFibGVzIGl0LiBXaGVuIGtleGVjIGtlcm5lbCwgb2NvdHAgY2xrIG5lZWRzIHRv IGJlCj4gPiA+IGVuYWJsZWQgYmVmb3JlIHJlYWRpbmcgb2NvdHAgcmVnaXN0ZXJzLCBhbmQgbnZt ZW0gQVBJIHdpdGggcGxhdGZvcm0KPiA+ID4gZHJpdmVyIHN1cHBvcnRlZCBjYW4gYWNjb21wbGlz aCB0aGlzLgo+ID4gPgo+ID4gPiBPbGQgLmR0cyBmaWxlcyBjYW4gYWxzbyB3b3JrLgo+ID4gPgo+ ID4gPiBTaWduZWQtb2ZmLWJ5OiBBbGljZSBHdW8gPGFsaWNlLmd1b0BueHAuY29tPgo+ID4gPiAt LS0KPiA+ID4gIGRyaXZlcnMvc29jL2lteC9zb2MtaW14OG0uYyB8IDg5Cj4gPiA+ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCA3OSBp bnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKPiA+ID4KPiA+ID4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvc29jL2lteC9zb2MtaW14OG0uYyBiL2RyaXZlcnMvc29jL2lteC9zb2MtaW14OG0uYwo+ ID4gPiBpbmRleCBjYzU3YTM4NGQ3NGQuLmFmMmMwZGJlODI5MSAxMDA2NDQKPiA+ID4gLS0tIGEv ZHJpdmVycy9zb2MvaW14L3NvYy1pbXg4bS5jCj4gPiA+ICsrKyBiL2RyaXZlcnMvc29jL2lteC9z b2MtaW14OG0uYwo+ID4gPiBAQCAtNSw2ICs1LDggQEAKPiA+ID4KPiA+ID4gICNpbmNsdWRlIDxs aW51eC9pbml0Lmg+Cj4gPiA+ICAjaW5jbHVkZSA8bGludXgvaW8uaD4KPiA+ID4gKyNpbmNsdWRl IDxsaW51eC9tb2R1bGUuaD4KPiA+ID4gKyNpbmNsdWRlIDxsaW51eC9udm1lbS1jb25zdW1lci5o Pgo+ID4gPiAgI2luY2x1ZGUgPGxpbnV4L29mX2FkZHJlc3MuaD4KPiA+ID4gICNpbmNsdWRlIDxs aW51eC9zbGFiLmg+Cj4gPiA+ICAjaW5jbHVkZSA8bGludXgvc3lzX3NvYy5oPgo+ID4gPiBAQCAt MjksNyArMzEsNyBAQAo+ID4gPgo+ID4gPiAgc3RydWN0IGlteDhfc29jX2RhdGEgewo+ID4gPiAg ICAgICBjaGFyICpuYW1lOwo+ID4gPiAtICAgICB1MzIgKCpzb2NfcmV2aXNpb24pKHZvaWQpOwo+ ID4gPiArICAgICB1MzIgKCpzb2NfcmV2aXNpb24pKHN0cnVjdCBkZXZpY2UgKmRldiwgaW50IGZs YWcpOwo+ID4gPiAgfTsKPiA+ID4KPiA+ID4gIHN0YXRpYyB1NjQgc29jX3VpZDsKPiA+ID4gQEAg LTUwLDcgKzUyLDcgQEAgc3RhdGljIHUzMiBpbXg4bXFfc29jX3JldmlzaW9uX2Zyb21fYXRmKHZv aWQpCj4gPiA+ICBzdGF0aWMgaW5saW5lIHUzMiBpbXg4bXFfc29jX3JldmlzaW9uX2Zyb21fYXRm KHZvaWQpIHsgcmV0dXJuIDA7IH07Cj4gPiA+ICNlbmRpZgo+ID4gPgo+ID4gPiAtc3RhdGljIHUz MiBfX2luaXQgaW14OG1xX3NvY19yZXZpc2lvbih2b2lkKQo+ID4gPiArc3RhdGljIHUzMiBfX2lu aXQgaW14OG1xX3NvY19yZXZpc2lvbihzdHJ1Y3QgZGV2aWNlICpkZXYsIGludCBmbGFnKQo+ID4g PiAgewo+ID4gPiAgICAgICBzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wOwo+ID4gPiAgICAgICB2b2lk IF9faW9tZW0gKm9jb3RwX2Jhc2U7Cj4gPiA+IEBAIC03NSw5ICs3NywxNyBAQCBzdGF0aWMgdTMy IF9faW5pdCBpbXg4bXFfc29jX3JldmlzaW9uKHZvaWQpCj4gPiA+ICAgICAgICAgICAgICAgICAg ICAgICByZXYgPSBSRVZfQjE7Cj4gPiA+ICAgICAgIH0KPiA+ID4KPiA+ID4gLSAgICAgc29jX3Vp ZCA9IHJlYWRsX3JlbGF4ZWQob2NvdHBfYmFzZSArIE9DT1RQX1VJRF9ISUdIKTsKPiA+ID4gLSAg ICAgc29jX3VpZCA8PD0gMzI7Cj4gPiA+IC0gICAgIHNvY191aWQgfD0gcmVhZGxfcmVsYXhlZChv Y290cF9iYXNlICsgT0NPVFBfVUlEX0xPVyk7Cj4gPiA+ICsgICAgIGlmIChmbGFnKSB7Cj4gPiA+ ICsgICAgICAgICAgICAgaW50IHJldCA9IDA7Cj4gPiA+ICsKPiA+ID4gKyAgICAgICAgICAgICBy ZXQgPSBudm1lbV9jZWxsX3JlYWRfdTY0KGRldiwgInNvY191bmlxdWVfaWQiLAo+ID4gJnNvY191 aWQpOwo+ID4gPiArICAgICAgICAgICAgIGlmIChyZXQpCj4gPiA+ICsgICAgICAgICAgICAgICAg ICAgICByZXR1cm4gcmV0Owo+ID4gPiArICAgICB9IGVsc2Ugewo+ID4gPiArICAgICAgICAgICAg IHNvY191aWQgPSByZWFkbF9yZWxheGVkKG9jb3RwX2Jhc2UgKyBPQ09UUF9VSURfSElHSCk7Cj4g PiA+ICsgICAgICAgICAgICAgc29jX3VpZCA8PD0gMzI7Cj4gPiA+ICsgICAgICAgICAgICAgc29j X3VpZCB8PSByZWFkbF9yZWxheGVkKG9jb3RwX2Jhc2UgKyBPQ09UUF9VSURfTE9XKTsKPiA+ID4g KyAgICAgfQo+ID4gPgo+ID4gPiAgICAgICBpb3VubWFwKG9jb3RwX2Jhc2UpOwo+ID4gPiAgICAg ICBvZl9ub2RlX3B1dChucCk7Cj4gPiA+IEBAIC0xMDcsNyArMTE3LDcgQEAgc3RhdGljIHZvaWQg X19pbml0IGlteDhtbV9zb2NfdWlkKHZvaWQpCj4gPiA+ICAgICAgIG9mX25vZGVfcHV0KG5wKTsK PiA+ID4gIH0KPiA+ID4KPiA+ID4gLXN0YXRpYyB1MzIgX19pbml0IGlteDhtbV9zb2NfcmV2aXNp b24odm9pZCkKPiA+ID4gK3N0YXRpYyB1MzIgX19pbml0IGlteDhtbV9zb2NfcmV2aXNpb24oc3Ry dWN0IGRldmljZSAqZGV2LCBpbnQgZmxhZykKPiA+ID4gIHsKPiA+ID4gICAgICAgc3RydWN0IGRl dmljZV9ub2RlICpucDsKPiA+ID4gICAgICAgdm9pZCBfX2lvbWVtICphbmF0b3BfYmFzZTsKPiA+ ID4gQEAgLTEyNSw3ICsxMzUsMTUgQEAgc3RhdGljIHUzMiBfX2luaXQgaW14OG1tX3NvY19yZXZp c2lvbih2b2lkKQo+ID4gPiAgICAgICBpb3VubWFwKGFuYXRvcF9iYXNlKTsKPiA+ID4gICAgICAg b2Zfbm9kZV9wdXQobnApOwo+ID4gPgo+ID4gPiAtICAgICBpbXg4bW1fc29jX3VpZCgpOwo+ID4g PiArICAgICBpZiAoZmxhZykgewo+ID4gPiArICAgICAgICAgICAgIGludCByZXQgPSAwOwo+ID4g PiArCj4gPiA+ICsgICAgICAgICAgICAgcmV0ID0gbnZtZW1fY2VsbF9yZWFkX3U2NChkZXYsICJz b2NfdW5pcXVlX2lkIiwKPiA+ICZzb2NfdWlkKTsKPiA+ID4gKyAgICAgICAgICAgICBpZiAocmV0 KQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJldDsKPiA+ID4gKyAgICAgfSBl bHNlIHsKPiA+ID4gKyAgICAgICAgICAgICBpbXg4bW1fc29jX3VpZCgpOwo+ID4gPiArICAgICB9 Cj4gPiA+Cj4gPiA+ICAgICAgIHJldHVybiByZXY7Cj4gPiA+ICB9Cj4gPiA+IEBAIC0xNTgsMTIg KzE3NiwyMSBAQCBzdGF0aWMgX19tYXliZV91bnVzZWQgY29uc3Qgc3RydWN0IG9mX2RldmljZV9p ZAo+ID4gaW14OF9zb2NfbWF0Y2hbXSA9IHsKPiA+ID4gICAgICAgeyB9Cj4gPiA+ICB9Owo+ID4g Pgo+ID4gPiArc3RhdGljIF9fbWF5YmVfdW51c2VkIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQg aW14OG1fc29jX21hdGNoW10gPSB7Cj4gPiAKPiA+IENvdWxkIHRoaXMgcmVhbGx5IGJlIHVudXNl ZD8KPiAKPiBbQWxpY2UgR3VvXSBJIHdpbGwgZGVsZXRlICJfX21heWJlX3VudXNlZCIuCj4gCj4g PiAKPiA+ID4gKyAgICAgeyAuY29tcGF0aWJsZSA9ICJmc2wsaW14OG1xLXNvYyIsIC5kYXRhID0g JmlteDhtcV9zb2NfZGF0YSwgfSwKPiA+ID4gKyAgICAgeyAuY29tcGF0aWJsZSA9ICJmc2wsaW14 OG1tLXNvYyIsIC5kYXRhID0gJmlteDhtbV9zb2NfZGF0YSwgfSwKPiA+ID4gKyAgICAgeyAuY29t cGF0aWJsZSA9ICJmc2wsaW14OG1uLXNvYyIsIC5kYXRhID0gJmlteDhtbl9zb2NfZGF0YSwgfSwK PiA+ID4gKyAgICAgeyAuY29tcGF0aWJsZSA9ICJmc2wsaW14OG1wLXNvYyIsIC5kYXRhID0gJmlt eDhtcF9zb2NfZGF0YSwgfSwKPiA+ID4gKyAgICAgeyB9Cj4gPiA+ICt9Owo+ID4gPiArTU9EVUxF X0RFVklDRV9UQUJMRShvZiwgaW14OG1fc29jX21hdGNoKTsKPiA+IAo+ID4gWW91IGFscmVhZHkg aGF2ZSAiaW14OF9zb2NfbWF0Y2giIHdoaWNoIGNvdmVycyBpbXg4bSBhbmQgbm93IHlvdSBhZGQK PiA+ICJpbXg4bV9zb2NfbWF0Y2giIHdoaWNoIGFsc28gY292ZXJzIGlteDhtLiBTdWNoIG5hbWlu ZyBpcyBhIHB1cmUKPiA+IGNvbmZ1c2lvbi4KPiA+IAo+IAo+IFtBbGljZSBHdW9dIGRldmljZV9p bml0Y2FsbCBpcyBleGVjdXRlZCBlYXJsaWVyIHRoYW4gbW9kdWxlX3BsYXRmb3JtX2RyaXZlci4g aW14OF9zb2NfaW5pdCB3aWxsIGp1ZGdlCj4gd2hldGhlciB0aGVyZSBpcyAiZnNsLGlteDhtWC1z b2MiIGluIERUUyBmaWxlLiBJZiB0aGVyZSBpcyAiZnNsLGlteDhtWC1zb2MiLCBpdCB3aWxsIGV4 aXQgZGV2aWNlX2luaXRjYWxsIGFuZCB1c2UgbW9kdWxlX3BsYXRmb3JtX2RyaXZlci4gVGhlIHB1 cnBvc2UgaXMgdG8gYmUgY29tcGF0aWJsZSB3aXRoIHRoZSBvbGQgRFRTIGZpbGUgd2hpY2ggZG9l cyBub3QgaGF2ZQo+ICJmc2wsaW14OG1YLXNvYyIuCgpJIGdvdCBpdCwgYnV0IGl0J3Mgbm90IHdo YXQgSSB3YXMgcG9pbnRpbmcgb3V0LiBMZXQgbWUgbWFrZSBpdCBzaW1wbGVyOgoKICBzdGF0aWMg Y29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBpbXg4bV9zb2NfbWF0Y2g7CiAgc3RhdGljIGNvbnN0 IHN0cnVjdCBvZl9kZXZpY2VfaWQgaW14OF9zb2NfbWF0Y2g7CgpUaGlzIGlzIHB1cmUgY29uZnVz aW9uIGluIG5hbWluZy4KCkJhc2VkIG9uIHRoaXMgbmFtaW5nOgoxLiBpbXg4bV9zb2NfbWF0Y2gg bWVhbnMgIm1hdGNoaW5nIG9ubHkgaS5NWCA4TSBTb0NzIiwKMi4gaW14OF9zb2NfbWF0Y2ggbWVh bnMgIm1hdGNoIGFsbCBvZiBpLk1YIDgiLgoKVG90YWxseSBkaWZmZXJlbnQgdGhhbiB3aGF0IHlv dSB3cm90ZSBoZXJlIGFuZCB3aGF0IHlvdSBpbnRlbmQuLi4uCgo+IAo+ID4gPiArCj4gPiA+ICAj ZGVmaW5lIGlteDhfcmV2aXNpb24oc29jX3JldikgXAo+ID4gPiAgICAgICBzb2NfcmV2ID8gXAo+ ID4gPiAgICAgICBrYXNwcmludGYoR0ZQX0tFUk5FTCwgIiVkLiVkIiwgKHNvY19yZXYgPj4gNCkg JiAweGYsICBzb2NfcmV2ICYKPiA+IDB4ZikgOiBcCj4gPiA+ICAgICAgICJ1bmtub3duIgo+ID4g Pgo+ID4gPiAtc3RhdGljIGludCBfX2luaXQgaW14OF9zb2NfaW5pdCh2b2lkKQo+ID4gPiArc3Rh dGljIGludCBpbXg4X3NvY19pbml0X2ZsYWcoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwg aW50IGZsYWcpCj4gPiA+ICB7Cj4gPiA+ICAgICAgIHN0cnVjdCBzb2NfZGV2aWNlX2F0dHJpYnV0 ZSAqc29jX2Rldl9hdHRyOwo+ID4gPiAgICAgICBzdHJ1Y3Qgc29jX2RldmljZSAqc29jX2RldjsK PiA+ID4gQEAgLTE4Miw3ICsyMDksMTAgQEAgc3RhdGljIGludCBfX2luaXQgaW14OF9zb2NfaW5p dCh2b2lkKQo+ID4gPiAgICAgICBpZiAocmV0KQo+ID4gPiAgICAgICAgICAgICAgIGdvdG8gZnJl ZV9zb2M7Cj4gPiA+Cj4gPiA+IC0gICAgIGlkID0gb2ZfbWF0Y2hfbm9kZShpbXg4X3NvY19tYXRj aCwgb2Zfcm9vdCk7Cj4gPiA+ICsgICAgIGlmIChmbGFnKQo+ID4gPiArICAgICAgICAgICAgIGlk ID0gb2ZfbWF0Y2hfbm9kZShpbXg4bV9zb2NfbWF0Y2gsCj4gPiBwZGV2LT5kZXYub2Zfbm9kZSk7 Cj4gPiA+ICsgICAgIGVsc2UKPiA+ID4gKyAgICAgICAgICAgICBpZCA9IG9mX21hdGNoX25vZGUo aW14OF9zb2NfbWF0Y2gsIG9mX3Jvb3QpOwo+ID4gPiAgICAgICBpZiAoIWlkKSB7Cj4gPiA+ICAg ICAgICAgICAgICAgcmV0ID0gLUVOT0RFVjsKPiA+ID4gICAgICAgICAgICAgICBnb3RvIGZyZWVf c29jOwo+ID4gPiBAQCAtMTkyLDcgKzIyMiwxMyBAQCBzdGF0aWMgaW50IF9faW5pdCBpbXg4X3Nv Y19pbml0KHZvaWQpCj4gPiA+ICAgICAgIGlmIChkYXRhKSB7Cj4gPiA+ICAgICAgICAgICAgICAg c29jX2Rldl9hdHRyLT5zb2NfaWQgPSBkYXRhLT5uYW1lOwo+ID4gPiAgICAgICAgICAgICAgIGlm IChkYXRhLT5zb2NfcmV2aXNpb24pCj4gPiA+IC0gICAgICAgICAgICAgICAgICAgICBzb2NfcmV2 ID0gZGF0YS0+c29jX3JldmlzaW9uKCk7Cj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICBzb2Nf cmV2ID0gZGF0YS0+c29jX3JldmlzaW9uKCZwZGV2LT5kZXYsIGZsYWcpOwo+ID4gPiArCj4gPiA+ ICsgICAgICAgICAgICAgaWYgKGZsYWcpIHsKPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIHJl dCA9IHNvY19yZXY7Cj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICBpZiAocmV0IDwgMCkKPiA+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmcmVlX3NvYzsKPiA+ID4gKyAg ICAgICAgICAgICB9Cj4gPiA+ICAgICAgIH0KPiA+ID4KPiA+ID4gICAgICAgc29jX2Rldl9hdHRy LT5yZXZpc2lvbiA9IGlteDhfcmV2aXNpb24oc29jX3Jldik7IEBAIC0yMzAsNAo+ID4gPiArMjY2 LDM3IEBAIHN0YXRpYyBpbnQgX19pbml0IGlteDhfc29jX2luaXQodm9pZCkKPiA+ID4gICAgICAg a2ZyZWUoc29jX2Rldl9hdHRyKTsKPiA+ID4gICAgICAgcmV0dXJuIHJldDsKPiA+ID4gIH0KPiA+ ID4gKwo+ID4gPiArc3RhdGljIGludCBfX2luaXQgaW14OF9zb2NfaW5pdCh2b2lkKSB7Cj4gPiA+ ICsgICAgIGludCByZXQgPSAwLCBmbGFnID0gMDsKPiA+ID4gKwo+ID4gPiArICAgICBpZiAob2Zf ZmluZF9jb21wYXRpYmxlX25vZGUoTlVMTCwgTlVMTCwgImZzbCxpbXg4bW0tc29jIikgfHwKPiA+ ID4gKyAgICAgICAgIG9mX2ZpbmRfY29tcGF0aWJsZV9ub2RlKE5VTEwsIE5VTEwsICJmc2wsaW14 OG1uLXNvYyIpIHx8Cj4gPiA+ICsgICAgICAgICBvZl9maW5kX2NvbXBhdGlibGVfbm9kZShOVUxM LCBOVUxMLCAiZnNsLGlteDhtcC1zb2MiKSB8fAo+ID4gPiArICAgICAgICAgb2ZfZmluZF9jb21w YXRpYmxlX25vZGUoTlVMTCwgTlVMTCwgImZzbCxpbXg4bXEtc29jIikpCj4gPiAKPiA+IE1pc3Np bmcgcHV0cy4KPiA+IAo+ID4gRG9uJ3QgZHVwbGljYXRlIHRoZSBjb21wYXRpYmxlcywgaXRlcmF0 ZSBvdmVyIGV4aXN0aW5nIHN0cnVjdHVyZS4uLiBvciBzZWUKPiA+IGNvbW1lbnRzIGJlbG93LiAg TWF5YmUgeW91IGNvdWxkIHNpbXBsaWZ5IGl0IHdpdGggc29tZXRoaW5nIGxpa2UKPiA+IG9mX2Zp bmRfbWF0Y2hpbmdfbm9kZV9hbmRfbWF0Y2goKS4uLiBidXQgY2hlY2sgY29tbWVudHMgYmVsb3cu Cj4gCj4gW0FsaWNlIEd1b10gSSBjaGVjayBjb21tZW50cyBiZWxvdy4KPiAKPiA+IAo+ID4gPiAr ICAgICAgICAgICAgIHJldHVybiAwOwo+ID4gPiArCj4gPiA+ICsgICAgIHJldCA9IGlteDhfc29j X2luaXRfZmxhZyhOVUxMLCBmbGFnKTsKPiA+ID4gKyAgICAgcmV0dXJuIHJldDsKPiA+ID4gK30K PiA+ID4gIGRldmljZV9pbml0Y2FsbChpbXg4X3NvY19pbml0KTsKPiA+IAo+ID4gV2hlcmUgaXMg dGhlIGNoYW5nZWxvZz8gVGhpcyB3YXMgcmVtb3ZlZCBwcmV2aW91c2x5LCBub3cgaXQgc3RheXMu Li4KPiA+IAo+ID4gQWZ0ZXIgbW9yZSB0aG91Z2hzLCBpdCBsb29rcyB5b3UgaGF2ZSBrZXB0IGl0 IGZvciB0aGUgcHVycG9zZSBvZiBzdXBwb3J0aW5nCj4gPiBleGlzdGluZyBEVEIsIGJ1dCBpdCBp cyBub3QgZXhwbGFpbmVkLiBOZWl0aGVyIGluIHRoZSBzb3VyY2UgY29kZSAod2hpY2ggYWZ0ZXIK PiA+IGFwcGx5aW5nIHRoaXMgcGF0Y2ggbG9va3MgY29uZnVzaW5nKSBub3IgaW4gY29tbWl0IG1l c3NhZ2UuCj4gPiAKPiA+IEluIGNhc2Ugb2Ygb2xkIERUQiB3aXRob3V0IGZzbCxpbXg4bW0tc29j LWxpa2UgY29tcGF0aWJsZXMsIGl0IHdvdWxkIGJlIGJldHRlcgo+ID4gdG8gc3RpbGwgcmVnaXN0 ZXIgYSBwbGF0Zm9ybSBkcml2ZXIgYW5kIGNyZWF0ZSBhIGRldmljZQo+ID4gKG9mX3BsYXRmb3Jt X2RldmljZV9jcmVhdGUoKSkpLiBIb3dldmVyIHN0aWxsIHRoaXMgd29uJ3Qgc29sdmUgdGhlIHBy b2JsZW0gb2YKPiA+IGFjdHVhbGx5IG1pc3NpbmcgZGV2aWNlIG5vZGUuLi4gc28gbWF5YmUgdGhp cyBkb3VibGUgZW50cnkgcG9pbnQgaXMgYWNjZXB0YWJsZSwKPiA+IGlmIHByb3Blcmx5IGV4cGxh aW5lZC4KPiAKPiBbQWxpY2UgR3VvXSBTb3JyeSwgSSB3aWxsIGFkZCBjaGFuZ2Vsb2cgbmV4dCB0 aW1lLiBBY3R1YWxseSBJIHdyb3RlICJPbGQgLmR0cyBmaWxlcyBjYW4gYWxzbyB3b3JrLiIgaW4g dGhlIGNvbW1pdC4KPiAKPiBkZXZpY2VfaW5pdGNhbGwgaXMgZXhlY3V0ZWQgZWFybGllciB0aGFu IG1vZHVsZV9wbGF0Zm9ybV9kcml2ZXIuIGlteDhfc29jX2luaXQgd2lsbCBqdWRnZQo+IHdoZXRo ZXIgdGhlcmUgaXMgImZzbCxpbXg4bVgtc29jIiBpbiBEVFMgZmlsZS4gSWYgdGhlcmUgaXMgImZz bCxpbXg4bVgtc29jIiwgaXQgd2lsbCBleGl0IGRldmljZV9pbml0Y2FsbCBhbmQgdXNlIG1vZHVs ZV9wbGF0Zm9ybV9kcml2ZXIuIENhbiBJIGtlZXAgZG91YmxlIGVudHJ5IHBvaW50PwoKSWYgaXQg aXMgcHJvcGVybHkgZXhwbGFpbmVkIGFuZCB0aGVyZSBpcyBubyBvdGhlciB3YXkgdGhlbiB5ZXMs IHlvdQpjb3VsZC4gSGVyZSwgZm9yIG9sZCBEVEJzLCBJIHdvdWxkIHByZWZlciB0byB1c2UKb2Zf cGxhdGZvcm1fZGV2aWNlX2NyZWF0ZSgpIGFuZCBiaW5kIHRvICJzb2MiIG5vZGUgKGNoaWxkIG9m IHJvb3QpLgpUaGlzIHdheSB5b3Ugd291bGQgYWx3YXlzIGhhdmUgZGV2aWNlIGFuZCBleGFjdGx5 IG9uZSBlbnRyeSBwb2ludCBmb3IKdGhlIHByb2JlLgoKQmVzdCByZWdhcmRzLApLcnp5c3p0b2YK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFy bS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9y ZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1r ZXJuZWwK