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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 5BC29C433F5 for ; Mon, 10 Jan 2022 03:30:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:CC:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=4utZ/1QarmFUjBqBGUk30AQThC9ZJS6nyiV24/q/cHQ=; b=NR8PaWep18rt9L y7RnK4zfzOaMJnsqWkl3tKgflJwm2FzjBP8aV4uTYC5L1xhe+Oi+AUrDzhhPMc5TKwnCVcvomg0UV uQ40YGbP7VS0tFJn1H6FvCPrBAVlq7RegBerRjR/d60rTQsvaMS2oTxF8jBsR49LxsagOfudS2gM+ 845tU2X/4vITE6jdLqXHMCHCPtUndULgbEy9tPdJL1fBNlmOY7hAboQB0B3O8uHn8fpIBMwBfUDYd 6rrBEXtqvK+auvIsb9MCwvGeATYedKszJ544hdRz5rQrpZoD6qKSv9VuqbGuB0L8GNDg6GH4t7Uzq BVZCImQZSxYhYSFh0fYg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n6lMn-0093o6-Np; Mon, 10 Jan 2022 03:29:05 +0000 Received: from mail-sz.amlogic.com ([211.162.65.117]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1n6lMi-0093lm-Tb; Mon, 10 Jan 2022 03:29:03 +0000 Received: from [10.28.39.84] (10.28.39.84) by mail-sz.amlogic.com (10.28.11.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Mon, 10 Jan 2022 11:28:47 +0800 Message-ID: <5fd77688-922c-d8f4-1a09-41967fa52f89@amlogic.com> Date: Mon, 10 Jan 2022 11:28:46 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:91.0) Gecko/20100101 Thunderbird/91.4.1 Subject: Re: [PATCH] mtd: rawnand: meson: fix the clock after discarding sd_emmc_c_clkc Content-Language: en-US To: Neil Armstrong , Jerome Brunet , Miquel Raynal , CC: Richard Weinberger , Martin Blumenstingl , Kevin Hilman , Jianxin Pan , Victor Wan , XianWei Zhao , Kelvin Zhang , BiChao Zheng , YongHui Yu , , , , References: <20220106032504.23310-1-liang.yang@amlogic.com> <1jfsq1z22l.fsf@starbuckisacylon.baylibre.com> <151ded4b-a28b-dac9-31e1-5b817cd9dc44@amlogic.com> From: Liang Yang In-Reply-To: X-Originating-IP: [10.28.39.84] X-ClientProxiedBy: mail-sz.amlogic.com (10.28.11.5) To mail-sz.amlogic.com (10.28.11.5) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220109_192901_015119_B2E6AE85 X-CRM114-Status: GOOD ( 25.78 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGksCgpPbiAyMDIyLzEvNyAxNzo1NywgTmVpbCBBcm1zdHJvbmcgd3JvdGU6Cj4gWyBFWFRFUk5B TCBFTUFJTCBdCj4gCj4gSGksCj4gCj4gT24gMDcvMDEvMjAyMiAwNTowNCwgTGlhbmcgWWFuZyB3 cm90ZToKPj4gSGkgSmVyb21lLAo+Pgo+PiBPbiAyMDIyLzEvNiAxNjoxNiwgSmVyb21lIEJydW5l dCB3cm90ZToKPj4+IFsgRVhURVJOQUwgRU1BSUwgXQo+Pj4KPj4+Cj4+PiBPbiBUaHUgMDYgSmFu IDIwMjIgYXQgMTE6MjUsIExpYW5nIFlhbmcgPGxpYW5nLnlhbmdAYW1sb2dpYy5jb20+IHdyb3Rl Ogo+Pj4KPj4+PiBCZWNhdXNlIEVNTUMgYW5kIE5BTkQgaGF2ZSB0aGUgc2FtZSBjb250cm9sIGNs b2NrIHJlZ2lzdGVyLCBzbyB3ZQo+Pj4+IGltcGxlbWVudCBhICdzZF9lbW1jX2NfY2xrYycuIFBy ZXZpb3VzbHkgRFRTIGlzIGRlZmluZWQgYXMgYmVsb3c6Cj4+Pj4KPj4+PiAgwqDCoMKgwqBzZF9l bW1jX2NfY2xrYzogbW1jQDcwMDAgewo+Pj4+ICDCoMKgwqDCoMKgwqDCoCBjb21wYXRpYmxlID0g ImFtbG9naWMsbWVzb24tYXhnLW1tYy1jbGtjIiwgInN5c2NvbiI7Cj4+Pj4gIMKgwqDCoMKgwqDC oMKgIHJlZyA9IDwweDAgMHg3MDAwIDB4MCAweDgwMD47Cj4+Pj4gIMKgwqDCoMKgfTsKPj4+Pgo+ Pj4+ICDCoMKgwqDCoG5hbmQtY29udHJvbGxlckA3ODAwIHsKPj4+PiAgwqDCoMKgwqDCoMKgwqAg Li4uLi4uCj4+Pj4KPj4+PiAgwqDCoMKgwqDCoMKgwqAgY2xvY2tzID0gPCZjbGtjIENMS0lEX1NE X0VNTUNfQz4sCj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPCZzZF9lbW1jX2NfY2xrYyBD TEtJRF9NTUNfRElWPiwKPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA8JnNkX2VtbWNfY19j bGtjIENMS0lEX01NQ19QSEFTRV9SWD4sCj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPCZz ZF9lbW1jX2NfY2xrYyBDTEtJRF9NTUNfUEhBU0VfVFg+Owo+Pj4+ICDCoMKgwqDCoMKgwqDCoCBj bG9jay1uYW1lcyA9ICJjb3JlIiwgImRldmljZSIsICJyeCIsICJ0eCI7Cj4+Pj4gIMKgwqDCoMKg wqDCoMKgIGFtbG9naWMsbW1jLXN5c2NvbiA9IDwmc2RfZW1tY19jX2Nsa2M+Owo+Pj4+Cj4+Pj4g IMKgwqDCoMKgwqDCoMKgIC4uLi4uLgo+Pj4+ICDCoMKgwqDCoH0KPj4+Pgo+Pj4+IGJ1dCBpbiBm YWN0LCBhYm92ZSBpbXBsZW1lbnRhdGlvbiBpcyByZWplY3RlZC4gc28gbm93IHJlZ2lzdGVyaW5n Cj4+Pj4gYSBuYW5kX2RpdmlkZXIuCj4+Pgo+Pj4gQ2FuIHlvdSBnaXZlIGEgYml0IG9mIGNvbnRl eHQgPyBhIGxpbmsgdG8gdGhlIGRpc2N1c3Npb24gcmVqZWN0aW5nIHRoaXMKPj4+Cj4+IE1heWJl IEkgbWlzdGFrZSB0aGUgbWVhbmluZyBvZiBbamlhbnhpbi5wYW5AYW1sb2dpYy5jb21dLCBzbyBp IG5lZWQgaGltIHRvIGNsYXJpZnkgaXQuCj4+PiBBcyBmYXIgYXMgcmVtZW1iZXIsIHRoaW5ncyB3 ZXJlIGdldHRpbmcgZG9uZSBmb3IgQTEgYW5kIHN0b3BwZWQgYmVmb3JlCj4+PiBjbG9jayBwYXJ0 IHdhcyBmaW5pc2hlZC4gSSdtIHNheWluZyB0aGUgY2hhbmdlIGlzIHdyb25nLCBqdXN0IHRoYXQg YQo+Pj4gZGlzY3Vzc2lvbiBpcyBuZWVkZWQgYmVmb3JlIGEgZGVjaXNpb24gaXMgbWFkZS4KPj4+ Cj4+IG9rLgo+PiBwcmV2aW91cyBkaXNjdXNzaW9uIGluIHRoaXMgbGluazoKPj4gaHR0cHM6Ly9s b3JlLmtlcm5lbC5vcmcvYWxsLzg2Nzg5ZDczLTVhNmMtNzcyOS1lY2QxLWRjZDM0MmIyZmNkZUBh bWxvZ2ljLmNvbS8KPj4gaXQgbmV2ZXIgZ28gb24gc2luY2UgdjYuCj4gCj4gTG9va2luZyBhdCB0 aGUgc2VyaWUgSSBkb24ndCBzZWUgYW55IG1ham9yIGJsb2NrZXJzLCBpZiB5b3UncmUgd2lsbGlu ZyB0byB0YWtlIG93bmVyc2hpcAo+IG9mIHRoaXMgcGF0Y2hzZXQgYW5kIHNlbmQgYSB2NiB3aXRo IGFsbCBpc3N1ZXMvY29tbWVudHMgYWRkcmVzc2VkLCBpdCB3b3VsZCBiZSBlYXNpZXIgdGhhbgo+ IHJlc3RhcnRpbmcgdGhlIHdob2xlIGRlc2lnbiBkaXNjdXNzaW9uCj4gCj4gTmVpbAoKCkhpIE5l aWwsIHRoYW5rcyBmb3IgeW91ciBhZHZpY2UuCkFmdGVyIHRhbGtpbmcgd2l0aCBbamlhbnhpbi5w YW5dLCBmb3JtIHRoaXMgbGluayAKPGh0dHBzOi8vbGttbC5vcmcvbGttbC8yMDE5LzEvOC80NDE+ LCBpdCBhbHJlYWR5IG1vdmVzIGZ1dGhlciBhbmQgb24gdjksIApzbyB3ZSBkZWNpZGUgdG8gY29u dGludWUgdG8gd29yayBoYXJkIG9uIGl0LgoKPiAKPj4KPj4+Pgo+Pj4+IENoYW5nZS1JZDogSWJl YjRjN2ZmODg2ZjU4ODZhYWM0ZDZjNjY0ZDdiYmQxYjFiY2I5OTcKPj4+PiBTaWduZWQtb2ZmLWJ5 OiBMaWFuZyBZYW5nIDxsaWFuZy55YW5nQGFtbG9naWMuY29tPgo+Pj4+IC0tLQo+Pj4+ICDCoCBk cml2ZXJzL210ZC9uYW5kL3Jhdy9tZXNvbl9uYW5kLmMgfCA4OCArKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tCj4+Pj4gIMKgIDEgZmlsZSBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAz OSBkZWxldGlvbnMoLSkKPj4+Pgo+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uYW5kL3Jh dy9tZXNvbl9uYW5kLmMgYi9kcml2ZXJzL210ZC9uYW5kL3Jhdy9tZXNvbl9uYW5kLmMKPj4+PiBp bmRleCBhYzNiZTkyODcyZDAuLjQ0NzIzNjMwNTljMiAxMDA2NDQKPj4+PiAtLS0gYS9kcml2ZXJz L210ZC9uYW5kL3Jhdy9tZXNvbl9uYW5kLmMKPj4+PiArKysgYi9kcml2ZXJzL210ZC9uYW5kL3Jh dy9tZXNvbl9uYW5kLmMKPj4+PiBAQCAtMiw3ICsyLDcgQEAKPj4+PiAgwqAgLyoKPj4+PiAgwqDC oCAqIEFtbG9naWMgTWVzb24gTmFuZCBGbGFzaCBDb250cm9sbGVyIERyaXZlcgo+Pj4+ICDCoMKg ICoKPj4+PiAtICogQ29weXJpZ2h0IChjKSAyMDE4IEFtbG9naWMsIGluYy4KPj4+PiArICogQ29w eXJpZ2h0IChjKSAyMDE4LTIwMjEgQW1sb2dpYywgaW5jLgo+Pj4+ICDCoMKgICogQXV0aG9yOiBM aWFuZyBZYW5nIDxsaWFuZy55YW5nQGFtbG9naWMuY29tPgo+Pj4+ICDCoMKgICovCj4+Pj4gIMKg IEBAIC0xMCw2ICsxMCw3IEBACj4+Pj4gIMKgICNpbmNsdWRlIDxsaW51eC9kbWEtbWFwcGluZy5o Pgo+Pj4+ICDCoCAjaW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+Cj4+Pj4gIMKgICNpbmNsdWRl IDxsaW51eC9jbGsuaD4KPj4+PiArI2luY2x1ZGUgPGxpbnV4L2Nsay1wcm92aWRlci5oPgo+Pj4+ ICDCoCAjaW5jbHVkZSA8bGludXgvbXRkL3Jhd25hbmQuaD4KPj4+PiAgwqAgI2luY2x1ZGUgPGxp bnV4L210ZC9tdGQuaD4KPj4+PiAgwqAgI2luY2x1ZGUgPGxpbnV4L21mZC9zeXNjb24uaD4KPj4+ PiBAQCAtNTUsNiArNTYsNyBAQAo+Pj4+ICDCoCAjZGVmaW5lIE5GQ19SRUdfVkVSwqDCoMKgwqDC oMKgwqAgMHgzOAo+Pj4+ICDCoCDCoCAjZGVmaW5lIE5GQ19SQl9JUlFfRU7CoMKgwqDCoMKgwqDC oCBCSVQoMjEpCj4+Pj4gKyNkZWZpbmUgTkZDX0NNRF9GSUZPX1JFU0VUwqDCoMKgIEJJVCgzMSkK Pj4+PiAgwqAgwqAgI2RlZmluZSBDTURSV0dFTihjbWRfZGlyLCByYW4sIGJjaCwgc2hvcnRfbW9k ZSwgcGFnZV9zaXplLCBwYWdlcynCoMKgwqAgXAo+Pj4+ICDCoMKgwqDCoMKgICjCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcCj4+ Pj4gQEAgLTEwNCw2ICsxMDYsOSBAQAo+Pj4+ICDCoCDCoCAjZGVmaW5lIFBFUl9JTkZPX0JZVEXC oMKgwqDCoMKgwqDCoCA4Cj4+Pj4gIMKgICsjZGVmaW5lIENMS19ESVZfU0hJRlTCoMKgwqDCoMKg wqDCoCAwCj4+Pj4gKyNkZWZpbmUgQ0xLX0RJVl9XSURUSMKgwqDCoMKgwqDCoMKgIDYKPj4+PiAr Cj4+Pj4gIMKgIHN0cnVjdCBtZXNvbl9uZmNfbmFuZF9jaGlwIHsKPj4+PiAgwqDCoMKgwqDCoCBz dHJ1Y3QgbGlzdF9oZWFkIG5vZGU7Cj4+Pj4gIMKgwqDCoMKgwqAgc3RydWN0IG5hbmRfY2hpcCBu YW5kOwo+Pj4+IEBAIC0xNTEsMTUgKzE1NiwxNSBAQCBzdHJ1Y3QgbWVzb25fbmZjIHsKPj4+PiAg wqDCoMKgwqDCoCBzdHJ1Y3QgbmFuZF9jb250cm9sbGVyIGNvbnRyb2xsZXI7Cj4+Pj4gIMKgwqDC oMKgwqAgc3RydWN0IGNsayAqY29yZV9jbGs7Cj4+Pj4gIMKgwqDCoMKgwqAgc3RydWN0IGNsayAq ZGV2aWNlX2NsazsKPj4+PiAtwqDCoMKgIHN0cnVjdCBjbGsgKnBoYXNlX3R4Owo+Pj4+IC3CoMKg wqAgc3RydWN0IGNsayAqcGhhc2Vfcng7Cj4+Pgo+Pj4gSSB3b3VsZCBoYXZlIGJlZW4gbmljZSB0 byBleHBsYWluIHdoeSB0aGVzZSBjbG9jayBhcmUgbm8gbG9uZ2VyCj4+PiByZXF1aXJlZCwgaW4g dGhlIGNoYW5nZSBkZXNjcmlwdGlvbiBtYXliZSA/Cj4+Cj4+IGkgZ290IHRoZSByZXBseSBmcm9t IG91ciB2bHNpIG1lbWJlcnMgdGhhdCByeCBhbmQgdHggZG9lc24ndCBtYWtlIHNlbnNlIHRvIG1l c29uIE5GQyB0aW1pbmcuIHNvIHByZXZpb3VzIGNvbW1pdCBhYm91dCB0aGlzIHNob3VsZCBiZSB3 cm9uZy4KPj4+Cj4+Pj4gK8KgwqDCoCBzdHJ1Y3QgY2xrICpuYW5kX2NsazsKPj4+PiArwqDCoMKg IHN0cnVjdCBjbGtfZGl2aWRlciBuYW5kX2RpdmlkZXI7Cj4+Pj4gIMKgIMKgwqDCoMKgwqAgdW5z aWduZWQgbG9uZyBjbGtfcmF0ZTsKPj4+PiAgwqDCoMKgwqDCoCB1MzIgYnVzX3RpbWluZzsKPj4+ PiAgwqAgwqDCoMKgwqDCoCBzdHJ1Y3QgZGV2aWNlICpkZXY7Cj4+Pj4gIMKgwqDCoMKgwqAgdm9p ZCBfX2lvbWVtICpyZWdfYmFzZTsKPj4+PiAtwqDCoMKgIHN0cnVjdCByZWdtYXAgKnJlZ19jbGs7 Cj4+Pj4gK8KgwqDCoCB2b2lkIF9faW9tZW0gKnJlZ19jbGs7Cj4+Pj4gIMKgwqDCoMKgwqAgc3Ry dWN0IGNvbXBsZXRpb24gY29tcGxldGlvbjsKPj4+PiAgwqDCoMKgwqDCoCBzdHJ1Y3QgbGlzdF9o ZWFkIGNoaXBzOwo+Pj4+ICDCoMKgwqDCoMKgIGNvbnN0IHN0cnVjdCBtZXNvbl9uZmNfZGF0YSAq ZGF0YTsKPj4+PiBAQCAtNDA2LDEyICs0MTEsMTQgQEAgc3RhdGljIGludCBtZXNvbl9uZmNfcXVl dWVfcmIoc3RydWN0IG1lc29uX25mYyAqbmZjLCBpbnQgdGltZW91dF9tcykKPj4+PiAgwqDCoMKg wqDCoCBjbWQgPSBORkNfQ01EX1JCIHwgTkZDX0NNRF9SQl9JTlQKPj4+PiAgwqDCoMKgwqDCoMKg wqDCoMKgIHwgbmZjLT5wYXJhbS5jaGlwX3NlbGVjdCB8IG5mYy0+dGltaW5nLnRiZXJzX21heDsK Pj4+PiAgwqDCoMKgwqDCoCB3cml0ZWwoY21kLCBuZmMtPnJlZ19iYXNlICsgTkZDX1JFR19DTUQp Owo+Pj4+IC0KPj4+PiArwqDCoMKgIG1lc29uX25mY19kcmFpbl9jbWQobmZjKTsKPj4+Cj4+PiBp cyB0aGlzIGNsb2NrIHJlbGF0ZWQgPwo+PiBvaywgaSB3aWxsIHNwbGl0IGl0IGluIGFub3RoZXIg cGF0Y2guCj4+Pgo+Pj4+ICDCoMKgwqDCoMKgIHJldCA9IHdhaXRfZm9yX2NvbXBsZXRpb25fdGlt ZW91dCgmbmZjLT5jb21wbGV0aW9uLAo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIG1zZWNzX3RvX2ppZmZpZXModGltZW91dF9tcykpOwo+Pj4+ICDC oMKgwqDCoMKgIGlmIChyZXQgPT0gMCkKPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgIHJldCA9IC0x Owo+Pj4+ICDCoCArwqDCoMKgIC8qIHJlc2V0IGNvbW1hbmQgZmlmbyB0byBhdm9pZCBsb2NrICov Cj4+Pj4gK8KgwqDCoCB3cml0ZWwoTkZDX0NNRF9GSUZPX1JFU0VULCBuZmMtPnJlZ19iYXNlICsg TkZDX1JFR19DTUQpOwo+Pj4KPj4+IEFnYWluLCBub3Qgc2VlbSB0byBiZSBjbG9jayByZWxhdGVk IC0gZG9lcyBub3QgYmVsb25nIGluIHRoaXMgcGF0Y2gKPj4gb2ssIGkgd2lsbCBzcGxpdCBpdCBp biBhbm90aGVyIHBhdGNoLgo+Pj4KPj4+PiAgwqDCoMKgwqDCoCByZXR1cm4gcmV0Owo+Pj4+ICDC oCB9Cj4+Pj4gIMKgIEBAIC05ODgsOCArOTk1LDkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBtdGRf b29ibGF5b3V0X29wcyBtZXNvbl9vb2JsYXlvdXRfb3BzID0gewo+Pj4+ICDCoCBzdGF0aWMgaW50 IG1lc29uX25mY19jbGtfaW5pdChzdHJ1Y3QgbWVzb25fbmZjICpuZmMpCj4+Pj4gIMKgIHsKPj4+ PiAgwqDCoMKgwqDCoCBpbnQgcmV0Owo+Pj4+ICvCoMKgwqAgc3RydWN0IGNsa19pbml0X2RhdGEg aW5pdCA9IHswfTsKPj4+PiArwqDCoMKgIGNvbnN0IGNoYXIgKmZpeF9kaXYyX3BsbF9uYW1lWzFd Owo+Pj4+ICDCoCAtwqDCoMKgIC8qIHJlcXVlc3QgY29yZSBjbG9jayAqLwo+Pj4KPj4+IFdoeSBp cyB0aGUgY29tbWVudCBib3RoZXJpbmcgeW91ID8KPj4+Cj4+Pj4gIMKgwqDCoMKgwqAgbmZjLT5j b3JlX2NsayA9IGRldm1fY2xrX2dldChuZmMtPmRldiwgImNvcmUiKTsKPj4+PiAgwqDCoMKgwqDC oCBpZiAoSVNfRVJSKG5mYy0+Y29yZV9jbGspKSB7Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoCBk ZXZfZXJyKG5mYy0+ZGV2LCAiZmFpbGVkIHRvIGdldCBjb3JlIGNsb2NrXG4iKTsKPj4+PiBAQCAt MTAwMiwyMSArMTAxMCwyNSBAQCBzdGF0aWMgaW50IG1lc29uX25mY19jbGtfaW5pdChzdHJ1Y3Qg bWVzb25fbmZjICpuZmMpCj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gUFRSX0VSUihu ZmMtPmRldmljZV9jbGspOwo+Pj4+ICDCoMKgwqDCoMKgIH0KPj4+PiAgwqAgLcKgwqDCoCBuZmMt PnBoYXNlX3R4ID0gZGV2bV9jbGtfZ2V0KG5mYy0+ZGV2LCAidHgiKTsKPj4+PiAtwqDCoMKgIGlm IChJU19FUlIobmZjLT5waGFzZV90eCkpIHsKPj4+PiAtwqDCoMKgwqDCoMKgwqAgZGV2X2Vycihu ZmMtPmRldiwgImZhaWxlZCB0byBnZXQgVFggY2xrXG4iKTsKPj4+PiAtwqDCoMKgwqDCoMKgwqAg cmV0dXJuIFBUUl9FUlIobmZjLT5waGFzZV90eCk7Cj4+Pj4gLcKgwqDCoCB9Cj4+Pj4gLQo+Pj4+ IC3CoMKgwqAgbmZjLT5waGFzZV9yeCA9IGRldm1fY2xrX2dldChuZmMtPmRldiwgInJ4Iik7Cj4+ Pj4gLcKgwqDCoCBpZiAoSVNfRVJSKG5mYy0+cGhhc2VfcngpKSB7Cj4+Pj4gLcKgwqDCoMKgwqDC oMKgIGRldl9lcnIobmZjLT5kZXYsICJmYWlsZWQgdG8gZ2V0IFJYIGNsa1xuIik7Cj4+Pj4gLcKg wqDCoMKgwqDCoMKgIHJldHVybiBQVFJfRVJSKG5mYy0+cGhhc2VfcngpOwo+Pj4+IC3CoMKgwqAg fQo+Pj4+ICvCoMKgwqAgaW5pdC5uYW1lID0gZGV2bV9rc3RyZHVwKG5mYy0+ZGV2LCAibmZjI2Rp diIsIEdGUF9LRVJORUwpOwo+Pj4+ICvCoMKgwqAgaW5pdC5vcHMgPSAmY2xrX2RpdmlkZXJfb3Bz Owo+Pj4+ICvCoMKgwqAgZml4X2RpdjJfcGxsX25hbWVbMF0gPSBfX2Nsa19nZXRfbmFtZShuZmMt PmRldmljZV9jbGspOwo+Pj4KPj4+IFlvdSBzaG91bGQgYmUgdXNpbmcgImZ3X25hbWUiIHNvIEND RiBsb29rcyBhIERUIGRpcmVjdGx5LCBpbnN0ZWFkIG9mIHRoaXMKPj4gb2sKPj4+Cj4+Pj4gK8Kg wqDCoCBpbml0LnBhcmVudF9uYW1lcyA9IGZpeF9kaXYyX3BsbF9uYW1lOwo+Pj4+ICvCoMKgwqAg aW5pdC5udW1fcGFyZW50cyA9IDE7Cj4+Pj4gK8KgwqDCoCBuZmMtPm5hbmRfZGl2aWRlci5yZWcg PSBuZmMtPnJlZ19jbGs7Cj4+Pj4gK8KgwqDCoCBuZmMtPm5hbmRfZGl2aWRlci5zaGlmdCA9IENM S19ESVZfU0hJRlQ7Cj4+Pj4gK8KgwqDCoCBuZmMtPm5hbmRfZGl2aWRlci53aWR0aCA9IENMS19E SVZfV0lEVEg7Cj4+Pj4gK8KgwqDCoCBuZmMtPm5hbmRfZGl2aWRlci5ody5pbml0ID0gJmluaXQ7 Cj4+Pj4gK8KgwqDCoCBuZmMtPm5hbmRfZGl2aWRlci5mbGFncyA9IENMS19ESVZJREVSX09ORV9C QVNFRCB8Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgQ0xLX0RJVklE RVJfUk9VTkRfQ0xPU0VTVCB8Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgQ0xLX0RJVklERVJfQUxMT1dfWkVSTzsKPj4+PiArCj4+Pj4gK8KgwqDC oCBuZmMtPm5hbmRfY2xrID0gZGV2bV9jbGtfcmVnaXN0ZXIobmZjLT5kZXYsICZuZmMtPm5hbmRf ZGl2aWRlci5odyk7Cj4+Pj4gK8KgwqDCoCBpZiAoSVNfRVJSKG5mYy0+bmFuZF9jbGspKQo+Pj4+ ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4gUFRSX0VSUihuZmMtPm5hbmRfY2xrKTsKPj4+PiAgwqAg wqDCoMKgwqDCoCAvKiBpbml0IFNEX0VNTUNfQ0xPQ0sgdG8gc2FuZSBkZWZhdWx0cyB3L21pbiBj bG9jayByYXRlICovCj4+Pj4gLcKgwqDCoCByZWdtYXBfdXBkYXRlX2JpdHMobmZjLT5yZWdfY2xr LAo+Pj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDAsIENMS19TRUxFQ1RfTkFORCwg Q0xLX1NFTEVDVF9OQU5EKTsKPj4+PiArwqDCoMKgIHdyaXRlbChDTEtfU0VMRUNUX05BTkQgfCBy ZWFkbChuZmMtPnJlZ19jbGspLCBuZmMtPnJlZ19jbGspOwo+Pj4+ICDCoCDCoMKgwqDCoMKgIHJl dCA9IGNsa19wcmVwYXJlX2VuYWJsZShuZmMtPmNvcmVfY2xrKTsKPj4+PiAgwqDCoMKgwqDCoCBp ZiAocmV0KSB7Cj4+Pj4gQEAgLTEwMzAsMjkgKzEwNDIsMjEgQEAgc3RhdGljIGludCBtZXNvbl9u ZmNfY2xrX2luaXQoc3RydWN0IG1lc29uX25mYyAqbmZjKQo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKg wqAgZ290byBlcnJfZGV2aWNlX2NsazsKPj4+PiAgwqDCoMKgwqDCoCB9Cj4+Pj4gIMKgIC3CoMKg wqAgcmV0ID0gY2xrX3ByZXBhcmVfZW5hYmxlKG5mYy0+cGhhc2VfdHgpOwo+Pj4+ICvCoMKgwqAg cmV0ID0gY2xrX3ByZXBhcmVfZW5hYmxlKG5mYy0+bmFuZF9jbGspOwo+Pj4+ICDCoMKgwqDCoMKg IGlmIChyZXQpIHsKPj4+PiAtwqDCoMKgwqDCoMKgwqAgZGV2X2VycihuZmMtPmRldiwgImZhaWxl ZCB0byBlbmFibGUgVFggY2xvY2tcbiIpOwo+Pj4+IC3CoMKgwqDCoMKgwqDCoCBnb3RvIGVycl9w aGFzZV90eDsKPj4+PiAtwqDCoMKgIH0KPj4+PiAtCj4+Pj4gLcKgwqDCoCByZXQgPSBjbGtfcHJl cGFyZV9lbmFibGUobmZjLT5waGFzZV9yeCk7Cj4+Pj4gLcKgwqDCoCBpZiAocmV0KSB7Cj4+Pj4g LcKgwqDCoMKgwqDCoMKgIGRldl9lcnIobmZjLT5kZXYsICJmYWlsZWQgdG8gZW5hYmxlIFJYIGNs b2NrXG4iKTsKPj4+PiAtwqDCoMKgwqDCoMKgwqAgZ290byBlcnJfcGhhc2Vfcng7Cj4+Pj4gK8Kg wqDCoMKgwqDCoMKgIGRldl9lcnIobmZjLT5kZXYsICJwcmUgZW5hYmxlIE5GQyBkaXZpZGVyIGZh aWxcbiIpOwo+Pj4+ICvCoMKgwqDCoMKgwqDCoCBnb3RvIGVycl9uYW5kX2NsazsKPj4+PiAgwqDC oMKgwqDCoCB9Cj4+Pj4gIMKgIMKgwqDCoMKgwqAgcmV0ID0gY2xrX3NldF9yYXRlKG5mYy0+ZGV2 aWNlX2NsaywgMjQwMDAwMDApOwo+Pj4+ICDCoMKgwqDCoMKgIGlmIChyZXQpCj4+Pj4gLcKgwqDC oMKgwqDCoMKgIGdvdG8gZXJyX2Rpc2FibGVfcng7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGdvdG8g ZXJyX2Rpc2FibGVfY2xrOwo+Pj4+ICDCoCDCoMKgwqDCoMKgIHJldHVybiAwOwo+Pj4+ICDCoCAt ZXJyX2Rpc2FibGVfcng6Cj4+Pj4gLcKgwqDCoCBjbGtfZGlzYWJsZV91bnByZXBhcmUobmZjLT5w aGFzZV9yeCk7Cj4+Pj4gLWVycl9waGFzZV9yeDoKPj4+PiAtwqDCoMKgIGNsa19kaXNhYmxlX3Vu cHJlcGFyZShuZmMtPnBoYXNlX3R4KTsKPj4+PiAtZXJyX3BoYXNlX3R4Ogo+Pj4+ICtlcnJfZGlz YWJsZV9jbGs6Cj4+Pj4gK8KgwqDCoCBjbGtfZGlzYWJsZV91bnByZXBhcmUobmZjLT5uYW5kX2Ns ayk7Cj4+Pj4gK2Vycl9uYW5kX2NsazoKPj4+PiAgwqDCoMKgwqDCoCBjbGtfZGlzYWJsZV91bnBy ZXBhcmUobmZjLT5kZXZpY2VfY2xrKTsKPj4+PiAgwqAgZXJyX2RldmljZV9jbGs6Cj4+Pj4gIMKg wqDCoMKgwqAgY2xrX2Rpc2FibGVfdW5wcmVwYXJlKG5mYy0+Y29yZV9jbGspOwo+Pj4+IEBAIC0x MDYxLDggKzEwNjUsNyBAQCBzdGF0aWMgaW50IG1lc29uX25mY19jbGtfaW5pdChzdHJ1Y3QgbWVz b25fbmZjICpuZmMpCj4+Pj4gIMKgIMKgIHN0YXRpYyB2b2lkIG1lc29uX25mY19kaXNhYmxlX2Ns ayhzdHJ1Y3QgbWVzb25fbmZjICpuZmMpCj4+Pj4gIMKgIHsKPj4+PiAtwqDCoMKgIGNsa19kaXNh YmxlX3VucHJlcGFyZShuZmMtPnBoYXNlX3J4KTsKPj4+PiAtwqDCoMKgIGNsa19kaXNhYmxlX3Vu cHJlcGFyZShuZmMtPnBoYXNlX3R4KTsKPj4+PiArwqDCoMKgIGNsa19kaXNhYmxlX3VucHJlcGFy ZShuZmMtPm5hbmRfY2xrKTsKPj4+PiAgwqDCoMKgwqDCoCBjbGtfZGlzYWJsZV91bnByZXBhcmUo bmZjLT5kZXZpY2VfY2xrKTsKPj4+PiAgwqDCoMKgwqDCoCBjbGtfZGlzYWJsZV91bnByZXBhcmUo bmZjLT5jb3JlX2Nsayk7Cj4+Pj4gIMKgIH0KPj4+PiBAQCAtMTM3NSw2ICsxMzc4LDcgQEAgc3Rh dGljIGludCBtZXNvbl9uZmNfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPj4+ PiAgwqDCoMKgwqDCoCBzdHJ1Y3QgZGV2aWNlICpkZXYgPSAmcGRldi0+ZGV2Owo+Pj4+ICDCoMKg wqDCoMKgIHN0cnVjdCBtZXNvbl9uZmMgKm5mYzsKPj4+PiAgwqDCoMKgwqDCoCBzdHJ1Y3QgcmVz b3VyY2UgKnJlczsKPj4+PiArwqDCoMKgIHUzMiBleHRfY2xrX3JlZzsKPj4+PiAgwqDCoMKgwqDC oCBpbnQgcmV0LCBpcnE7Cj4+Pj4gIMKgIMKgwqDCoMKgwqAgbmZjID0gZGV2bV9remFsbG9jKGRl diwgc2l6ZW9mKCpuZmMpLCBHRlBfS0VSTkVMKTsKPj4+PiBAQCAtMTM5Niw5ICsxNDAwLDE1IEBA IHN0YXRpYyBpbnQgbWVzb25fbmZjX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYp Cj4+Pj4gIMKgwqDCoMKgwqAgaWYgKElTX0VSUihuZmMtPnJlZ19iYXNlKSkKPj4+PiAgwqDCoMKg wqDCoMKgwqDCoMKgIHJldHVybiBQVFJfRVJSKG5mYy0+cmVnX2Jhc2UpOwo+Pj4+ICDCoCAtwqDC oMKgIG5mYy0+cmVnX2NsayA9Cj4+Pj4gLcKgwqDCoMKgwqDCoMKgIHN5c2Nvbl9yZWdtYXBfbG9v a3VwX2J5X3BoYW5kbGUoZGV2LT5vZl9ub2RlLAo+Pj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJhbWxvZ2ljLG1tYy1zeXNjb24iKTsKPj4+PiArwqDC oMKgIHJldCA9IG9mX3Byb3BlcnR5X3JlYWRfdTMyKHBkZXYtPmRldi5vZl9ub2RlLAo+Pj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInNkX2VtbWNfY19jbGtjIiwKPj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICZleHRfY2xrX3JlZyk7Cj4+ Pj4gK8KgwqDCoCBpZiAocmV0KSB7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGRldl9lcnIoZGV2LCAi ZmFpbGVkIHRvIGdldCBOQU5EIGV4dGVybmFsIGNsb2NrIHJlZ2lzdGVyXG4iKTsKPj4+PiArwqDC oMKgwqDCoMKgwqAgcmV0dXJuIHJldDsKPj4+PiArwqDCoMKgIH0KPj4+PiArCj4+Pj4gK8KgwqDC oCBuZmMtPnJlZ19jbGsgPSBkZXZtX2lvcmVtYXAoJnBkZXYtPmRldiwgZXh0X2Nsa19yZWcsIHNp emVvZihpbnQpKTsKPj4+Cj4+PiBUaGF0J3MgaG93IHlvdSBzaG91bGQgZ2V0IGEgcmVnaXN0ZXIg cmVnaW9uLgo+Pj4gSWYgeW91IHdhbnQgYW4gZXhhbXBsZSBvZiBhIGRldmljZSBjbGFpbWluZyBz ZXZlcmFsIHJlZ2lvbiBvbiBhbWxvZ2ljLAo+Pj4gaGF2ZSBhIGxvb2sgYXQgdGhlIHBpbmN0cmwg ZHJpdmVyLgo+PiBvawo+Pj4KPj4+PiAgwqDCoMKgwqDCoCBpZiAoSVNfRVJSKG5mYy0+cmVnX2Ns aykpIHsKPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgIGRldl9lcnIoZGV2LCAiRmFpbGVkIHRvIGxv b2t1cCBjbG9jayBiYXNlXG4iKTsKPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBQVFJf RVJSKG5mYy0+cmVnX2Nsayk7Cj4+Pgo+Pj4gLgo+IAo+IC4KCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0 CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFk ZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK