linux-spi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ranjit Waghmode <ranjit.waghmode@xilinx.com>
To: <broonie@kernel.org>, <dwmw2@infradead.org>,
	<computersforpeace@gmail.com>, <swarren@nvidia.com>,
	<geert+renesas@glider.be>, <afd@ti.com>, <jic23@kernel.org>,
	<marex@denx.de>, <jteki@openedev.com>, <zajec5@gmail.com>,
	<juhosg@openwrt.org>, <mika.westerberg@linux.intel.com>,
	<sean.nyekjaer@prevas.dk>, <beanhuo@micron.com>,
	<furquan@google.com>, <michal.simek@xilinx.com>,
	<soren.brinkmann@xilinx.com>
Cc: <linux-spi@vger.kernel.org>, <linux-mtd@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>, <harinik@xilinx.com>,
	<punnaia@xilinx.com>, <ran27jit@gmail.com>,
	"Ranjit Waghmode" <ranjit.waghmode@xilinx.com>
Subject: [LINUX RFC v3 0/4] spi: add dual parallel mode support in Zynq MPSoC GQSPI controller
Date: Mon, 14 Dec 2015 18:39:41 +0530	[thread overview]
Message-ID: <1450098585-3129-1-git-send-email-ranjit.waghmode@xilinx.com> (raw)

This series adds dual parallel mode support for Zynq Ultrascale+
MPSoC GQSPI controller driver.

What is dual parallel mode?
---------------------------
ZynqMP GQSPI controller supports Dual Parallel mode with following functionalities:
1) Supporting two SPI flash memories operating in parallel. 8 I/O lines.
2) Chip selects and clock are shared to both the flash devices
3) This mode is targeted for faster read/write speed and also doubles the size
4) Commands/data can be transmitted/received from both the devices(mirror),
   or only upper or only lower flash memory devices.
5) Data arrangement:
   With stripe enabled,
	Even bytes i.e. 0, 2, 4,... are transmitted on Lower Data Bus
	Odd bytes i.e. 1, 3, 5,.. are transmitted on Upper Data Bus.

This series also updated MTD layer files for adding parallel mode support.

1) Added Support for two flashes
2) Support to enable/disable data stripe as and when required.
3) Added required parameters to spi_nor structure. Initialized all
   added parameters in spi_nor_scan()
4) Added support for dual parallel in spi_nor_read/write/erase functions by:
   a) Increasing page_size, sector_size, erase_size and toatal flash size
      as and when required.
   b) Dividing address by 2
   c) Updating spi->master->flags for qspi driver to change CS
5) Updated read_sr() to get status of both flashes
6) Also updated read_fsr() to get status of both flashes
These all are very high level changes and expected to make an idea clear.

---
V3 Changes:
   - Changed couple of comments to remove ambiguity in understanding

V2 Changes:
a) Splitted patches based on logical changes
b) Added error handling for newly added APIs in SPI core
---

Ranjit Waghmode (4):
  spi: addng support for data stripe feature in core
  mtd: add spi_device instance to spi_nor struct
  mtd: spi-nor: add dual parallel mode support
  spi: zynqmp: gqspi: add support for dual parallel mode configuration

 drivers/mtd/devices/m25p80.c   |  1 +
 drivers/mtd/spi-nor/spi-nor.c  | 89 ++++++++++++++++++++++++++++++++++--------
 drivers/spi/spi-zynqmp-gqspi.c | 24 +++++++++++-
 drivers/spi/spi.c              |  8 ++++
 include/linux/mtd/spi-nor.h    |  3 ++
 include/linux/spi/spi.h        | 11 ++++++
 6 files changed, 119 insertions(+), 17 deletions(-)

--
2.1.2

             reply	other threads:[~2015-12-14 13:09 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-14 13:09 Ranjit Waghmode [this message]
2015-12-14 13:09 ` [LINUX RFC v3 1/4] spi: addng support for data stripe feature in core Ranjit Waghmode
2015-12-14 13:09 ` [LINUX RFC v3 2/4] mtd: add spi_device instance to spi_nor struct Ranjit Waghmode
2015-12-14 13:09 ` [LINUX RFC v3 3/4] mtd: spi-nor: add dual parallel mode support Ranjit Waghmode
2015-12-14 13:09 ` [LINUX RFC v3 4/4] spi: zynqmp: gqspi: add support for dual parallel mode configuration Ranjit Waghmode

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=1450098585-3129-1-git-send-email-ranjit.waghmode@xilinx.com \
    --to=ranjit.waghmode@xilinx.com \
    --cc=afd@ti.com \
    --cc=beanhuo@micron.com \
    --cc=broonie@kernel.org \
    --cc=computersforpeace@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=furquan@google.com \
    --cc=geert+renesas@glider.be \
    --cc=harinik@xilinx.com \
    --cc=jic23@kernel.org \
    --cc=jteki@openedev.com \
    --cc=juhosg@openwrt.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=marex@denx.de \
    --cc=michal.simek@xilinx.com \
    --cc=mika.westerberg@linux.intel.com \
    --cc=punnaia@xilinx.com \
    --cc=ran27jit@gmail.com \
    --cc=sean.nyekjaer@prevas.dk \
    --cc=soren.brinkmann@xilinx.com \
    --cc=swarren@nvidia.com \
    --cc=zajec5@gmail.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).