mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ben Dooks <ben-linux@fluff.org>
To: Ben Dooks <ben-linux@fluff.org>
Cc: Christer Weinigel <christer@weinigel.se>,
	linux-kernel@vger.kernel.org,
	Pierre Ossman <drzeus-list@drzeus.cx>
Subject: Re: Proposed SDIO layer rework
Date: Fri, 5 Sep 2008 18:08:51 +0100	[thread overview]
Message-ID: <20080905170851.GB1916@fluff.org.uk> (raw)
In-Reply-To: <20080905140216.GZ26082@trinity.fluff.org>

On Fri, Sep 05, 2008 at 03:02:16PM +0100, Ben Dooks wrote:
> On Fri, Sep 05, 2008 at 03:47:21PM +0200, Christer Weinigel wrote:
> > Ben Dooks wrote:
> > >>Most of the CPU is probably spent doing PIO transfers to the SDIO 
> > >>controller, if DMA starts working in the s3cmci driver, the CPU load 
> > >>difference will be even larger.
> > >
> > >I'm not sure if I'll get the time to look at this before the new kernel
> > >is released... anyway DMA may not be much of a win for smaller transfers
> > >anyway, since the setup (the cache will need to be cleaned out or the
> > >transfer memory made unbuffered)  and complete time will add another
> > >IRQ's worth of response time. This means small transfers are probably
> > >better off using PIO.
> > 
> > Yes.  For the DMA-capable S3C SPI driver I wrote, I added some 
> > thresholds, so for smaller transfers than a certain number of bytes, I 
> > skip DMA and just do a polled/interrupt transfer instead.  For short 
> > transfers at high clock rates it's not even worth getting an interrupt 
> > per byte, it's better to just busy wait for each byte, since the 
> > interrupt overhead is larger than the time between each byte.
> > 
> > A SDIO CMD/response packet is 48 bits, so at 25 MHz that is only about 4 
> > us and I think the interrupt overhead is more than that.  So if we 
> > really want to squeeze every last clock cycle out of the SDIO driver it 
> > may be better to busy wait for the end of simple CMD52s instead of using 
> > the an interrupt to complete the transfer.
> > 
> > I'll clean up my s3cmci patches and send them to you, but I can't 
> > promise when I'll be done, so it'll probably have to wait for the next 
> > kernel release.
> 
> Any chance of getting a list of what you've got in progress and at-least
> the byte/word patch sorted out before the next merge window?

I should have added that at least if I know what you are working on,
then we can come to some arrangement on who should do what for the
next kernel release. I would like to get the fixups for word/byte code
in, and anything else that does not require huge amounts of testing.

-- 
Ben (ben@fluff.org, http://www.fluff.org/)

  'a smiley only costs 4 bytes'

  reply	other threads:[~2008-09-05 17:09 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-05 11:45 Christer Weinigel
2008-09-05 13:18 ` Ben Dooks
2008-09-05 13:47   ` Christer Weinigel
2008-09-05 14:02     ` Ben Dooks
2008-09-05 17:08       ` Ben Dooks [this message]
2008-09-05 14:50 ` Pierre Ossman

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=20080905170851.GB1916@fluff.org.uk \
    --to=ben-linux@fluff.org \
    --cc=christer@weinigel.se \
    --cc=drzeus-list@drzeus.cx \
    --cc=linux-kernel@vger.kernel.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

all inboxes | Powered by JetHome®