From: Vignesh R <vigneshr@ti.com>
To: Mark Brown <broonie@kernel.org>,
David Woodhouse <dwmw2@infradead.org>,
Brian Norris <computersforpeace@gmail.com>,
Tony Lindgren <tony@atomide.com>,
Russell King <linux@arm.linux.org.uk>
Cc: Huang Shijie <b32955@freescale.com>, Vignesh R <vigneshr@ti.com>,
linux-omap@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org,
linux-spi@vger.kernel.org
Subject: [RFC PATCH 0/5] Add memory mapped read support for TI QSPI.
Date: Tue, 28 Jul 2015 14:11:11 +0530 [thread overview]
Message-ID: <1438072876-16338-1-git-send-email-vigneshr@ti.com> (raw)
This patch series adds support for memory mapped reads for TI QSPI
driver.
TI QSPI controller has memory mapped port (SFI translator interface [1])
through which SPI flash memories can be read using memcpy call. SFI
translator takes care of generating appropriate SPI signals to read data
from flash. This interface works only with SPI flash memories and cannot
be used with other SPI devices. To use memory mapped port, the
controller is switched to memory mapped interface by writing to
QSPI_SPI_SWITCH_REG. The read_opcode, read mode, dummy bytes are set in
QSPI_SPI_SETUPx_REG. Once switched, the SPI flash is available to SoC to
read at specific address. This interface is disabled once memory mapped
read is complete. For write, erase and interaction with non-flash SPI
devices normal SPI interface is used.
The m25p80 driver sets use_mmap_read flag in spi-message struct passed
to spi-ti-qspi so as to indicate the read request is from mtd layer.
spi-ti-qspi driver switches to memory mapped mode and does memcpy based
on use_mmap_read flag.
The read performace increased from ~100kB/s to ~2.5MB/s on DRA74 EVM.
Tested on DRA74 EVM with spansion S25FL256S flash.
Tested on AM437x sk evm with macronix MX66l51235l flash.
[1] http://www.ti.com/lit/ug/spruhz6/spruhz6.pdf Section 24.5.4 QSPI
Functional Description
Vignesh R (5):
spi: introduce flag for memory mapped read
spi: spi-ti-qspi: Add memory mapped read support
mtd: devices: m25p80: set flag to request memory mapped read
ARM: dts: DRA7: Add memory map region entries for qspi
ARM: dts: AM4372: Add memory map region entries for qspi
arch/arm/boot/dts/am4372.dtsi | 4 +-
arch/arm/boot/dts/dra7.dtsi | 6 +-
drivers/mtd/devices/m25p80.c | 3 +
drivers/spi/spi-ti-qspi.c | 129 ++++++++++++++++++++++++++++++++++++++++--
include/linux/spi/spi.h | 3 +
5 files changed, 138 insertions(+), 7 deletions(-)
--
2.4.6
next reply other threads:[~2015-07-28 8:41 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-28 8:41 Vignesh R [this message]
2015-07-28 8:41 ` [RFC PATCH 1/5] spi: introduce flag for memory mapped read Vignesh R
2015-07-31 18:17 ` Mark Brown
2015-08-03 4:57 ` Vignesh R
2015-08-04 15:51 ` Mark Brown
[not found] ` <20150804155148.GR20873-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2015-08-04 17:59 ` R, Vignesh
[not found] ` <55C0FD98.1090107-l0cyMroinI0@public.gmane.org>
2015-08-05 5:21 ` Michal Suchanek
2015-08-05 5:35 ` Vignesh R
[not found] ` <55C1A095.8000509-l0cyMroinI0@public.gmane.org>
2015-08-05 5:57 ` Michal Suchanek
2015-08-05 11:50 ` Mark Brown
[not found] ` <20150805115013.GJ20873-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2015-08-05 12:40 ` Michal Suchanek
[not found] ` <CAOMqctQXwcHyiWBwtugSDSE_k65qrNfrwnhjQMDJkLoJMmGzUw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-05 12:44 ` Mark Brown
2015-08-05 12:56 ` Michal Suchanek
2015-08-06 9:02 ` Mark Brown
2015-08-06 10:01 ` Michal Suchanek
[not found] ` <CAOMqctQZRZ4zG_yYy=CeX3DX4NVNWN1COP4Q-2YvMun9xYOA7g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-06 10:22 ` Russell King - ARM Linux
2015-08-06 11:00 ` Mark Brown
[not found] ` <20150806102225.GI7576-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-08-06 11:02 ` Michal Suchanek
2015-08-06 12:25 ` Vignesh R
2015-08-06 13:51 ` Russell King - ARM Linux
[not found] ` <20150806135129.GJ7576-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-08-06 16:14 ` Geert Uytterhoeven
[not found] ` <CAMuHMdWWDwZ=ziGQXFCnOX8pErXpsEi533J73_Hh=sEqq4hR6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-06 18:20 ` Michal Suchanek
2015-08-06 21:33 ` Russell King - ARM Linux
[not found] ` <20150806213340.GK7576-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2015-08-07 7:38 ` Michal Suchanek
2015-08-07 8:35 ` Vignesh R
2015-08-07 8:25 ` Martin Sperl
2015-08-07 10:16 ` Michal Suchanek
[not found] ` <CAOMqctScUybdoZPgqH185qzDxB=TyutDMARextHx0XwC7L3Xmw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-12 9:27 ` Vignesh R
2015-08-06 16:46 ` Mark Brown
2015-08-06 18:20 ` Mark Brown
2015-08-06 11:23 ` Mark Brown
2015-08-06 11:42 ` Michal Suchanek
2015-08-06 16:03 ` Mark Brown
2015-07-28 8:41 ` [RFC PATCH 2/5] spi: spi-ti-qspi: Add memory mapped read support Vignesh R
2015-07-28 8:41 ` [RFC PATCH 3/5] mtd: devices: m25p80: set flag to request memory mapped read Vignesh R
2015-07-28 8:41 ` [RFC PATCH 4/5] ARM: dts: DRA7: Add memory map region entries for qspi Vignesh R
2015-07-31 13:48 ` Sekhar Nori
[not found] ` <55BB7CA4.1020300-l0cyMroinI0@public.gmane.org>
2015-08-03 5:09 ` Vignesh R
2015-07-31 18:19 ` Mark Brown
[not found] ` <20150731181903.GN20873-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2015-08-03 5:02 ` Vignesh R
[not found] ` <55BEF5D1.1050608-l0cyMroinI0@public.gmane.org>
2015-08-04 15:52 ` Mark Brown
2015-07-31 21:28 ` Brian Norris
[not found] ` <20150731212847.GH10676-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2015-08-03 5:06 ` Vignesh R
2015-07-28 8:41 ` [RFC PATCH 5/5] ARM: dts: AM4372: " Vignesh R
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=1438072876-16338-1-git-send-email-vigneshr@ti.com \
--to=vigneshr@ti.com \
--cc=b32955@freescale.com \
--cc=broonie@kernel.org \
--cc=computersforpeace@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=dwmw2@infradead.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=tony@atomide.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).