From: Naga Sureshkumar Relli <naga.sureshkumar.relli@xilinx.com>
To: <broonie@kernel.org>, <bbrezillon@kernel.org>
Cc: <vigneshr@ti.com>, <linux-spi@vger.kernel.org>,
<dwmw2@infradead.org>, <marek.vasut@gmail.com>, <richard@nod.at>,
<linux-mtd@lists.infradead.org>, <linux-kernel@vger.kernel.org>,
<michal.simek@xilinx.com>, <nagasuresh12@gmail.com>,
Naga Sureshkumar Relli <naga.sureshkumar.relli@xilinx.com>
Subject: [LINUX PATCH 0/3] Add support for Zynq QSPI controller driver
Date: Thu, 28 Mar 2019 16:44:52 +0530 [thread overview]
Message-ID: <1553771692-30969-1-git-send-email-naga.sureshkumar.relli@xilinx.com> (raw)
Xilinx Zynq uses a QSPI controller that implements all the functionality
required to support Quad SPI NOR flash devices.
This driver along with the SPI MEM and MTD layer is used to support
flash devices.
The flash device(s) can be connected in three configurations to this
controller:
1. Single - One flash device with 1 CS, 1 Clock and 4 IO lines.
2. Dual Parallel - Two flash devices connected with common CS and
separate IO lines (resulting in 8 IO lines).
In this configuration, the controller
a) Duplicates commands, address etc. sent on both sets of 4 IO lines.
b) Stripes data both transmitted and received i.e.
4 bits of data is sent to the first flash and the other 4 bits
to the second flash. Similarly read data is also consolidated.
Due to this, TX and RX data handling in the driver need special
handling for parallel mode.
3. Dual Stacked - Two flash devices connected with separate CS and
4 common IO lines. This is largely similar to single, except for
the slave selection logic.
The above configuration is conveyed to the QSPI driver through a
devicetree property(currently not implemented 2 & 3 mentioned above).
As per Boris suggestion We are currently not targetting for
dual stacked/dual parallel handling. There are changes needed in the
framework to handle this. so this update is only for the Single mode.
This is tested with spi-v5.0 tag
Naga Sureshkumar Relli (3):
dt-bindings: spi: Add device tree binding documentation for Zynq QSPI
controller
spi: spi-mem: call spi_mem_default_supports_op() first
spi: spi-mem: Add support for Zynq QSPI controller
.../devicetree/bindings/spi/spi-zynq-qspi.txt | 25 +
drivers/spi/Kconfig | 10 +-
drivers/spi/Makefile | 1 +
drivers/spi/spi-mem.c | 7 +-
drivers/spi/spi-zynq-qspi.c | 770 +++++++++++++++++++++
5 files changed, 810 insertions(+), 3 deletions(-)
create mode 100644 Documentation/devicetree/bindings/spi/spi-zynq-qspi.txt
create mode 100644 drivers/spi/spi-zynq-qspi.c
--
2.7.4
reply other threads:[~2019-03-28 11:14 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=1553771692-30969-1-git-send-email-naga.sureshkumar.relli@xilinx.com \
--to=naga.sureshkumar.relli@xilinx.com \
--cc=bbrezillon@kernel.org \
--cc=broonie@kernel.org \
--cc=dwmw2@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-spi@vger.kernel.org \
--cc=marek.vasut@gmail.com \
--cc=michal.simek@xilinx.com \
--cc=nagasuresh12@gmail.com \
--cc=richard@nod.at \
--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).