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 10776C4332F for ; Wed, 19 Oct 2022 08:46:26 +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-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Subject:Cc: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=USS/S7V6Xfxw8pC+5fxSHeDw/6U/hdadhOv/TFxeg7g=; b=nPr5ZILPP+genB m9eS/sYXp8D3WUotmZATDTgIpmPkC7eD3GYThwuNGpgHdcjupWc8ngL6XmgbONSci0YcczFkPK9qB M02k9FSS23M/3PCcrjvSEnyYSVDb+qpVk6mGk+Vl+oyi/qP7Hd40D/0FjTgUo9rjnlg4hmEB9RI8T ym9EBrj7WXeF9hMRGU3rIov6+7R02OIRsdmF2+87NdHyJA0emP7zEUUk2RVHrcRi7oLFKPwBxQxWI oIjK4MrnNgueKK020CsKBeD1VkLWIBBhKgkura3xJbWmtppD9a3TZQwS7pVJmxafFdr9LlbDq6OaA 1vuvPNFWkx65k8Iaud3g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1ol4iM-00Gp4f-QE; Wed, 19 Oct 2022 08:46:14 +0000 Received: from relay9-d.mail.gandi.net ([217.70.183.199]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1ol4iI-00GoSp-Al for linux-mtd@lists.infradead.org; Wed, 19 Oct 2022 08:46:13 +0000 Received: (Authenticated sender: miquel.raynal@bootlin.com) by mail.gandi.net (Postfix) with ESMTPSA id 51F08FF810; Wed, 19 Oct 2022 08:45:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1666169161; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xpjsMDZZWLSjwamawi4W6gxlBloXg84sXExvFeg4K/8=; b=iezAfH7r21jpqg79JquZu7Os2NUXwJAeYQbkXDDDX0U8xQlaaNaaBbBxcQqwogS6kG/jwk tPO4oh50tIIHRqqyHlgg5vZV44E9+FA31EwYpK0Ufne26lgp0o1hL6JweuQFG0HfKhZKpV aXUIpOE6xulg+rQfgkOVB1+jVVmGHsN2DVdlunkQs6nB0qCi8+a+P3en5gYT1bcBe7CZtf x03u5/iD5jJbMBkzUbS+kgu/CJcdSr/4RsE0XqSbw9j9Boo8zJ8e/xuhQIiNfZQ1ZO04lO Bf7pKiMYJh/O3xxisInOfU+k1cPDUxtQ8XN4thmzBpWOBZQKyHhdasCmgQ+a/A== Date: Wed, 19 Oct 2022 10:45:58 +0200 From: Miquel Raynal To: Vadym Kochan Cc: Richard Weinberger , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Roger Quadros , Florian Fainelli , Cai Huoqing , Thomas Bogendoerfer , Liang Yang , linux-mtd@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Elad Nachman , Chris Packham , Aviram Dali Subject: Re: [PATCH 3/3] mtd: rawnand: marvell: add support for AC5 SoC Message-ID: <20221019104558.062ebf9f@xps-13> In-Reply-To: <20221019082046.30160-4-vadym.kochan@plvision.eu> References: <20221019082046.30160-1-vadym.kochan@plvision.eu> <20221019082046.30160-4-vadym.kochan@plvision.eu> Organization: Bootlin X-Mailer: Claws Mail 4.0.0 (GTK+ 3.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221019_014610_701855_72B351B4 X-CRM114-Status: GOOD ( 42.06 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org SGkgVmFkeW0sCgp2YWR5bS5rb2NoYW5AcGx2aXNpb24uZXUgd3JvdGUgb24gV2VkLCAxOSBPY3Qg MjAyMiAxMToyMDo0MCArMDMwMDoKCj4gRnJvbTogQXZpcmFtIERhbGkgPGF2aXJhbWRAbWFydmVs bC5jb20+Cj4gCj4gVGhlIGZvbGxvd2luZyBjaGFuZ2VzIHdlcmUgbWFkZSB0byBhZGQgQUM1IHN1 cHBvcnQ6Cj4gCj4gICAgMSkgTW9kaWZ5IE1hcnZlbGwgbmFuZCBORkMgdGltaW5nIHNldCBmb3Ig bW9kZSAwCj4gCj4gICAgMikgZml4IHZhbGlkYXRpb24gaW4gQUM1IE5hbmQgZHJpdmVyIGZvciBP TkZJIHRpbWluZ3MgdmFsdWVzIG1vZGVzIDEgYW5kIDMKPiAKPiAgICAzKSByZW1vdmUgdW5uZWNl c3NhcnkgbmFuZCB0aW1pbmctbW9kZSBpbiBkZXZpY2UgdHJlZSBvZiBhYzUuZHRzaQo+IAo+ICAg IDQpIGFkZCBuYW5kIG1pc3NpbmcgQUM1WCBsYXlvdXRzICwgYWRkIG9wdGlvbiB0byB1c2UgbmR0 ciBwcmVkZWZpbmVkIHZhbHVlcwo+IAo+ICAgIDUpIFplcm8gc3RlcHMgYW5kIHRvdGFsIGZpZWxk cyBvZiBlY2MgaW4gZWNjIGNvbnRyb2xsZXIgaW5pdGlhbGl6YXRpb24gc28KPiAgICAgICBuYW5k X3NjYW5fdGFpbCgpIHdpbGwgY2FsY3VsYXRlIHRoZXNlIHR3byBmaWVsZHMsIG90aGVyd2lzZQo+ ICAgICAgIE5BTkQgaW5pdGlhbGl6YXRpb24gd2lsbCBmYWlsIHdpdGgga2VybmVsIDUuMTUgYW5k IGFib3ZlLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEF2aXJhbSBEYWxpIDxhdmlyYW1kQG1hcnZlbGwu Y29tPgo+IFNpZ25lZC1vZmYtYnk6IFZhZHltIEtvY2hhbiA8dmFkeW0ua29jaGFuQHBsdmlzaW9u LmV1Pgo+IC0tLQo+ICBkcml2ZXJzL210ZC9uYW5kL3Jhdy9LY29uZmlnICAgICAgICB8ICAgMiAr LQo+ICBkcml2ZXJzL210ZC9uYW5kL3Jhdy9tYXJ2ZWxsX25hbmQuYyB8IDI3NyArKysrKysrKysr KysrKysrKysrKysrKystLS0tCj4gIDIgZmlsZXMgY2hhbmdlZCwgMjQ2IGluc2VydGlvbnMoKyks IDMzIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL210ZC9uYW5kL3Jhdy9L Y29uZmlnIGIvZHJpdmVycy9tdGQvbmFuZC9yYXcvS2NvbmZpZwo+IGluZGV4IDRjZDQwYWYzNjJk ZS4uYjdiYjYyZjI3ZTAyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbXRkL25hbmQvcmF3L0tjb25m aWcKPiArKysgYi9kcml2ZXJzL210ZC9uYW5kL3Jhdy9LY29uZmlnCj4gQEAgLTE2MCw3ICsxNjAs NyBAQCBjb25maWcgTVREX05BTkRfTUFSVkVMTAo+ICAJICBpbmNsdWRpbmc6Cj4gIAkgIC0gUFhB M3h4IHByb2Nlc3NvcnMgKE5GQ3YxKQo+ICAJICAtIDMyLWJpdCBBcm1hZGEgcGxhdGZvcm1zIChY UCwgMzd4LCAzOHgsIDM5eCkgKE5GQ3YyKQo+IC0JICAtIDY0LWJpdCBBcmFtZGEgcGxhdGZvcm1z ICg3aywgOGspIChORkN2MikKPiArCSAgLSA2NC1iaXQgQXJhbWRhIHBsYXRmb3JtcyAoN2ssIDhr LCBhYzUpIChORkN2MikKPiAgCj4gIGNvbmZpZyBNVERfTkFORF9TTENfTFBDMzJYWAo+ICAJdHJp c3RhdGUgIk5YUCBMUEMzMnh4IFNMQyBOQU5EIGNvbnRyb2xsZXIiCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbXRkL25hbmQvcmF3L21hcnZlbGxfbmFuZC5jIGIvZHJpdmVycy9tdGQvbmFuZC9yYXcv bWFydmVsbF9uYW5kLmMKPiBpbmRleCBiOWQxZTk2ZTMzMzQuLjk0MGE4OTExNTc4MiAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL210ZC9uYW5kL3Jhdy9tYXJ2ZWxsX25hbmQuYwo+ICsrKyBiL2RyaXZl cnMvbXRkL25hbmQvcmF3L21hcnZlbGxfbmFuZC5jCj4gQEAgLTIyNiw2ICsyMjYsMjAgQEAKPiAg I2RlZmluZSBYVFlQRV9DT01NQU5EX0RJU1BBVENICTYKPiAgI2RlZmluZSBYVFlQRV9NQVNLCQk3 Cj4gIAo+ICsvKiB1c2UgdFJQX21pbiwgdFdDX21pbiBhbmQgdFdQX21pbiB0byBkaXN0aW5jdCBh Y3Jvc3MgdGltaW5ncyBtb2RlcyAqLwo+ICsjZGVmaW5lIElTX1RJTUlOR1NfRVFVQUwodDEsIHQy KSBcCj4gKwkJKCh0MS0+dFJQX21pbiA9PSB0Mi0+dFJQX21pbiAmJlwKPiArCQl0MS0+dFdDX21p biA9PSB0Mi0+dFdDX21pbiAmJlwKPiArCQl0MS0+dFdQX21pbiA9PSB0Mi0+dFdQX21pbikgPyB0 cnVlIDogZmFsc2UpCj4gKwo+ICsvKiAgbmR0cjAsMSBzZXQgLCBlYWNoIHNldCBoYXMgZmV3IG1v ZGVzIGxldmVsICovCj4gK3R5cGVkZWYgZW51bSBtYXJ2ZWxsX25mY190aW1pbmdfbW9kZV9zZXQg ewo+ICsJTUFSVkVMTF9ORkNfTkRUUl9TRVRfMCwJCS8qIHRlc3RlZCB3aXRoIGFjNSAqLwo+ICsK PiArCU1BUlZFTExfTkZDX05EVFJfTlVNX09GX1NFVCwKPiArCU1BUlZFTExfTkZDX05EVFJfU0VU X05PTiA9IE1BUlZFTExfTkZDX05EVFJfTlVNX09GX1NFVAo+ICt9IG1hcnZlbGxfbmZjX3RpbWlu Z19tb2RlX3NldF90Owo+ICsKPiAgLyoqCj4gICAqIHN0cnVjdCBtYXJ2ZWxsX2h3X2VjY19sYXlv dXQgLSBsYXlvdXQgb2YgTWFydmVsbCBFQ0MKPiAgICoKPiBAQCAtMjgzLDE0ICsyOTcsMjEgQEAg c3RydWN0IG1hcnZlbGxfaHdfZWNjX2xheW91dCB7Cj4gIAo+ICAvKiBMYXlvdXRzIGV4cGxhaW5l ZCBpbiBBTi0zNzlfTWFydmVsbF9Tb0NfTkZDX0VDQyAqLwo+ICBzdGF0aWMgY29uc3Qgc3RydWN0 IG1hcnZlbGxfaHdfZWNjX2xheW91dCBtYXJ2ZWxsX25mY19sYXlvdXRzW10gPSB7Cj4gLQlNQVJW RUxMX0xBWU9VVCggIDUxMiwgICA1MTIsICAxLCAgMSwgIDEsICA1MTIsICA4LCAgOCwgIDAsICAw LCAgMCksCj4gLQlNQVJWRUxMX0xBWU9VVCggMjA0OCwgICA1MTIsICAxLCAgMSwgIDEsIDIwNDgs IDQwLCAyNCwgIDAsICAwLCAgMCksCj4gLQlNQVJWRUxMX0xBWU9VVCggMjA0OCwgICA1MTIsICA0 LCAgMSwgIDEsIDIwNDgsIDMyLCAzMCwgIDAsICAwLCAgMCksCj4gLQlNQVJWRUxMX0xBWU9VVCgg MjA0OCwgICA1MTIsICA4LCAgMiwgIDEsIDEwMjQsICAwLCAzMCwxMDI0LDMyLCAzMCksCj4gLQlN QVJWRUxMX0xBWU9VVCggNDA5NiwgICA1MTIsICA0LCAgMiwgIDIsIDIwNDgsIDMyLCAzMCwgIDAs ICAwLCAgMCksCj4gLQlNQVJWRUxMX0xBWU9VVCggNDA5NiwgICA1MTIsICA4LCAgNSwgIDQsIDEw MjQsICAwLCAzMCwgIDAsIDY0LCAzMCksCj4gLQlNQVJWRUxMX0xBWU9VVCggODE5MiwgICA1MTIs ICA0LCAgNCwgIDQsIDIwNDgsICAwLCAzMCwgIDAsICAwLCAgMCksCj4gLQlNQVJWRUxMX0xBWU9V VCggODE5MiwgICA1MTIsICA4LCAgOSwgIDgsIDEwMjQsICAwLCAzMCwgIDAsIDE2MCwgMzApLAo+ ICsJTUFSVkVMTF9MQVlPVVQoNTEyLCAgIDUxMiwgIDEsICAxLCAgMSwgIDUxMiwgIDgsICA4LCAg MCwgICAwLCAgMCksCj4gKwlNQVJWRUxMX0xBWU9VVCgyMDQ4LCAgIDUxMiwgIDEsICAxLCAgMSwg MjA0OCwgNDAsIDI0LCAgMCwgICAwLCAgMCksCj4gKwlNQVJWRUxMX0xBWU9VVCgyMDQ4LCAgIDUx MiwgIDQsICAxLCAgMSwgMjA0OCwgMzIsIDMwLCAgMCwgICAwLCAgMCksCj4gKwlNQVJWRUxMX0xB WU9VVCgyMDQ4LCAgIDUxMiwgIDgsICAyLCAgMSwgMTAyNCwgIDAsIDMwLCAgMTAyNCwgMzIsIDMw KSwKPiArCU1BUlZFTExfTEFZT1VUKDIwNDgsICAgNTEyLCAgOCwgIDIsICAxLCAxMDI0LCAgMCwg MzAsICAxMDI0LCA2NCwgMzApLAo+ICsJTUFSVkVMTF9MQVlPVVQoMjA0OCwgICA1MTIsICAxMiwg MywgIDIsIDcwNCwgICAwLCAzMCwgIDY0MCwgMCwgIDMwKSwKPiArCU1BUlZFTExfTEFZT1VUKDIw NDgsICAgNTEyLCAgMTYsIDUsICA0LCA1MTIsICAgMCwgMzAsICAwLCAgIDMyLCAzMCksCj4gKwlN QVJWRUxMX0xBWU9VVCg0MDk2LCAgIDUxMiwgIDQsICAyLCAgMiwgMjA0OCwgMzIsIDMwLCAgMCwg ICAwLCAgMCksCj4gKwlNQVJWRUxMX0xBWU9VVCg0MDk2LCAgIDUxMiwgIDgsICA1LCAgNCwgMTAy NCwgIDAsIDMwLCAgMCwgICA2NCwgMzApLAo+ICsJTUFSVkVMTF9MQVlPVVQoNDA5NiwgICA1MTIs ICAxMiwgNiwgIDUsIDcwNCwgICAwLCAzMCwgIDU3NiwgMzIsIDMwKSwKPiArCU1BUlZFTExfTEFZ T1VUKDQwOTYsICAgNTEyLCAgMTYsIDksICA4LCA1MTIsICAgMCwgMzAsICAwLCAgIDMyLCAzMCks Cj4gKwlNQVJWRUxMX0xBWU9VVCg4MTkyLCAgIDUxMiwgIDQsICA0LCAgNCwgMjA0OCwgIDAsIDMw LCAgMCwgICAwLCAgMCksCj4gKwlNQVJWRUxMX0xBWU9VVCg4MTkyLCAgIDUxMiwgIDgsICA5LCAg OCwgMTAyNCwgIDAsIDMwLCAgMCwgIDE2MCwgMzApLAo+ICsJTUFSVkVMTF9MQVlPVVQoODE5Miwg ICA1MTIsICAxMiwgMTIsIDExLCA3MDQsICAwLCAzMCwgIDQ0OCwgNjQsIDMwKSwKPiArCU1BUlZF TExfTEFZT1VUKDgxOTIsICAgNTEyLCAgMTYsIDE3LCAxNiwgNTEyLCAgMCwgMzAsICAwLCAgIDMy LCAzMCksCj4gIH07CgpJZiB5b3UgZG9uJ3QgbGlrZSB0aGUgbGF5b3V0LCBpdCdzIGZpbmUsIGJ1 dCB5b3UgbXVzdCBkbyBpdCBpbiBhCnNlcGFyYXRlIGNvbW1pdC4KClsuLi5dCgo+ICsvKgo+ICsg KiBnZXQgbmFuZCB0aW1pbmctbW9kZSBmcm9tIGRldmljZSB0cmVlCj4gKyAqLwo+ICtzdGF0aWMg aW50IGdldF9uYW5kX3RpbWluZ19tb2RlKHN0cnVjdCBkZXZpY2Vfbm9kZSAqbnApCj4gK3sKPiAr CWludCByZXQ7Cj4gKwl1MzIgdmFsOwo+ICsKPiArCXJldCA9IG9mX3Byb3BlcnR5X3JlYWRfdTMy KG5wLCAibmFuZC10aW1pbmctbW9kZSIsICZ2YWwpOwo+ICsJcmV0dXJuIHJldCA/IHJldCA6IHZh bDsKPiArfQo+ICsKPiAgLyoKPiAgICogSW50ZXJuYWwgaGVscGVyIHRvIGNvbmRpdGlvbm5hbGx5 IGFwcGx5IGEgZGVsYXkgKGZyb20gdGhlIGFib3ZlIHN0cnVjdHVyZSwKPiAgICogbW9zdCBvZiB0 aGUgdGltZSkuCj4gQEAgLTIyNTcsOSArMjM5OSwyMSBAQCBzdGF0aWMgaW50IG1hcnZlbGxfbmFu ZF9od19lY2NfY29udHJvbGxlcl9pbml0KHN0cnVjdCBtdGRfaW5mbyAqbXRkLAo+ICAJfQo+ICAK PiAgCW10ZF9zZXRfb29ibGF5b3V0KG10ZCwgJm1hcnZlbGxfbmFuZF9vb2JsYXlvdXRfb3BzKTsK PiAtCWVjYy0+c3RlcHMgPSBsLT5uY2h1bmtzOwo+ICAJZWNjLT5zaXplID0gbC0+ZGF0YV9ieXRl czsKPiAgCj4gKwkvKiBuYW5kX3NjYW5fdGFpbCBmdW5jIHBlcmZvcm0gIHZhbGlkaXR5IHRlc3Rz IGZvciBFQ0Mgc3RyZW5ndGgsIGFuZCBpdAo+ICsJICogYXNzdW1lcyB0aGF0IGFsbCBjaHVua3Mg YXJlIHdpdGggc2FtZSBzaXplLiBpbiBvdXIgY2FzZSB3aGVuIGVjYyBpcyAxMgo+ICsJICogdGhl IGNodW5rIHNpemUgaXMgNzA0IGJ1dCB0aGUgbGFzdCBjaHVuayBpcyB3aXRoIGRpZmZlcmVudCBz aXplIHNvCj4gKwkgKiB3ZSBjaGVhdCBpdCBuYW5kX3NjYW5fdGFpbCB2YWxpZGl0eSB0ZXN0cyBi eSBzZXQgaW5mby0+ZWNjX3NpemUgdmFsdWUgdG8KPiArCSAqIDUxMi4KClRoZSBkcml2ZXIgYWxy ZWFkeSBzdXBwb3J0cyB0aGlzLCB0cnlpbmcgdG8gY2hlYXQgdGhlIGNvcmUgaXMgYmFkLiBTZWUK dGhlIGxhc3QgbWVtYmVycyBvZiBzdHJ1Y3QgbWFydmVsbF9od19lY2NfbGF5b3V0LgoKPiArCSAq Lwo+ICsJaWYgKGVjYy0+c3RyZW5ndGggPT0gMTIpCj4gKwkJZWNjLT5zaXplID0gNTEyOwo+ICsK PiArCS8qIGxldCBuYW5kX3NjYW5fdGFpbCgpIGNhbGN1bGF0ZSB0aGVzZSB0d28gZmllbGRzICov Cj4gKwllY2MtPnN0ZXBzID0gMDsKPiArCWVjYy0+dG90YWwgPSAwOwo+ICsKPiAgCWlmIChlY2Mt PnN0cmVuZ3RoID09IDEpIHsKPiAgCQljaGlwLT5lY2MuYWxnbyA9IE5BTkRfRUNDX0FMR09fSEFN TUlORzsKPiAgCQllY2MtPnJlYWRfcGFnZV9yYXcgPSBtYXJ2ZWxsX25mY19od19lY2NfaG1nX3Jl YWRfcGFnZV9yYXc7Cj4gQEAgLTIzNjAsOSArMjUxNCwxMSBAQCBzdGF0aWMgaW50IG1hcnZlbGxf bmZjX3NldHVwX2ludGVyZmFjZShzdHJ1Y3QgbmFuZF9jaGlwICpjaGlwLCBpbnQgY2hpcG5yLAo+ ICAJc3RydWN0IG1hcnZlbGxfbmFuZF9jaGlwICptYXJ2ZWxsX25hbmQgPSB0b19tYXJ2ZWxsX25h bmQoY2hpcCk7Cj4gIAlzdHJ1Y3QgbWFydmVsbF9uZmMgKm5mYyA9IHRvX21hcnZlbGxfbmZjKGNo aXAtPmNvbnRyb2xsZXIpOwo+ICAJdW5zaWduZWQgaW50IHBlcmlvZF9ucyA9IDEwMDAwMDAwMDAg LyBjbGtfZ2V0X3JhdGUobmZjLT5jb3JlX2NsaykgKiAyOwo+IC0JY29uc3Qgc3RydWN0IG5hbmRf c2RyX3RpbWluZ3MgKnNkcjsKPiArCWNvbnN0IHN0cnVjdCBuYW5kX3Nkcl90aW1pbmdzICpzZHIs ICp0aW1pbmdzOwo+ICAJc3RydWN0IG1hcnZlbGxfbmZjX3RpbWluZ3MgbmZjX3RtZzsKPiAgCWlu dCByZWFkX2RlbGF5Owo+ICsJbWFydmVsbF9uZmNfdGltaW5nX21vZGVfc2V0X3QgbW9kZXNfc2V0 Owo+ICsJaW50IG1vZGUgPSAwOwo+ICAKPiAgCXNkciA9IG5hbmRfZ2V0X3Nkcl90aW1pbmdzKGNv bmYpOwo+ICAJaWYgKElTX0VSUihzZHIpKQo+IEBAIC0yNDIxLDMyICsyNTc3LDcxIEBAIHN0YXRp YyBpbnQgbWFydmVsbF9uZmNfc2V0dXBfaW50ZXJmYWNlKHN0cnVjdCBuYW5kX2NoaXAgKmNoaXAs IGludCBjaGlwbnIsCj4gIAkJCW5mY190bWcudFIgPSAwOwo+ICAJfQo+ICAKPiAtCWlmIChjaGlw bnIgPCAwKQo+IC0JCXJldHVybiAwOwo+ICAKPiAtCW1hcnZlbGxfbmFuZC0+bmR0cjAgPQo+IC0J CU5EVFIwX1RSUChuZmNfdG1nLnRSUCkgfAo+IC0JCU5EVFIwX1RSSChuZmNfdG1nLnRSSCkgfAo+ IC0JCU5EVFIwX0VUUlAobmZjX3RtZy50UlApIHwKPiAtCQlORFRSMF9UV1AobmZjX3RtZy50V1Ap IHwKPiAtCQlORFRSMF9UV0gobmZjX3RtZy50V0gpIHwKPiAtCQlORFRSMF9UQ1MobmZjX3RtZy50 Q1MpIHwKPiAtCQlORFRSMF9UQ0gobmZjX3RtZy50Q0gpOwo+ICsJLyogZ2V0IHRoZSB0aW1pbmcg bW9kZXMgZnJvbSBwcmVkZWZpbmVkIHZhbHVlcyBhY2NvcmRpbmcgdG8gaXRzIGNvbXBhdGliaWxp dHkgKi8KPiArCWlmIChuZmMtPmNhcHMtPmlzX21hcnZlbGxfdGltaW5nX21vZGVzKSB7Cj4gKwkJ LyogZ2V0IHRoZSBtb2RlIHNldCAqLwo+ICsJCW1vZGVzX3NldCA9IG5mYy0+Y2Fwcy0+dGltaW5n X21vZGVfc2V0Owo+ICsJCWlmIChtb2Rlc19zZXQgPj0gTUFSVkVMTF9ORkNfTkRUUl9TRVRfTk9O KSB7Cj4gKwkJCWRldl93YXJuKG5mYy0+ZGV2LAo+ICsJCQkJIldhcm5pbmc6IG5vdCBzdXBwb3J0 ZWQgdGltaW5nIHJlZ2lzdGVycyBzZXQsdXNlIHNldCBudW1iZXIgMCBieSBkZWZhdWx0XG4iKTsK PiAgCj4gLQltYXJ2ZWxsX25hbmQtPm5kdHIxID0KPiAtCQlORFRSMV9UQVIobmZjX3RtZy50QVIp IHwKPiAtCQlORFRSMV9UV0hSKG5mY190bWcudFdIUikgfAo+IC0JCU5EVFIxX1RSKG5mY190bWcu dFIpOwo+ICsJCQltb2Rlc19zZXQgPSBNQVJWRUxMX05GQ19ORFRSX1NFVF8wOwo+ICsJCX0KPiAg Cj4gLQlpZiAobmZjLT5jYXBzLT5pc19uZmN2Mikgewo+IC0JCW1hcnZlbGxfbmFuZC0+bmR0cjAg fD0KPiAtCQkJTkRUUjBfUkRfQ05UX0RFTChyZWFkX2RlbGF5KSB8Cj4gLQkJCU5EVFIwX1NFTENO VFIgfAo+IC0JCQlORFRSMF9UQURMKG5mY190bWcudEFETCk7Cj4gKwkJLyogZmluZCB0aGUgY2Fs bGVyIG1vZGUgYWNjb3JkaW5nIHRvIHRpbWluZ3MgdmFsdWVzICovCj4gKwkJLyogaWYgZXhpdCBv biBlcnJvciBpdCBtZWFucyBubyBtb3JlIG1vZGVzOyBub3Qgc3VwcG9zZSB0byBoYXBwZW4gKi8K PiArCQlkbyB7Cj4gKwkJCXRpbWluZ3MgPSBvbmZpX2FzeW5jX3RpbWluZ19tb2RlX3RvX3Nkcl90 aW1pbmdzKG1vZGUpOwoKVGhlIHRpbWluZyBuZWdvdGlhdGlvbiBpcyBoYW5kbGVkIGJ5IHRoZSBj b3JlLCBJIGRvbid0IHNlZSB3aHkgeW91CndvdWxkIG5lZWQgdGhpcy4KCj4gKwkJCWlmIChJU19U SU1JTkdTX0VRVUFMKHRpbWluZ3MsIHNkcikpCj4gKwkJCQlicmVhazsKPiArCQkJbW9kZSsrOwo+ ICsJCX0gd2hpbGUgKCFJU19FUlIodGltaW5ncykpOwo+ICsKPiArCQkvKiBpZiBtb2RlIGlzIG5v dCBzdXBwb3J0ZWQgYnkgTkZDLCByZXR1cm4gZmFsc2Ugb3IgaWYgbmFuZC10aW1pbmctbW9kZSB0 aGF0Cj4gKwkJICogZXhpc3RzIGluIGRldmljZSB0cmVlIGdyZWF0ZXIgdGhlbiBjYWxsZXIgbW9k ZSBhbHNvIHJldHVybiBmYWxzZSBhbmQgd2FpdAo+ICsJCSAqIGZvciBjYWxsZXIgdG8gdHJ5IHdp dGggbmV4dCBtb2RlIChtb2RlLTEpLiB3ZSB3YW50IHRoZSBuYW5kIGZlYXR1cmUgdG8gYmUKPiAr CQkgKiBjb25maWd1cmVkIHdpdGggbmFuZC10aW1pbmctbW9kZSB2YWx1ZS4KPiArCQkgKi8KPiAr CQlpZiAobW9kZSA+IG5mYy0+Y2Fwcy0+bWF4X21vZGVfbnVtYmVyIHx8Cj4gKwkJCSAoKG1hcnZl bGxfbmFuZC0+bmFuZF90aW1pbmdfbW9kZSkgPj0gMCAmJgo+ICsJCQkgKG1vZGUgPiBtYXJ2ZWxs X25hbmQtPm5hbmRfdGltaW5nX21vZGUpKSkKPiArCQkJcmV0dXJuIC1FT1BOT1RTVVBQOwoKWy4u Ll0KCj4gQEAgLTI2ODEsNiArMjg3NywxMCBAQCBzdGF0aWMgaW50IG1hcnZlbGxfbmFuZF9jaGlw X2luaXQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgbWFydmVsbF9uZmMgKm5mYywKPiAgCWlm IChvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wobnAsICJtYXJ2ZWxsLG5hbmQta2VlcC1jb25maWciKSkK PiAgCQljaGlwLT5vcHRpb25zIHw9IE5BTkRfS0VFUF9USU1JTkdTOwo+ICAKPiArCS8qIHJlYWQg dGhlIG1vZGUgZnJvbSBkZXZpY2UgdHJlZSAqLwo+ICsJZG4gPSBuYW5kX2dldF9mbGFzaF9ub2Rl KGNoaXApOwo+ICsJbWFydmVsbF9uYW5kLT5uYW5kX3RpbWluZ19tb2RlID0gZ2V0X25hbmRfdGlt aW5nX21vZGUoZG4pOwoKSSdtIHNvcnJ5IGJ1dCB1bmxlc3MgeW91IGdpdmUgbWUgYSByZWFsbHkg Y29udmluY2luZyBleHBsYW5hdGlvbiwgdGhpcwppcyBub3QgZ29ubmEgd29yay4gVGhlIHRpbWlu ZyBtb2RlIHNob3VsZCBiZSBuZWdvdGlhdGVkIGJldHdlZW4gdGhlCmNvbnRyb2xsZXIgYW5kIHRo ZSBjaGlwLCB0aGVuIHRoZSBjb250cm9sbGVyIG5lZWRzIHRvIGNvbmZpZ3VyZSBpdHMgb3duCnJl Z2lzdGVycyB0byBmaXQgdGhlc2UgdGltaW5ncy4gVGhlcmUgaXMgbm8gd2F5IHRoZSB0aW1pbmcg bW9kZSBzaG91bGQKYmUgaGFyZGNvZGVkIGluIHRoZSBkZXZpY2UgdHJlZS4KIAo+ICsKPiAgCW10 ZCA9IG5hbmRfdG9fbXRkKGNoaXApOwo+ICAJbXRkLT5kZXYucGFyZW50ID0gZGV2Owo+ICAKClRo YW5rcywKTWlxdcOobAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkxpbnV4IE1URCBkaXNjdXNzaW9uIG1haWxpbmcgbGlzdApodHRwOi8vbGlz dHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LW10ZC8K