Received: by 2002:a25:1104:0:0:0:0:0 with SMTP id 4csp25842ybr; Thu, 21 May 2020 23:33:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzM55I0FfHKbvf+Exh8LIiLs+DeXFVvcnw2jD+f0W1WZ0sZDLZtpXfG3F+DbcQO2aUqdhWY X-Received: by 2002:a17:906:da1e:: with SMTP id fi30mr7098683ejb.80.1590129195889; Thu, 21 May 2020 23:33:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1590129195; cv=none; d=google.com; s=arc-20160816; b=Df53fzaMDemfWI3YGuoxMoVN/PiObFuGb0ZtOx9xRSpx826qAU+/M/7ZFm7cn0l7U9 ZILJ81MEs4QHgxoyxhQaaBJoB3dY3KBLeVXp4+Wf8U9XNfVJyeWrW50eUsJv54FbSWWZ 2Up7zjTObYtTLPp2/SeDOY2b4EidfGHh+HzVJVXNvV+/ERY1DIl3qBEFpTEIuYe2yndf Fo+W1H4BQfMDN9mDuCQe4efzQq0x7eliHlosY0UVi4nDIEuuMmyDFu6jaZ/pFH3SX0K2 tvOjxLYq+ECwCwq8ReXPIrvN/vyzKnufgT1VIOlOphEG0Z+eZ1Xzbx12bQ/yCXHU7lv1 Ls2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:date:from:message-id:mime-version:subject :cc:to:references:in-reply-to; bh=ZoOo4IqKzB9inKycK9aG1xhSC1QR5izULwcqXc7aSr8=; b=K6YDLn0AI1UOg0C07pMxZTP48wSIo/MIwGvSyONgwc84XL+XfPg6QtprT6lru2QXHo BYq4oL3ggGegCHN4Bsa4BP5+m30qzR/V/Ki7q6uHJJADgXyGjBgWQXchDAfCeC/QUzsT /Xv8py6mDRoJl9ilTvUDhQv6W8nAOXU38kc6A4LYB5OEaRX++1aUZ8eT5jBd5TUN9pmP ZtbyYpCdzG61NZ1zx0stlBgglztkp3SNhKwb/MQuw7jzOKkITDaUiptZCe1NAiXNSbJM Bqnx8WKirCy/OgEyF0fnhUw4W+TOxOOXbDEUGhQqvFgRd5eYTSur3Sr0I+GqzyE3ntF9 T8bw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d6si4596195edo.493.2020.05.21.23.32.52; Thu, 21 May 2020 23:33:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728409AbgEVGbG (ORCPT + 99 others); Fri, 22 May 2020 02:31:06 -0400 Received: from twhmllg4.macronix.com ([211.75.127.132]:40290 "EHLO TWHMLLG4.macronix.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728392AbgEVGbF (ORCPT ); Fri, 22 May 2020 02:31:05 -0400 Received: from twhfm1p2.macronix.com (twhfmlp2.macronix.com [172.17.20.92]) by TWHMLLG4.macronix.com with ESMTP id 04M6Uv0L024143; Fri, 22 May 2020 14:30:57 +0800 (GMT-8) (envelope-from masonccyang@mxic.com.tw) Received: from MXML06C.mxic.com.tw (mxml06c.mxic.com.tw [172.17.14.55]) by Forcepoint Email with ESMTP id 392FE906D490C16CE7F1; Fri, 22 May 2020 14:30:58 +0800 (CST) In-Reply-To: <20200519142642.24131-6-p.yadav@ti.com> References: <20200519142642.24131-1-p.yadav@ti.com> <20200519142642.24131-6-p.yadav@ti.com> To: "Pratyush Yadav" Cc: "Alexandre Belloni" , "Boris Brezillon" , "Mark Brown" , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-mtd@lists.infradead.org, linux-spi@vger.kernel.org, "Ludovic Desroches" , "Matthias Brugger" , "Miquel Raynal" , "Nicolas Ferre" , "Sekhar Nori" , "Pratyush Yadav" , "Richard Weinberger" , "Tudor Ambarus" , "Vignesh Raghavendra" , juliensu@mxic.com.tw Subject: Re: [PATCH v5 05/19] mtd: spi-nor: add support for DTR protocol MIME-Version: 1.0 X-KeepSent: AC48157A:F337A12A-48258570:0021F23B; type=4; name=$KeepSent X-Mailer: Lotus Notes Release 8.5.3FP4 SHF90 June 10, 2013 Message-ID: From: masonccyang@mxic.com.tw Date: Fri, 22 May 2020 14:30:58 +0800 X-MIMETrack: Serialize by Router on MXML06C/TAIWAN/MXIC(Release 9.0.1FP10 HF265|July 25, 2018) at 2020/05/22 PM 02:30:58, Serialize complete at 2020/05/22 PM 02:30:58 Content-Type: text/plain; charset="US-ASCII" X-MAIL: TWHMLLG4.macronix.com 04M6Uv0L024143 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Pratyush, > +/** > + * spi_nor_spimem_setup_op() - Set up common properties of a spi-mem op. > + * @nor: pointer to a 'struct spi_nor' > + * @op: pointer to the 'struct spi_mem_op' whose properties > + * need to be initialized. > + * @proto: the protocol from which the properties need to be set. > + */ > +void spi_nor_spimem_setup_op(const struct spi_nor *nor, > + struct spi_mem_op *op, > + const enum spi_nor_protocol proto) > +{ > + u8 ext; > + > + op->cmd.buswidth = spi_nor_get_protocol_inst_nbits(proto); > + > + if (op->addr.nbytes) > + op->addr.buswidth = spi_nor_get_protocol_addr_nbits(proto); > + > + if (op->dummy.nbytes) > + op->dummy.buswidth = spi_nor_get_protocol_addr_nbits(proto); > + > + if (op->data.nbytes) > + op->data.buswidth = spi_nor_get_protocol_data_nbits(proto); > + > + if (spi_nor_protocol_is_dtr(proto)) { As mentioned before that I am also patching mx25* which supports 8S-8S-8S and 8D-8D-8D mode. please patch to spi_nor_protocol_is_8_8_8(proto) for 8S-8S-8S mode support. > + /* > + * spi-mem supports mixed DTR modes, but right now we can only > + * have all phases either DTR or STR. IOW, spi-mem can have > + * something like 4S-4D-4D, but spi-nor can't. So, set all 4 > + * phases to either DTR or STR. > + */ if (spi_nor_protocol_is_8D_8D_8D(proto) { > + op->cmd.dtr = op->addr.dtr = op->dummy.dtr > + = op->data.dtr = true; > + > + /* 2 bytes per clock cycle in DTR mode. */ > + op->dummy.nbytes *= 2; } > + > + ext = spi_nor_get_cmd_ext(nor, op); > + op->cmd.opcode = (op->cmd.opcode << 8) | ext; > + op->cmd.nbytes = 2; > + } > +} > + thanks & best regards, Mason CONFIDENTIALITY NOTE: This e-mail and any attachments may contain confidential information and/or personal data, which is protected by applicable laws. Please be reminded that duplication, disclosure, distribution, or use of this e-mail (and/or its attachments) or any part thereof is prohibited. If you receive this e-mail in error, please notify us immediately and delete this mail as well as its attachment(s) from your system. In addition, please be informed that collection, processing, and/or use of personal data is prohibited unless expressly permitted by personal data protection laws. Thank you for your attention and cooperation. Macronix International Co., Ltd. ===================================================================== ============================================================================ CONFIDENTIALITY NOTE: This e-mail and any attachments may contain confidential information and/or personal data, which is protected by applicable laws. Please be reminded that duplication, disclosure, distribution, or use of this e-mail (and/or its attachments) or any part thereof is prohibited. If you receive this e-mail in error, please notify us immediately and delete this mail as well as its attachment(s) from your system. In addition, please be informed that collection, processing, and/or use of personal data is prohibited unless expressly permitted by personal data protection laws. Thank you for your attention and cooperation. Macronix International Co., Ltd. =====================================================================