From: Amit Uttamchandani <amit.uttam-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Ned Forrester <nforrester-/d+BM93fTQY@public.gmane.org>
Cc: spi-devel
<spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Re: Spinlock vs mutexes for spi network driver
Date: Fri, 19 Mar 2010 02:35:59 -0700 [thread overview]
Message-ID: <20100319093559.GA29381@debian> (raw)
In-Reply-To: <4BA2A4F4.60207-/d+BM93fTQY@public.gmane.org>
On Thu, Mar 18, 2010 at 06:11:00PM -0400, Ned Forrester wrote:
[...]
>
> I'm not familiar with spi_read and spi_write. I guess those may be part
> of the user space driver: spidev? (I wrote a dedicated protocol driver
> for my device.)
Looking at spi.c, spi_read and spi_write both use spi_sync, so both are
blocking.
>
> It could be a lot of places, from bug in your code to bug in the
> controller driver. I'm not sure how much testing omap2_mcspi.c has
> received. When I first started using pxa2xx_spi.c, less than a year
> after it appeared in the kernel, I found a variety of bugs. I then
> spent about 6 months re-writing the driver to handle a high data-rate
> read-only master. It was much harder for me than I expected.
You're right. In our case, a lot of the problems where from the FPGA
side of things. We implemented the open cores ethmac controller in our
FPGA. Then wrote a SPI to wishbone protocol communication controller. I
am sure there are bugs in there too.
>
> > Could I be using SPI with dma to improve speed and maybe have access to
> > more resource in system memory?
>
> Way too short a question, with way too many unspecified variables. I
> really can't help you with that, because I know nothing about omap. DMA
> is useful if you are transmitting/receiving lots of data. If your
> device requires short exchanges (bytes, not Kbytes or Mbytes) with
> decision making in between, then DMA might not help. Many of the
> controller drivers have DMA built-in, and it is not hard to enable it,
> but I don't know about omap2_mcspi.c.
>
I guess I won't be needing DMA as our transfers and quite small. Thanks
for the explanation.
Thank you again for your help.
Amit
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
prev parent reply other threads:[~2010-03-19 9:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-17 20:49 Spinlock vs mutexes for spi network driver Amit Uttamchandani
[not found] ` <20100317204915.GB6358-QCuvCd35e3/QT0dZR+AlfA@public.gmane.org>
2010-03-17 21:28 ` Ned Forrester
[not found] ` <4BA14970.3050603-/d+BM93fTQY@public.gmane.org>
2010-03-18 16:46 ` Amit Uttamchandani
[not found] ` <20100318164641.GA22298-QCuvCd35e3/QT0dZR+AlfA@public.gmane.org>
2010-03-18 17:28 ` Ned Forrester
[not found] ` <4BA262B1.5050001-/d+BM93fTQY@public.gmane.org>
2010-03-18 20:09 ` Amit Uttamchandani
[not found] ` <20100318200940.GC16834-QCuvCd35e3/QT0dZR+AlfA@public.gmane.org>
2010-03-18 22:11 ` Ned Forrester
[not found] ` <4BA2A4F4.60207-/d+BM93fTQY@public.gmane.org>
2010-03-18 23:14 ` Ned Forrester
2010-03-19 9:35 ` Amit Uttamchandani [this message]
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=20100319093559.GA29381@debian \
--to=amit.uttam-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=nforrester-/d+BM93fTQY@public.gmane.org \
--cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
/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).