From mboxrd@z Thu Jan 1 00:00:00 1970 From: Giuliano Pochini Subject: RE: how does alsa keep passing data into driver? Date: Fri, 14 Oct 2005 09:36:33 +0200 (CEST) Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: Sender: alsa-devel-admin@lists.sourceforge.net Errors-To: alsa-devel-admin@lists.sourceforge.net List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , List-Archive: To: Tehn Yit Chin Cc: alsa-devel@lists.sourceforge.net List-Id: alsa-devel@alsa-project.org On 14-Oct-2005 Tehn Yit Chin wrote: > I am trying to understand how the ALSA pass PCM data to the driver. I h= ave > understand that when the driver starts up, a start trigger event is cre= ated > and some PCM data is passed in. After that, how does the subsequent PCM= data > get pass into the driver? The ALSA middle layer passes PCM data to the driver only if the driver attaches a function to the .copy() callback. Otherwise (and this is the most common case) the ALSA ml copies data to/from the buffer on its own. > I also realise that a pointer event is generated, but from the docs, th= e > pointer event is for figuring out the current position. Yep. ALSA needs to know what part of the buffer has been consumed so it can copy new data to/from that part. -- Giuliano. ------------------------------------------------------- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl