From patchwork Thu Jun 12 10:34:24 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Patrakov X-Patchwork-Id: 4340461 Return-Path: X-Original-To: patchwork-alsa-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id A5ADBBEEAA for ; Thu, 12 Jun 2014 10:37:06 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id C552C202E9 for ; Thu, 12 Jun 2014 10:37:05 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.kernel.org (Postfix) with ESMTP id 7F3252012D for ; Thu, 12 Jun 2014 10:37:04 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 752632657D2; Thu, 12 Jun 2014 12:36:58 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, NO_DNS_FOR_FROM, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=no version=3.3.1 Received: from alsa0.perex.cz (localhost [IPv6:::1]) by alsa0.perex.cz (Postfix) with ESMTP id DE0E2265779; Thu, 12 Jun 2014 12:34:58 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 613CA265770; Thu, 12 Jun 2014 12:34:57 +0200 (CEST) Received: from mail-lb0-f176.google.com (mail-lb0-f176.google.com [209.85.217.176]) by alsa0.perex.cz (Postfix) with ESMTP id 536F1265204 for ; Thu, 12 Jun 2014 12:34:48 +0200 (CEST) Received: by mail-lb0-f176.google.com with SMTP id p9so555731lbv.7 for ; Thu, 12 Jun 2014 03:34:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=7nfipu8IudhaPI7JYemQG6nirxAbgm0TiNQilSWWj/g=; b=eCe97LfK+1o2BxyDZZUUd38v6W+n75j419TErZIIhP7d/sF10jzRn7L+ZG73SvCg0M IMpTyBH9BNZjOYrSYbWQlnnfbVTtamW9MQxlEWQdeu5dVVwqphCI/lE4Pu90ThcgvcXW puV7zNGqiu6rCvDv+yD6udSYfiYORjzLjd6hQTtDQr2duFMPS3Ec81gFRcYYTOzqIPOo ZqUJyVnUZtVjPH9Ss8tO4RX5yu5rwzRXeZ7qYub4iU0owtGVsd2d7odPSEeDXF7J8pMJ d7StJrLtqnF6266ZwxvAPLog174ZxRtN+sGuCLUK0/lliJAQBhUZk2pUn1zeD4JfTt0J 9nTQ== X-Received: by 10.113.3.139 with SMTP id bw11mr971324lbd.63.1402569286974; Thu, 12 Jun 2014 03:34:46 -0700 (PDT) Received: from localhost.localdomain (111279190.convex.ru. [82.193.153.141]) by mx.google.com with ESMTPSA id b6sm24054791laa.20.2014.06.12.03.34.46 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 12 Jun 2014 03:34:46 -0700 (PDT) From: "Alexander E. Patrakov" To: alsa-devel@alsa-project.org Date: Thu, 12 Jun 2014 16:34:24 +0600 Message-Id: <1402569264-2789-5-git-send-email-patrakov@gmail.com> X-Mailer: git-send-email 2.0.0 In-Reply-To: <1402569264-2789-1-git-send-email-patrakov@gmail.com> References: <1402569264-2789-1-git-send-email-patrakov@gmail.com> Cc: "Alexander E. Patrakov" Subject: [alsa-devel] [PATCH 4/4] pcm: null: add rewindable and forwardable callbacks X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP Dirty, but consistent with avail_update. Signed-off-by: Alexander E. Patrakov --- src/pcm/pcm_null.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/pcm/pcm_null.c b/src/pcm/pcm_null.c index a154a5c..f1d2f91 100644 --- a/src/pcm/pcm_null.c +++ b/src/pcm/pcm_null.c @@ -168,6 +168,17 @@ static int snd_pcm_null_pause(snd_pcm_t *pcm, int enable) return 0; } +static snd_pcm_sframes_t snd_pcm_null_rewindable(snd_pcm_t *pcm) +{ + return pcm->buffer_size; +} + +static snd_pcm_sframes_t snd_pcm_null_forwardable(snd_pcm_t *pcm ATTRIBUTE_UNUSED) +{ + return 0; +} + + static snd_pcm_sframes_t snd_pcm_null_rewind(snd_pcm_t *pcm, snd_pcm_uframes_t frames) { snd_pcm_null_t *null = pcm->private_data; @@ -325,7 +336,9 @@ static const snd_pcm_fast_ops_t snd_pcm_null_fast_ops = { .drop = snd_pcm_null_drop, .drain = snd_pcm_null_drain, .pause = snd_pcm_null_pause, + .rewindable = snd_pcm_null_rewindable, .rewind = snd_pcm_null_rewind, + .forwardable = snd_pcm_null_forwardable, .forward = snd_pcm_null_forward, .resume = snd_pcm_null_resume, .writei = snd_pcm_null_writei,