From: Boris Brezillon <boris.brezillon@collabora.com>
To: masonccyang@mxic.com.tw
Cc: vigneshr@ti.com, tudor.ambarus@microchip.com,
juliensu@mxic.com.tw, richard@nod.at,
Pratyush Yadav <me@yadavpratyush.com>,
linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org,
broonie@kernel.org, linux-mtd@lists.infradead.org,
miquel.raynal@bootlin.com, Pratyush Yadav <p.yadav@ti.com>
Subject: Re: [PATCH v2 0/5] mtd: spi-nor: Add support for Octal 8D-8D-8D mode
Date: Tue, 5 May 2020 11:44:43 +0200 [thread overview]
Message-ID: <20200505114443.6ebd5d3c@collabora.com> (raw)
In-Reply-To: <OF28AE0642.4F34D6BB-ON4825855F.002D6E58-4825855F.003458C9@mxic.com.tw>
On Tue, 5 May 2020 17:31:45 +0800
masonccyang@mxic.com.tw wrote:
> > > > > I quickly went through your patches but can't reply them in each
> your
> > > > > patches.
> > > > >
> > > > > i.e,.
> > > > > 1) [v4,03/16] spi: spi-mem: allow specifying a command's extension
> > > > >
> > > > > - u8 opcode;
> > > > > + u16 opcode;
> > > > >
> > > > > big/little Endian issue, right?
> > > > > why not just u8 ext_opcode;
> > > > > No any impact for exist code and actually only xSPI device use
> > > extension
> > > > > command.
> > > >
> > > > Boris already explained the reasoning behind it.
> > >
> > > yup, I got his point and please make sure CPU data access.
> > >
> > > i.e,.
> > > Fix endianness of the BFPT DWORDs and xSPI in sfdp.c
> > >
> > > and your patch,
> > > + ext = spi_nor_get_cmd_ext(nor, op);
> > > + op->cmd.opcode = (op->cmd.opcode <<
> 8) |
> > > ext;
> > > + op->cmd.nbytes = 2;
> > >
> > > I think maybe using u8 opcode[2] could avoid endianness.
> >
> > Again, thanks Boris for answering this. FWIW, I don't see anything wrong
>
> > with his suggestion.
> >
> > To clarify a bit more, the idea is that we transmit the opcode MSB
> > first, just we do for the address. Assume we want to issue the command
> > 0x05. In 1S mode, we set cmd.opcode to 0x05. Here cmd.nbytes == 1. Treat
>
> > is as a 1-byte value, so the MSB is the same as the LSB. We directly
> > send 0x5 on the bus.
>
> There are many SPI controllers driver use "op->cmd.opcode" directly,
> so is spi-mxic.c.
>
> i.e,.
> ret = mxic_spi_data_xfer(mxic, &op->cmd.opcode, NULL, op->cmd.nbytes);
Just because you do it doesn't mean it's right. And most controllers use
the opcode value, they don't dereference the pointer as you do here.
>
> >
> > If cmd.nbytes == 2, then the opcode would be 0x05FA (assuming extension
> > is invert of command). So we send the MSB (0x05) first, and LSB (0xFA)
> > next.
>
> My platform is Xilinx Zynq platform which CPU is ARMv7 processor.
>
> In 1-1-1 mode, it's OK to send 1 byte command by u16 opcode but
> in 8D-8D-8D mode, I need to patch
>
> i.e.,
> op->cmd.opcode = op->cmd.opcode | (ext << 8);
>
> rather than your patch.
Seriously, how hard is it to extract each byte from the u16 if your
controller needs to pass things in a different order? I mean, that's
already how it's done for the address cycle, so why is it a problem
here? This sounds like bikeshedding to me. If the order is properly
documented in the kernel doc, I see no problem having it grouped in one
u16, with the first cmd cycle placed in the MSB and the second one in
the LSB.
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply other threads:[~2020-05-05 9:45 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-21 6:39 [PATCH v2 0/5] mtd: spi-nor: Add support for Octal 8D-8D-8D mode Mason Yang
2020-04-21 6:39 ` [PATCH v2 1/5] " Mason Yang
2020-04-21 6:39 ` [PATCH v2 2/5] mtd: spi-nor: sfdp: Add support for xSPI profile 1.0 table Mason Yang
2020-04-21 6:39 ` [PATCH v2 3/5] mtd: spi-nor: Parse BFPT DWORD-18, 19 and 20 for Octal 8D-8D-8D mode Mason Yang
2020-04-21 6:39 ` [PATCH v2 4/5] mtd: spi-nor: macronix: Add Octal 8D-8D-8D supports for Macronix mx25uw51245g Mason Yang
2020-04-21 6:39 ` [PATCH v2 5/5] spi: mxic: Patch for Octal 8D-8D-8D mode support Mason Yang
2020-04-24 15:41 ` kbuild test robot
2020-04-21 7:23 ` [PATCH v2 0/5] mtd: spi-nor: Add support for Octal 8D-8D-8D mode Boris Brezillon
2020-04-21 9:35 ` Vignesh Raghavendra
2020-04-21 12:17 ` Boris Brezillon
2020-04-27 17:55 ` Pratyush Yadav
2020-04-28 6:14 ` masonccyang
2020-04-28 6:34 ` Boris Brezillon
2020-04-28 8:35 ` Pratyush Yadav
2020-04-29 5:59 ` masonccyang
2020-04-28 8:54 ` Pratyush Yadav
2020-04-29 7:31 ` masonccyang
2020-04-29 8:37 ` Boris Brezillon
2020-04-29 18:18 ` Pratyush Yadav
2020-05-05 9:31 ` masonccyang
2020-05-05 9:44 ` Boris Brezillon [this message]
2020-05-05 10:01 ` Boris Brezillon
2020-05-11 6:54 ` masonccyang
2020-05-06 9:40 ` Pratyush Yadav
2020-05-15 2:26 ` masonccyang
2020-05-15 6:55 ` Pratyush Yadav
2020-04-30 8:21 ` Vignesh Raghavendra
2020-05-11 3:23 ` masonccyang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200505114443.6ebd5d3c@collabora.com \
--to=boris.brezillon@collabora.com \
--cc=broonie@kernel.org \
--cc=juliensu@mxic.com.tw \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-spi@vger.kernel.org \
--cc=masonccyang@mxic.com.tw \
--cc=me@yadavpratyush.com \
--cc=miquel.raynal@bootlin.com \
--cc=p.yadav@ti.com \
--cc=richard@nod.at \
--cc=tudor.ambarus@microchip.com \
--cc=vigneshr@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).