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 ADD01C433EF for ; Wed, 16 Mar 2022 17:16:13 +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=yGoJhmvrfTPOdjmUfAkflzVXXWr5/joQGvewhSMQnT0=; b=jDCmd5Qpj8+4Gi g8BpjSGc3uH9lMVhOl4Pl57iGEn0Dk0idFdHbL/IbvUKSeYB87CMplUxeMRvwaU8Ej3ZFVbvLE8HI H6haNMyEi1EUgmKgTMOxpUJq2Abz60sZoWSK8OsBBcDTO1EPtHYKO+IApSMIqeZbzTCmPhbBo2Vsg MQ72YZtM2qQxdMvOzX3ApnBcSZf4JKeXH1nijQgDcgBGq0wdSDYoPBcRNqQMdSCbAP+dnqfgrLLoy 47OdVhUhte0kqkeBzYPB0t1KbXz5u9j+JOsEJ5z2/3cfAs4ttnzv3+UN0gwFOkL6ZlqtGg9DnuB80 /7zQcqQTXCWlXB0aEhNA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nUXF8-00Dujq-MH; Wed, 16 Mar 2022 17:15:26 +0000 Received: from relay12.mail.gandi.net ([217.70.178.232]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nUXF5-00Duhw-AR for linux-mtd@lists.infradead.org; Wed, 16 Mar 2022 17:15:25 +0000 Received: (Authenticated sender: miquel.raynal@bootlin.com) by mail.gandi.net (Postfix) with ESMTPSA id 300CA200005; Wed, 16 Mar 2022 17:15:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1647450920; 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=G6gLMMNOG4h/Lqkhq9E4+xt9ZMxIqvlsfo82rAng1Io=; b=Xxo5i2+RXvU5DTAm9d98tXIa8WbrZh2KcglxmLlAdAOsl9CxYHDQigOVyqiR2Vi69/PUg2 qAGZm9LI++GkLoskozLCW799RaWubMK4GviLlfiArHlqUCTvctUnCJHRR26/y+kw6oLPD7 3D1VT8SrVQUSUFt7R70+DgjPpZZjabqB32m+wet+VMYTn54IFr6eZSyGUIC49ObkGK4er9 QNGO2JEK1wJ78Dj4vfJoQfNaAonlABD8sZhcb62bd82g1QBYgBDU3130Ji29WBQSXUMg4E cRuO322RGAz1k6BgwCNIZuCpiqEW8edgZHYnbIKoB+kAhLRtuFMCZ/frFw9DmQ== Date: Wed, 16 Mar 2022 18:15:19 +0100 From: Miquel Raynal To: Tokunori Ikegami Cc: linux-mtd@lists.infradead.org, stable@vger.kernel.org Subject: Re: [PATCH v4 1/3] mtd: cfi_cmdset_0002: Move and rename chip_check/chip_ready/chip_good_for_write Message-ID: <20220316181519.0ec5bc97@xps13> In-Reply-To: <20220316155455.162362-2-ikegami.t@gmail.com> References: <20220316155455.162362-1-ikegami.t@gmail.com> <20220316155455.162362-2-ikegami.t@gmail.com> Organization: Bootlin X-Mailer: Claws Mail 3.17.7 (GTK+ 2.24.32; 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-20220316_101523_711812_D281C12C X-CRM114-Status: GOOD ( 27.07 ) 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 SGkgVG9rdW5vcmksCgppa2VnYW1pLnRAZ21haWwuY29tIHdyb3RlIG9uIFRodSwgMTcgTWFyIDIw MjIgMDA6NTQ6NTMgKzA5MDA6Cgo+IFRoaXMgaXMgYSBwcmVwYXJhdGlvbiBwYXRjaCBmb3IgdGhl IGZ1bmN0aW9uYWwgY2hhbmdlIGluIHByZXBhcmF0aW9uIHRvIGEgY2hhbmdlCj4gZXhwZWN0ZWQg dG8gZml4IHRoZSBidWZmZXJlZCB3cml0ZXMgb24gUzI5R0wwNjROLgoKVGhpcyBpcyBhIHByZXBh cmF0aW9uIHBhdGNoIGZvciB0aGUgUzI5R0wwNjROIGJ1ZmZlciB3cml0ZXMgZml4LiBUaGVyZQpp cyBubyBmdW5jdGlvbmFsIGNoYW5nZS4KCj4gCj4gRml4ZXM6IGRmZWFlMTA3MzU4MygibXRkOiBj ZmlfY21kc2V0XzAwMDI6IENoYW5nZSB3cml0ZSBidWZmZXIgdG8gY2hlY2sgY29ycmVjdCB2YWx1 ZSIpCj4gU2lnbmVkLW9mZi1ieTogVG9rdW5vcmkgSWtlZ2FtaSA8aWtlZ2FtaS50QGdtYWlsLmNv bT4KPiBDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZwo+IC0tLQo+ICBkcml2ZXJzL210ZC9jaGlw cy9jZmlfY21kc2V0XzAwMDIuYyB8IDc3ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCj4g IDEgZmlsZSBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9tdGQvY2hpcHMvY2ZpX2NtZHNldF8wMDAyLmMgYi9kcml2ZXJz L210ZC9jaGlwcy9jZmlfY21kc2V0XzAwMDIuYwo+IGluZGV4IGE3NjExMzRmZDNiZS4uZTY4ZGRm MGY3ZmMwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbXRkL2NoaXBzL2NmaV9jbWRzZXRfMDAwMi5j Cj4gKysrIGIvZHJpdmVycy9tdGQvY2hpcHMvY2ZpX2NtZHNldF8wMDAyLmMKPiBAQCAtODAxLDIy ICs4MDEsMTIgQEAgc3RhdGljIHN0cnVjdCBtdGRfaW5mbyAqY2ZpX2FtZHN0ZF9zZXR1cChzdHJ1 Y3QgbXRkX2luZm8gKm10ZCkKPiAgCXJldHVybiBOVUxMOwo+ICB9Cj4gIAo+IC0vKgo+IC0gKiBS ZXR1cm4gdHJ1ZSBpZiB0aGUgY2hpcCBpcyByZWFkeS4KPiAtICoKPiAtICogUmVhZHkgaXMgb25l IG9mOiByZWFkIG1vZGUsIHF1ZXJ5IG1vZGUsIGVyYXNlLXN1c3BlbmQtcmVhZCBtb2RlIChpbiBh bnkKPiAtICogbm9uLXN1c3BlbmRlZCBzZWN0b3IpIGFuZCBpcyBpbmRpY2F0ZWQgYnkgbm8gdG9n Z2xlIGJpdHMgdG9nZ2xpbmcuCj4gLSAqCj4gLSAqIE5vdGUgdGhhdCBhbnl0aGluZyBtb3JlIGNv bXBsaWNhdGVkIHRoYW4gY2hlY2tpbmcgaWYgbm8gYml0cyBhcmUgdG9nZ2xpbmcKPiAtICogKGlu Y2x1ZGluZyBjaGVja2luZyBEUTUgZm9yIGFuIGVycm9yIHN0YXR1cykgaXMgdHJpY2t5IHRvIGdl dCB3b3JraW5nCj4gLSAqIGNvcnJlY3RseSBhbmQgaXMgdGhlcmVmb3JlIG5vdCBkb25lCShwYXJ0 aWN1bGFybHkgd2l0aCBpbnRlcmxlYXZlZCBjaGlwcwo+IC0gKiBhcyBlYWNoIGNoaXAgbXVzdCBi ZSBjaGVja2VkIGluZGVwZW5kZW50bHkgb2YgdGhlIG90aGVycykuCj4gLSAqLwo+IC1zdGF0aWMg aW50IF9feGlwcmFtIGNoaXBfcmVhZHkoc3RydWN0IG1hcF9pbmZvICptYXAsIHN0cnVjdCBmbGNo aXAgKmNoaXAsCj4gLQkJCSAgICAgICB1bnNpZ25lZCBsb25nIGFkZHIpCj4gK3N0YXRpYyBpbnQg X194aXByYW0gY2hpcF9jaGVjayhzdHJ1Y3QgbWFwX2luZm8gKm1hcCwgc3RydWN0IGZsY2hpcCAq Y2hpcCwKPiArCQkJICAgICAgIHVuc2lnbmVkIGxvbmcgYWRkciwgbWFwX3dvcmQgKmV4cGVjdGVk KQo+ICB7Cj4gIAlzdHJ1Y3QgY2ZpX3ByaXZhdGUgKmNmaSA9IG1hcC0+ZmxkcnZfcHJpdjsKPiAt CW1hcF93b3JkIGQsIHQ7Cj4gKwltYXBfd29yZCBvbGRkLCBjdXJkOwo+ICsJaW50IHJldDsKPiAg Cj4gIAlpZiAoY2ZpX3VzZV9zdGF0dXNfcmVnKGNmaSkpIHsKPiAgCQltYXBfd29yZCByZWFkeSA9 IENNRChDRklfU1JfRFJCKTsKPiBAQCAtODI2LDE3ICs4MTYsMzUgQEAgc3RhdGljIGludCBfX3hp cHJhbSBjaGlwX3JlYWR5KHN0cnVjdCBtYXBfaW5mbyAqbWFwLCBzdHJ1Y3QgZmxjaGlwICpjaGlw LAo+ICAJCSAqLwo+ICAJCWNmaV9zZW5kX2dlbl9jbWQoMHg3MCwgY2ZpLT5hZGRyX3VubG9jazEs IGNoaXAtPnN0YXJ0LCBtYXAsIGNmaSwKPiAgCQkJCSBjZmktPmRldmljZV90eXBlLCBOVUxMKTsK PiAtCQlkID0gbWFwX3JlYWQobWFwLCBhZGRyKTsKPiArCQljdXJkID0gbWFwX3JlYWQobWFwLCBh ZGRyKTsKPiAgCj4gLQkJcmV0dXJuIG1hcF93b3JkX2FuZGVxdWFsKG1hcCwgZCwgcmVhZHksIHJl YWR5KTsKPiArCQlyZXR1cm4gbWFwX3dvcmRfYW5kZXF1YWwobWFwLCBjdXJkLCByZWFkeSwgcmVh ZHkpOwoKQSBsb3Qgb2YgdGhlIGRpZmYgaXMganVzdCBhIHJlbmFtZS4gSSBhbSBub3QgYWdhaW5z dCBhIHJlbmFtZSBpZiB5b3UKZmVlbCBpdCdzIGJldHRlciwgYnV0IGluIHRoaXMgb3JkZXI6CjE6 IHByZXBhcmUgdGhlIGZpeAoyOiBmaXgKMzogcmVuYW1lL2RlZmluZSBpZCdzLCB3aGF0ZXZlcgoK PiAgCX0KPiAgCj4gLQlkID0gbWFwX3JlYWQobWFwLCBhZGRyKTsKPiAtCXQgPSBtYXBfcmVhZCht YXAsIGFkZHIpOwo+ICsJb2xkZCA9IG1hcF9yZWFkKG1hcCwgYWRkcik7Cj4gKwljdXJkID0gbWFw X3JlYWQobWFwLCBhZGRyKTsKPiArCj4gKwlyZXQgPSBtYXBfd29yZF9lcXVhbChtYXAsIG9sZGQs IGN1cmQpOwo+ICAKPiAtCXJldHVybiBtYXBfd29yZF9lcXVhbChtYXAsIGQsIHQpOwo+ICsJaWYg KCFyZXQgfHwgIWV4cGVjdGVkKQo+ICsJCXJldHVybiByZXQ7Cj4gKwo+ICsJcmV0dXJuIG1hcF93 b3JkX2VxdWFsKG1hcCwgY3VyZCwgKmV4cGVjdGVkKTsKPiAgfQo+ICAKPiArLyoKPiArICogUmV0 dXJuIHRydWUgaWYgdGhlIGNoaXAgaXMgcmVhZHkuCj4gKyAqCj4gKyAqIFJlYWR5IGlzIG9uZSBv ZjogcmVhZCBtb2RlLCBxdWVyeSBtb2RlLCBlcmFzZS1zdXNwZW5kLXJlYWQgbW9kZSAoaW4gYW55 Cj4gKyAqIG5vbi1zdXNwZW5kZWQgc2VjdG9yKSBhbmQgaXMgaW5kaWNhdGVkIGJ5IG5vIHRvZ2ds ZSBiaXRzIHRvZ2dsaW5nLgo+ICsgKgo+ICsgKiBOb3RlIHRoYXQgYW55dGhpbmcgbW9yZSBjb21w bGljYXRlZCB0aGFuIGNoZWNraW5nIGlmIG5vIGJpdHMgYXJlIHRvZ2dsaW5nCj4gKyAqIChpbmNs dWRpbmcgY2hlY2tpbmcgRFE1IGZvciBhbiBlcnJvciBzdGF0dXMpIGlzIHRyaWNreSB0byBnZXQg d29ya2luZwo+ICsgKiBjb3JyZWN0bHkgYW5kIGlzIHRoZXJlZm9yZSBub3QgZG9uZQkocGFydGlj dWxhcmx5IHdpdGggaW50ZXJsZWF2ZWQgY2hpcHMKPiArICogYXMgZWFjaCBjaGlwIG11c3QgYmUg Y2hlY2tlZCBpbmRlcGVuZGVudGx5IG9mIHRoZSBvdGhlcnMpLgo+ICsgKi8KPiArI2RlZmluZSBj aGlwX3JlYWR5KG1hcCwgY2hpcCwgYWRkcikgY2hpcF9jaGVjayhtYXAsIGNoaXAsIGFkZHIsIE5V TEwpCgpJIGRvbid0IHNlZSB0aGUgcG9pbnQgb2Ygc3VjaCBhIGRlZmluZS4gSnVzdCBnZXQgcmlk IG9mIGl0LgoKPiArCj4gIC8qCj4gICAqIFJldHVybiB0cnVlIGlmIHRoZSBjaGlwIGlzIHJlYWR5 IGFuZCBoYXMgdGhlIGNvcnJlY3QgdmFsdWUuCj4gICAqCj4gQEAgLTg1MiwzMiArODYwLDExIEBA IHN0YXRpYyBpbnQgX194aXByYW0gY2hpcF9yZWFkeShzdHJ1Y3QgbWFwX2luZm8gKm1hcCwgc3Ry dWN0IGZsY2hpcCAqY2hpcCwKPiAgICogYXMgZWFjaCBjaGlwIG11c3QgYmUgY2hlY2tlZCBpbmRl cGVuZGVudGx5IG9mIHRoZSBvdGhlcnMpLgo+ICAgKgo+ICAgKi8KPiAtc3RhdGljIGludCBfX3hp cHJhbSBjaGlwX2dvb2Qoc3RydWN0IG1hcF9pbmZvICptYXAsIHN0cnVjdCBmbGNoaXAgKmNoaXAs Cj4gLQkJCSAgICAgIHVuc2lnbmVkIGxvbmcgYWRkciwgbWFwX3dvcmQgZXhwZWN0ZWQpCj4gLXsK PiAtCXN0cnVjdCBjZmlfcHJpdmF0ZSAqY2ZpID0gbWFwLT5mbGRydl9wcml2Owo+IC0JbWFwX3dv cmQgb2xkZCwgY3VyZDsKPiAtCj4gLQlpZiAoY2ZpX3VzZV9zdGF0dXNfcmVnKGNmaSkpIHsKPiAt CQltYXBfd29yZCByZWFkeSA9IENNRChDRklfU1JfRFJCKTsKPiAtCj4gLQkJLyoKPiAtCQkgKiBG b3IgY2hpcHMgdGhhdCBzdXBwb3J0IHN0YXR1cyByZWdpc3RlciwgY2hlY2sgZGV2aWNlCj4gLQkJ ICogcmVhZHkgYml0Cj4gLQkJICovCj4gLQkJY2ZpX3NlbmRfZ2VuX2NtZCgweDcwLCBjZmktPmFk ZHJfdW5sb2NrMSwgY2hpcC0+c3RhcnQsIG1hcCwgY2ZpLAo+IC0JCQkJIGNmaS0+ZGV2aWNlX3R5 cGUsIE5VTEwpOwo+IC0JCWN1cmQgPSBtYXBfcmVhZChtYXAsIGFkZHIpOwo+IC0KPiAtCQlyZXR1 cm4gbWFwX3dvcmRfYW5kZXF1YWwobWFwLCBjdXJkLCByZWFkeSwgcmVhZHkpOwo+IC0JfQo+IC0K PiAtCW9sZGQgPSBtYXBfcmVhZChtYXAsIGFkZHIpOwo+IC0JY3VyZCA9IG1hcF9yZWFkKG1hcCwg YWRkcik7Cj4gLQo+IC0JcmV0dXJuCW1hcF93b3JkX2VxdWFsKG1hcCwgb2xkZCwgY3VyZCkgJiYK PiAtCQltYXBfd29yZF9lcXVhbChtYXAsIGN1cmQsIGV4cGVjdGVkKTsKPiAtfQo+ICsjZGVmaW5l IGNoaXBfZ29vZChtYXAsIGNoaXAsIGFkZHIsIGV4cGVjdGVkKSBcCj4gKwkoeyBcCj4gKwkJbWFw X3dvcmQgZGF0dW0gPSBleHBlY3RlZDsgXAo+ICsJCWNoaXBfY2hlY2sobWFwLCBjaGlwLCBhZGRy LCAmZGF0dW0pOyBcCj4gKwl9KQoKV2hhdCBpcyB0aGlzIGZvcj8gU2FtZSBoZXJlLCBJIGRvbid0 IHNlZSB0aGUgcG9pbnQuIFBsZWFzZSBnZXQgcmlkIG9mCmFsbCB0aGVzZSB1bm5lY2Vzc2FyeSBo ZWxwZXJzIHdoaWNoIGRvIG5vdGhpbmcsIGJlc2lkZXMgY29tcGxpY2F0aW5nCnVzZXIncyBsaWZl LgoKPiAgc3RhdGljIGludCBnZXRfY2hpcChzdHJ1Y3QgbWFwX2luZm8gKm1hcCwgc3RydWN0IGZs Y2hpcCAqY2hpcCwgdW5zaWduZWQgbG9uZyBhZHIsIGludCBtb2RlKQo+ICB7CgoKVGhhbmtzLApN aXF1w6hsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KTGludXggTVREIGRpc2N1c3Npb24gbWFpbGluZyBsaXN0Cmh0dHA6Ly9saXN0cy5pbmZy YWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtbXRkLwo= 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 51AEEC433EF for ; Wed, 16 Mar 2022 17:25:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1350447AbiCPR0w (ORCPT ); Wed, 16 Mar 2022 13:26:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48874 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232691AbiCPR0v (ORCPT ); Wed, 16 Mar 2022 13:26:51 -0400 Received: from mslow1.mail.gandi.net (mslow1.mail.gandi.net [217.70.178.240]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D8ABF9FE5 for ; Wed, 16 Mar 2022 10:25:36 -0700 (PDT) Received: from relay12.mail.gandi.net (unknown [IPv6:2001:4b98:dc4:8::232]) by mslow1.mail.gandi.net (Postfix) with ESMTP id 4B99ECF7B9 for ; Wed, 16 Mar 2022 17:15:24 +0000 (UTC) Received: (Authenticated sender: miquel.raynal@bootlin.com) by mail.gandi.net (Postfix) with ESMTPSA id 300CA200005; Wed, 16 Mar 2022 17:15:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1647450920; 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=G6gLMMNOG4h/Lqkhq9E4+xt9ZMxIqvlsfo82rAng1Io=; b=Xxo5i2+RXvU5DTAm9d98tXIa8WbrZh2KcglxmLlAdAOsl9CxYHDQigOVyqiR2Vi69/PUg2 qAGZm9LI++GkLoskozLCW799RaWubMK4GviLlfiArHlqUCTvctUnCJHRR26/y+kw6oLPD7 3D1VT8SrVQUSUFt7R70+DgjPpZZjabqB32m+wet+VMYTn54IFr6eZSyGUIC49ObkGK4er9 QNGO2JEK1wJ78Dj4vfJoQfNaAonlABD8sZhcb62bd82g1QBYgBDU3130Ji29WBQSXUMg4E cRuO322RGAz1k6BgwCNIZuCpiqEW8edgZHYnbIKoB+kAhLRtuFMCZ/frFw9DmQ== Date: Wed, 16 Mar 2022 18:15:19 +0100 From: Miquel Raynal To: Tokunori Ikegami Cc: linux-mtd@lists.infradead.org, stable@vger.kernel.org Subject: Re: [PATCH v4 1/3] mtd: cfi_cmdset_0002: Move and rename chip_check/chip_ready/chip_good_for_write Message-ID: <20220316181519.0ec5bc97@xps13> In-Reply-To: <20220316155455.162362-2-ikegami.t@gmail.com> References: <20220316155455.162362-1-ikegami.t@gmail.com> <20220316155455.162362-2-ikegami.t@gmail.com> Organization: Bootlin X-Mailer: Claws Mail 3.17.7 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org Hi Tokunori, ikegami.t@gmail.com wrote on Thu, 17 Mar 2022 00:54:53 +0900: > This is a preparation patch for the functional change in preparation to a= change > expected to fix the buffered writes on S29GL064N. This is a preparation patch for the S29GL064N buffer writes fix. There is no functional change. >=20 > Fixes: dfeae1073583("mtd: cfi_cmdset_0002: Change write buffer to check c= orrect value") > Signed-off-by: Tokunori Ikegami > Cc: stable@vger.kernel.org > --- > drivers/mtd/chips/cfi_cmdset_0002.c | 77 ++++++++++++----------------- > 1 file changed, 32 insertions(+), 45 deletions(-) >=20 > diff --git a/drivers/mtd/chips/cfi_cmdset_0002.c b/drivers/mtd/chips/cfi_= cmdset_0002.c > index a761134fd3be..e68ddf0f7fc0 100644 > --- a/drivers/mtd/chips/cfi_cmdset_0002.c > +++ b/drivers/mtd/chips/cfi_cmdset_0002.c > @@ -801,22 +801,12 @@ static struct mtd_info *cfi_amdstd_setup(struct mtd= _info *mtd) > return NULL; > } > =20 > -/* > - * Return true if the chip is ready. > - * > - * Ready is one of: read mode, query mode, erase-suspend-read mode (in a= ny > - * non-suspended sector) and is indicated by no toggle bits toggling. > - * > - * Note that anything more complicated than checking if no bits are togg= ling > - * (including checking DQ5 for an error status) is tricky to get working > - * correctly and is therefore not done (particularly with interleaved ch= ips > - * as each chip must be checked independently of the others). > - */ > -static int __xipram chip_ready(struct map_info *map, struct flchip *chip, > - unsigned long addr) > +static int __xipram chip_check(struct map_info *map, struct flchip *chip, > + unsigned long addr, map_word *expected) > { > struct cfi_private *cfi =3D map->fldrv_priv; > - map_word d, t; > + map_word oldd, curd; > + int ret; > =20 > if (cfi_use_status_reg(cfi)) { > map_word ready =3D CMD(CFI_SR_DRB); > @@ -826,17 +816,35 @@ static int __xipram chip_ready(struct map_info *map= , struct flchip *chip, > */ > cfi_send_gen_cmd(0x70, cfi->addr_unlock1, chip->start, map, cfi, > cfi->device_type, NULL); > - d =3D map_read(map, addr); > + curd =3D map_read(map, addr); > =20 > - return map_word_andequal(map, d, ready, ready); > + return map_word_andequal(map, curd, ready, ready); A lot of the diff is just a rename. I am not against a rename if you feel it's better, but in this order: 1: prepare the fix 2: fix 3: rename/define id's, whatever > } > =20 > - d =3D map_read(map, addr); > - t =3D map_read(map, addr); > + oldd =3D map_read(map, addr); > + curd =3D map_read(map, addr); > + > + ret =3D map_word_equal(map, oldd, curd); > =20 > - return map_word_equal(map, d, t); > + if (!ret || !expected) > + return ret; > + > + return map_word_equal(map, curd, *expected); > } > =20 > +/* > + * Return true if the chip is ready. > + * > + * Ready is one of: read mode, query mode, erase-suspend-read mode (in a= ny > + * non-suspended sector) and is indicated by no toggle bits toggling. > + * > + * Note that anything more complicated than checking if no bits are togg= ling > + * (including checking DQ5 for an error status) is tricky to get working > + * correctly and is therefore not done (particularly with interleaved ch= ips > + * as each chip must be checked independently of the others). > + */ > +#define chip_ready(map, chip, addr) chip_check(map, chip, addr, NULL) I don't see the point of such a define. Just get rid of it. > + > /* > * Return true if the chip is ready and has the correct value. > * > @@ -852,32 +860,11 @@ static int __xipram chip_ready(struct map_info *map= , struct flchip *chip, > * as each chip must be checked independently of the others). > * > */ > -static int __xipram chip_good(struct map_info *map, struct flchip *chip, > - unsigned long addr, map_word expected) > -{ > - struct cfi_private *cfi =3D map->fldrv_priv; > - map_word oldd, curd; > - > - if (cfi_use_status_reg(cfi)) { > - map_word ready =3D CMD(CFI_SR_DRB); > - > - /* > - * For chips that support status register, check device > - * ready bit > - */ > - cfi_send_gen_cmd(0x70, cfi->addr_unlock1, chip->start, map, cfi, > - cfi->device_type, NULL); > - curd =3D map_read(map, addr); > - > - return map_word_andequal(map, curd, ready, ready); > - } > - > - oldd =3D map_read(map, addr); > - curd =3D map_read(map, addr); > - > - return map_word_equal(map, oldd, curd) && > - map_word_equal(map, curd, expected); > -} > +#define chip_good(map, chip, addr, expected) \ > + ({ \ > + map_word datum =3D expected; \ > + chip_check(map, chip, addr, &datum); \ > + }) What is this for? Same here, I don't see the point. Please get rid of all these unnecessary helpers which do nothing, besides complicating user's life. > static int get_chip(struct map_info *map, struct flchip *chip, unsigned = long adr, int mode) > { Thanks, Miqu=C3=A8l