All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Revell <rlrevell@joe-job.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: Adrian McMenamin <adrian@mcmen.demon.co.uk>,
	alsa-devel@lists.sourceforge.net
Subject: Re: pointer callback in pcm
Date: Fri, 10 Mar 2006 15:23:30 -0500	[thread overview]
Message-ID: <1142022211.19759.27.camel@mindpipe> (raw)
In-Reply-To: <s5hek1am4xb.wl%tiwai@suse.de>

On Fri, 2006-03-10 at 21:16 +0100, Takashi Iwai wrote:
> Some hardwares have actually separate h/w buffer and the memory
> buffer (s/w buffer).  Even with such hardwares, mmap can be
> implemented.  Instead of DMA transfer by hardware, the driver copies
> data between h/w and s/w buffers on demand, namely, before starting
> the stream (in trigger callback) and when each period is consumed (via
> ack callback).
> 
> There are userful functions for such a case, found in pcm-indirect.h.
> They are used emu10k1 FX mode and cs46xx.
> 

Adrian has a weird case - his hardware *does* have DMA but it must be
reprogrammed every period.  So no copying is required in the driver.

The driver guide assumes that once the DMA is started, it will
repeatedly fill the buffer until we tell it to stop.

So, I thought that the DMA could be programmed in the copy callback each
period.  But maybe this should go in the ack callback.

Lee



-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642

  parent reply	other threads:[~2006-03-10 20:23 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-09 22:21 pointer callback in pcm Adrian McMenamin
2006-03-10  0:53 ` Lee Revell
2006-03-10 19:51   ` Adrian McMenamin
2006-03-10 20:16     ` Takashi Iwai
2006-03-10 20:21       ` Adrian McMenamin
2006-03-10 20:23       ` Lee Revell [this message]
2006-03-11 11:16     ` James Courtier-Dutton
2006-03-11 11:27       ` Adrian McMenamin
2006-03-11 15:42         ` James Courtier-Dutton
2006-03-11 15:53           ` Adrian McMenamin
2006-03-11 17:30           ` Adrian McMenamin
2006-03-11 18:47             ` James Courtier-Dutton
2006-03-11 19:08               ` Adrian McMenamin
2006-03-11 19:15                 ` James Courtier-Dutton
2006-03-11 19:18                   ` Adrian McMenamin
2006-03-11 19:37                     ` James Courtier-Dutton
2006-03-11 19:55                       ` Adrian McMenamin
2006-03-11 19:26               ` Adrian McMenamin
2006-03-11 19:35                 ` James Courtier-Dutton

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=1142022211.19759.27.camel@mindpipe \
    --to=rlrevell@joe-job.com \
    --cc=adrian@mcmen.demon.co.uk \
    --cc=alsa-devel@lists.sourceforge.net \
    --cc=tiwai@suse.de \
    /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.