From mboxrd@z Thu Jan 1 00:00:00 1970 From: Raymond Yau Subject: Re: PulseAudio and SNDRV_PCM_INFO_BATCH Date: Mon, 22 Jun 2015 19:54:19 +0800 Message-ID: References: <557E86DD.8020709@metafoo.de> <557EBEAA.70004@metafoo.de> <557EDE22.7080808@metafoo.de> <5587AE77.1020709@metafoo.de> <5587D845.4040309@ladisch.de> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail-oi0-f42.google.com (mail-oi0-f42.google.com [209.85.218.42]) by alsa0.perex.cz (Postfix) with ESMTP id 7C1C0261B19 for ; Mon, 22 Jun 2015 13:54:20 +0200 (CEST) Received: by oiyy130 with SMTP id y130so102461846oiy.0 for ; Mon, 22 Jun 2015 04:54:19 -0700 (PDT) In-Reply-To: <5587D845.4040309@ladisch.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: Clemens Ladisch Cc: ALSA Development Mailing List , Lars-Peter Clausen , Takashi Iwai , Tanu Kaskinen , Arun Raghavan , David Henningsson List-Id: alsa-devel@alsa-project.org > >> Are all soc audio driver use cyclic dma ? > > > > I'm not sure I understand the question. All audio drivers use some > > kind of cyclic DMA. > > The ALSA API requires the driver to provide a cyclic sample buffer (or > something that behaves like one). > > However, not all hardware works this way. USB and FireWire require the > driver to continually queue new packets, whose size and timing are > determined by the bus clock and are not directly related to the ALSA > ring buffer. These drivers use double buffering; the actual DMA happens > from those packets, not from the ring buffer. > If those queued packets/urb cannot be rewind, snd_pcm_rewindable should return zero for those driver