Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp2525547ybt; Mon, 22 Jun 2020 00:01:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzsyGm9oEo9FYqSBDAlqppyBRX5DduZ13EwgTvCLDhm+kekvwYl2NIcE/lX5lEkJJ25Jxbo X-Received: by 2002:a17:906:cc58:: with SMTP id mm24mr15429548ejb.134.1592809301912; Mon, 22 Jun 2020 00:01:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592809301; cv=none; d=google.com; s=arc-20160816; b=A8f6XE4xZ0zaivNHe+ekrQ+5c40H5J/FwwPv8YH8KhJkzYn3QjIWpy8iQN5HKvxX0K JLUz00IfWcPLh0ncKh3KXgWVDYygNZul5aRY6mNDmvgMcByM3ln5xkkUTQp1Q2vx98h4 NVLjK75AG8kQUSH7RgePeWPfLLdpOOGlCjkJ4XOi0qi7WJzsBvJ6dD266YYaOMcSnUDf FtPPchJy1jILPgQXyCJP1PV6PSrZzrdwTSbUKaxKdkmnMC21rr9cR3gz7zL7Rul8EE+C E34j0AeKbwRAYkDMGzrA05KaXPSwoQOv12SKxpbCTHX91Bls31AV7EkTqvZ7hKS4o3uP ZHUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=FZ8jOJvv89xEFRHUd9gn5Q8ZF7wewt3A0Kyy1GJRPI4=; b=lPfVneI8/Hh5h5F8Yx85J80QOjeJsc/tNvEYF+1KhI4HcqBJ09eUvZhQ1KwyofYGud eUbhOHDNHyoekYx+jL2JgS/P0hArAGr4HqlPI3hVeYPdzbnQrK/8JsmbNNSuidJCnl+Z QtzznK/MPkbJBOUOKVZMOONdtdUrB8c7iEtpeAJXkhCxWUsjCthaA5Kit2wTgsFBLkHz fKHzyqSNEoLYSYDqVBdJuMoiUl15sXSMRGJDPamxfsrTLPYNoY4Ye0G0aAQlQVf1mn1R G3i6UOxz/A/3y3DEGm7z/A9DSUtr2vSr0fmLrKahq9jMANENLfhM/DMRrV5Rfi9iTq/c y/Fg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XUubVqh7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cz19si8514042edb.40.2020.06.22.00.01.19; Mon, 22 Jun 2020 00:01:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XUubVqh7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731309AbgFVG6h (ORCPT + 99 others); Mon, 22 Jun 2020 02:58:37 -0400 Received: from mail.kernel.org ([198.145.29.99]:43806 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725933AbgFVG6g (ORCPT ); Mon, 22 Jun 2020 02:58:36 -0400 Received: from localhost.localdomain (unknown [171.61.66.58]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9D6E42543C; Mon, 22 Jun 2020 06:58:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1592809115; bh=GqFAi7Q4sHYSuj6BAxMwU4DVplPmfDCh76OdL45s+EM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XUubVqh7SwrB1MbftvIpwdhMm7y6KHzJxeFvVNTH/tD6Xxo5XFxARiUaBkZM8W1kz r50RblSeNtI1MSjlbdZWVJ4r6EGHDEE4S8YxivgVlaOwL0dE1m6u9AM9MRE19IlpgE 7T81WWPH0+y6mERjA2wlJwJ3tM4TTSV9pa3hQ3rI= From: Vinod Koul To: Takashi Iwai , Jaroslav Kysela Cc: linux-arm-msm@vger.kernel.org, Bjorn Andersson , Vinod Koul , Srinivas Kandagatla , Pierre-Louis Bossart , Charles Keepax , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/3] ALSA: compress: document the compress gapless audio state machine Date: Mon, 22 Jun 2020 12:28:10 +0530 Message-Id: <20200622065811.221485-3-vkoul@kernel.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200622065811.221485-1-vkoul@kernel.org> References: <20200622065811.221485-1-vkoul@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Also documented the galpess transitions. Please note that these are not really stream states, but show how the stream steps in gapless mode Signed-off-by: Vinod Koul --- .../sound/designs/compress-offload.rst | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/Documentation/sound/designs/compress-offload.rst b/Documentation/sound/designs/compress-offload.rst index 6f86db82298b..0bebfd33b933 100644 --- a/Documentation/sound/designs/compress-offload.rst +++ b/Documentation/sound/designs/compress-offload.rst @@ -251,6 +251,38 @@ Sequence flow for gapless would be: (note: order for partial_drain and write for next track can be reversed as well) +Gapless Playback SM +=================== + +For Gapless, we move from running state to partial drain and back, along +with setting of meta_data and signalling for next track :: + + + +----------+ + compr_drain_notify() | | + +------------------------>| RUNNING | + | | | + | +----------+ + | | + | | + | | compr_next_track() + | | + | V + | +----------+ + | | | + | |NEXT_TRACK| + | | | + | +----------+ + | | + | | + | | compr_partial_drain() + | | + | V + | +----------+ + | | | + +------------------------ | PARTIAL_ | + | DRAIN | + +----------+ Not supported ============= -- 2.26.2