public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding@avionic-design.de>
To: David Brownell <david-b@pacbell.net>
Cc: spi-devel-general@lists.sourceforge.net, linux-kernel@vger.kernel.org
Subject: Re: [spi-devel-general] [PATCH v2] spi: Add support for the OpenCores SPI controller.
Date: Tue, 28 Apr 2009 14:20:11 +0200	[thread overview]
Message-ID: <20090428122011.GB6325@avionic-design.de> (raw)
In-Reply-To: <200904280458.23018.david-b@pacbell.net>

* David Brownell wrote:
> On Tuesday 28 April 2009, Thierry Reding wrote:
> > This second version is pretty much a rewrite.
> 
> That happens sometimes...
> 
> 
> > Some notes about the most 
> > important changes:
> > 
> >   * uses per-chip states to allow more slaves to use the controller
> >     concurrently
> >   * rejects invalid device configurations during setup
> >   * rejects invalid per-message and per-transfer options
> >   * queues messages so that they can be processed one after another
> >       - this also provides for a way to handle power-management
> >   * omits the spioc.h (and with it the platform data structure):
> >       - uses the platform_device.id for the bus number
> >       - always uses 8 chipselects because that's the maximum that the core
> >         supports
> 
> All that sounds good.
> 
>  
> > I couldn't really find a way to implement per-transfer overrides for the
> > word size because the controller simply has no concept of word sizes. Is it
> > in such cases still necessary to hardwire the word size to 8 bits?
> 
> Is this the http://www.opencores.org/?do=project&who=spi core?

Yes, it is.

> Its summary says "Variable length of transfer word up to 32 bits";
> does that mean "configurable when core is synthesized" instead of
> truly "variable"?

That summary seems out-dated. The variable length of transfer word is
actually the maximum length of a single transfer and is 128 bits in the
latest version. So you get 4 registers, each 32 bits wide into which you
program the data you want to transfer. Then you set the number of bits of
that transfer so the core knows which registers and what bits of those
registers to shift out serially.

I'm not sure whether this is supposed to be the same as the word size. If it
is it would mean that a single transfer can always only transfer one word.
Which is kind of inefficient, I would think.

Thierry


  reply	other threads:[~2009-04-28 12:20 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-26  8:07 [PATCH] spi: Add support for the OpenCores SPI controller Thierry Reding
2009-03-30  8:44 ` Florian Fainelli
2009-04-04 19:27 ` David Brownell
2009-04-28 11:01   ` [PATCH v2] " Thierry Reding
2009-04-28 11:15     ` [spi-devel-general] " Thierry Reding
2009-04-28 11:58       ` David Brownell
2009-04-28 12:20         ` Thierry Reding [this message]
2009-04-28 13:41           ` Florian Fainelli
2009-04-28 20:54             ` David Brownell
2009-04-29  6:31               ` Thierry Reding
2009-04-29  9:15                 ` Florian Fainelli
2009-04-28 21:03           ` David Brownell
2009-04-29  6:22             ` Thierry Reding

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=20090428122011.GB6325@avionic-design.de \
    --to=thierry.reding@avionic-design.de \
    --cc=david-b@pacbell.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=spi-devel-general@lists.sourceforge.net \
    /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