From: Sourav Poddar <sourav.poddar@ti.com>
To: Trent Piepho <tpiepho@gmail.com>, Mark Brown <broonie@kernel.org>,
"Gupta, Pekon" <pekon@ti.com>,
Brian Norris <computersforpeace@gmail.com>
Cc: "spi-devel-general@lists.sourceforge.net"
<spi-devel-general@lists.sourceforge.net>,
Peter Korsgaard <peter@korsgaard.com>,
"linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>,
David Woodhouse <dwmw2@infradead.org>,
"Balbi, Felipe" <balbi@ti.com>
Subject: Re: [PATCH 1/3] spi/qspi: Add memory mapped read support.
Date: Fri, 18 Oct 2013 12:57:51 +0530 [thread overview]
Message-ID: <5260E2F7.4020404@ti.com> (raw)
In-Reply-To: <5260D0C7.4000805@ti.com>
Hi,
On Friday 18 October 2013 11:40 AM, Sourav Poddar wrote:
> On Friday 18 October 2013 11:26 AM, Trent Piepho wrote:
>> On Thu, Oct 17, 2013 at 9:06 PM, Sourav Poddar<sourav.poddar@ti.com>
>> wrote:
>>> On Friday 18 October 2013 05:12 AM, Mark Brown wrote:
>>>>> Are you looking for comparison between read_via_dma() v/s memcpy() ?
>>>> No, I'm looking for a comparison of normal SPI mode (which I'd have
>>>> expected to DMA) and the memcpy() mode.
>>>>
>>>>> If yes, then unfortunately we are bit constrained because our
>>>>> controller
>>>>> does not support DMA. So, we have to depend on CPU based memcpy()
>>>>> only. However, use of DMA can be added as an independent patch on
>>>>> top of this CASE-2 patch.
>>>> However if the controller can't DMA at all then that's not going to be
>>>> possible... am I understanding you correctly that normal SPI can't
>>>> DMA?
>>> Yes, you are correct, the normal SPI cant DMA.
>> Hardware limitation or driver limitation? Adding DMA support to the
>> driver might be much more useful than adding memory mapped read
>> support.
> Its a hardware limitation, the qspi controller does not support DMA.
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
So, consolidating all the comments, this is what can be done to improve the
$subject patch..
1. Keep the qspi controller by default in memory mapped mode.
2. While doing operations other than memory mapped, change the
controller into config mode and at the end change it into memory mapped
mode.
3. For filling memory mapped register in qspi controller, we can pass
that information
from dt rather than hardcoding as macros.
4. For memory mapped read, do the memcpy in the mtd_read itself and
bypass the
SPI framework.
This has two points to be considered -
4a.
Roadblock:
To get the mem buf from the spi controller to mtd layer
Solution:
As suggested by Mark, we can define some apis like
get_buf/free_buf in mtd driver and use that to get the
buf.
4b.
Roadblock:
Runtime clock management is handle by SPI framework, so while
doing memory read, where we bypass SPI framework, clocks will be
disable and we will get an abort while doing memcpy.
Possible solution:
As suggested by Trent, we can keep the SPI controller clocks
always ON ?
If the above proposal looks good, should I go ahead and post the next
updated
patch series?
next prev parent reply other threads:[~2013-10-18 7:28 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-09 15:24 [PATCH 0/3]Add quad/memory mapped support for SPI flash Sourav Poddar
2013-10-09 15:24 ` Sourav Poddar
2013-10-09 15:24 ` [PATCH 1/3] spi/qspi: Add memory mapped read support Sourav Poddar
2013-10-09 15:24 ` Sourav Poddar
2013-10-09 16:07 ` Mark Brown
2013-10-09 16:07 ` Mark Brown
[not found] ` <20131009160759.GQ21581-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-10-09 16:54 ` Sourav Poddar
2013-10-09 16:54 ` Sourav Poddar
2013-10-09 17:40 ` Mark Brown
2013-10-09 17:40 ` Mark Brown
2013-10-09 18:15 ` Sourav Poddar
2013-10-09 18:15 ` Sourav Poddar
2013-10-09 18:41 ` Mark Brown
2013-10-09 18:41 ` Mark Brown
[not found] ` <20131009174027.GS21581-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-10-09 19:01 ` Peter Korsgaard
2013-10-09 19:01 ` Peter Korsgaard
2013-10-09 19:36 ` Mark Brown
2013-10-09 19:36 ` Mark Brown
[not found] ` <87hacq1d5k.fsf-D6SC8u56vOOJDPpyT6T3/w@public.gmane.org>
2013-10-10 2:27 ` Trent Piepho
2013-10-10 2:27 ` Trent Piepho
2013-10-10 8:52 ` Sourav Poddar
2013-10-10 8:52 ` Sourav Poddar
2013-10-10 10:14 ` Mark Brown
2013-10-10 10:14 ` Mark Brown
2013-10-10 10:17 ` Sourav Poddar
2013-10-10 10:17 ` Sourav Poddar
2013-10-10 11:08 ` Sourav Poddar
2013-10-10 11:08 ` Sourav Poddar
2013-10-11 10:08 ` Mark Brown
2013-10-11 10:08 ` Mark Brown
2013-10-15 6:06 ` Sourav Poddar
2013-10-15 6:06 ` Sourav Poddar
2013-10-15 11:16 ` Mark Brown
2013-10-15 11:16 ` Mark Brown
2013-10-15 11:49 ` Sourav Poddar
2013-10-15 11:49 ` Sourav Poddar
2013-10-15 12:46 ` Mark Brown
2013-10-15 12:46 ` Mark Brown
[not found] ` <20131015124656.GM2443-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-10-15 13:23 ` Sourav Poddar
2013-10-15 13:23 ` Sourav Poddar
2013-10-15 15:53 ` Mark Brown
2013-10-15 15:53 ` Mark Brown
[not found] ` <525D41E2.30206-l0cyMroinI0@public.gmane.org>
2013-10-15 15:33 ` Gupta, Pekon
2013-10-15 15:33 ` Gupta, Pekon
2013-10-15 16:01 ` Mark Brown
2013-10-15 16:01 ` Mark Brown
2013-10-15 16:54 ` Gupta, Pekon
2013-10-15 16:54 ` Gupta, Pekon
2013-10-15 18:01 ` Brian Norris
2013-10-15 18:01 ` Brian Norris
2013-10-15 18:10 ` Sourav Poddar
2013-10-15 18:10 ` Sourav Poddar
[not found] ` <20131015180142.GS23337-bU/DPfM3abD4WzifrMjOTkcViWtcw2C0@public.gmane.org>
2013-10-15 18:13 ` Trent Piepho
2013-10-15 18:13 ` Trent Piepho
2013-10-15 18:33 ` Gupta, Pekon
2013-10-15 18:33 ` Gupta, Pekon
2013-10-15 20:52 ` Mark Brown
2013-10-15 20:52 ` Mark Brown
[not found] ` <20131015205254.GX2443-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-10-15 21:03 ` Trent Piepho
2013-10-15 21:03 ` Trent Piepho
2013-10-15 22:10 ` Mark Brown
2013-10-15 22:10 ` Mark Brown
[not found] ` <20980858CB6D3A4BAE95CA194937D5E73EA23640-yXqyApvAXouIQmiDNMet8wC/G2K4zDHf@public.gmane.org>
2013-10-17 12:24 ` Sourav Poddar
2013-10-17 12:24 ` Sourav Poddar
2013-10-17 12:38 ` Mark Brown
2013-10-17 12:38 ` Mark Brown
2013-10-17 13:03 ` Gupta, Pekon
2013-10-17 13:03 ` Gupta, Pekon
2013-10-17 23:42 ` Mark Brown
2013-10-18 4:06 ` Sourav Poddar
2013-10-18 5:56 ` Trent Piepho
2013-10-18 6:10 ` Sourav Poddar
2013-10-18 7:27 ` Sourav Poddar [this message]
2013-10-18 10:31 ` Mark Brown
2013-10-18 11:48 ` Sourav Poddar
2013-10-18 13:08 ` Mark Brown
2013-10-18 14:47 ` Sourav Poddar
2013-10-15 20:59 ` Mark Brown
2013-10-15 20:59 ` Mark Brown
[not found] ` <52566ACC.1080100-l0cyMroinI0@public.gmane.org>
2013-10-11 9:30 ` Gupta, Pekon
2013-10-11 9:30 ` Gupta, Pekon
2013-10-10 10:10 ` Mark Brown
2013-10-10 10:10 ` Mark Brown
[not found] ` <20131010101052.GF21581-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-10-10 23:53 ` Trent Piepho
2013-10-11 9:59 ` Mark Brown
2013-10-11 9:59 ` Mark Brown
2013-10-09 15:24 ` [PATCHv3 2/3] drivers: mtd: devices: Add quad " Sourav Poddar
2013-10-09 15:24 ` Sourav Poddar
[not found] ` <1381332284-21822-3-git-send-email-sourav.poddar-l0cyMroinI0@public.gmane.org>
2013-10-09 18:15 ` Jagan Teki
2013-10-09 18:15 ` Jagan Teki
[not found] ` <CAD6G_RShZMkSpVzvXWEE0+sDX=pcnf7ndChndgDG5_T4EVL2vQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-11 7:10 ` Gupta, Pekon
2013-10-11 7:10 ` Gupta, Pekon
2013-10-24 1:06 ` Brian Norris
2013-10-24 5:44 ` Sourav Poddar
2013-10-24 7:34 ` Brian Norris
2013-10-24 8:44 ` Sourav Poddar
2013-10-24 17:07 ` Brian Norris
2013-10-24 17:55 ` Sourav Poddar
2013-10-09 15:24 ` [RFC/PATCH 3/3] drivers: mtd: devices: Add memory mapped " Sourav Poddar
2013-10-09 15:24 ` Sourav Poddar
2013-10-09 15:45 ` Mark Brown
2013-10-09 15:45 ` Mark Brown
2013-10-24 0:22 ` [PATCH 0/3]Add quad/memory mapped support for SPI flash Brian Norris
2013-10-24 4:51 ` Sourav Poddar
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=5260E2F7.4020404@ti.com \
--to=sourav.poddar@ti.com \
--cc=balbi@ti.com \
--cc=broonie@kernel.org \
--cc=computersforpeace@gmail.com \
--cc=dwmw2@infradead.org \
--cc=linux-mtd@lists.infradead.org \
--cc=pekon@ti.com \
--cc=peter@korsgaard.com \
--cc=spi-devel-general@lists.sourceforge.net \
--cc=tpiepho@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.