All of lore.kernel.org
 help / color / mirror / Atom feed
From: Charles Keepax <ckeepax@opensource.cirrus.com>
To: Vinod Koul <vinod.koul@intel.com>
Cc: alsa-devel@alsa-project.org, kuninori.morimoto.gx@renesas.com,
	patches@opensource.cirrus.com, lgirdwood@gmail.com,
	vkoul@kernel.org, broonie@kernel.org
Subject: Re: [PATCH 2/4] ASoC: compress: Clarify the intent of current compressed ops handling
Date: Fri, 4 May 2018 12:59:22 +0100	[thread overview]
Message-ID: <20180504115922.GK20410@imbe.wolfsonmicro.main> (raw)
In-Reply-To: <20180503162714.GX6014@localhost>

On Thu, May 03, 2018 at 09:57:14PM +0530, Vinod Koul wrote:
> On Thu, Apr 26, 2018 at 05:30:05PM +0100, Charles Keepax wrote:
> > It is proposed that the model adopted for compressed component
> > support currently should be that multiple components are supported
> > on a compressed DAI but that they must provide a unified set of
> > capabilities. So for example having multiple components involved in
> > the decode is fine but the core will not presently attempt to make
> > smart decisions like offloading MP3 to this component and AAC another.
> 
> Well this is supposed to be entirely a userspace call, we just present
> devices with capabilities and the usespace decides... Btw capabilities are
> supposed to be dynamic.

My intention was to not suggest otherwise. The only point I
was really making is that if there are multiple components on
the link the core won't make attempt to amalgamate output from
those components, but we will inform all components of activity
on the DAI.

> Looking at the code again now, I realized that we are treating compress like
> PCM. It makes little sense to me to have multiple components for a
> compressed device, does that model on your systems..?

So that was very much my initial reaction as well [1], and
certainly for our devices it only really makes sense to have a
single component handle the compressed ops. Hence why I initially
started with basically just returning the first component with
compressed ops.

That said however, thinking about it more I do think there are
pretty reasonable systems that have multiple components on a
compressed DAI. For example I could imagine a system where you
have a DSP on both the AP and CODEC ends of the DAI link and
they split the decode doing some work on each. In that case
one would want calls like open and set_params to go to both
components.

As you say separate decode engines probably belong on separate
DAIs and that kinda is what led me to the current series. It
should implement enough to enable basic multi-component use-cases
but makes it more clear that we are not supporting multiplexing
multiple offloads onto a single DAI at the moment.

Thanks,
Charles

[1] https://patchwork.kernel.org/patch/10182603/

  reply	other threads:[~2018-05-04 11:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-26 16:30 [PATCH 1/4] ASoC: compress: Only assign compr->ops->copy once Charles Keepax
2018-04-26 16:30 ` [PATCH 2/4] ASoC: compress: Clarify the intent of current compressed ops handling Charles Keepax
2018-05-03 16:27   ` Vinod Koul
2018-05-04 11:59     ` Charles Keepax [this message]
2018-05-04 12:04       ` Charles Keepax
2018-05-08  8:33       ` Vinod Koul
2018-05-08 10:52         ` Charles Keepax
2018-05-08 12:04           ` Vinod Koul
2018-05-08 13:09             ` Charles Keepax
2018-04-26 16:30 ` [PATCH 3/4] ASoC: compress: Add helper functions for component trigger/set_params Charles Keepax
2018-04-26 16:30 ` [PATCH 4/4] ASoC: compress: Fix up some trivial formatting issues Charles Keepax
2018-05-11  3:25   ` Applied "ASoC: compress: Fix up some trivial formatting issues" to the asoc tree Mark Brown
2018-05-03 16:28 ` [PATCH 1/4] ASoC: compress: Only assign compr->ops->copy once Vinod Koul
2018-05-11  3:25 ` Applied "ASoC: compress: Only assign compr->ops->copy once" to the asoc tree Mark Brown

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=20180504115922.GK20410@imbe.wolfsonmicro.main \
    --to=ckeepax@opensource.cirrus.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=kuninori.morimoto.gx@renesas.com \
    --cc=lgirdwood@gmail.com \
    --cc=patches@opensource.cirrus.com \
    --cc=vinod.koul@intel.com \
    --cc=vkoul@kernel.org \
    /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.