alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Patrick Lai <plai@codeaurora.org>
Cc: Liam Girdwood <lrg@slimlogic.co.uk>,
	linux-arm-msm@vger.kernel.org,
	alsa-devel <alsa-devel@alsa-project.org>,
	Mark Brown <broonie@opensource.wolfsonmciro.com>,
	alsa-devel@vger.kernel.org
Subject: Re: [alsa-devel] Question about your DSP topic branch
Date: Tue, 15 Mar 2011 11:25:31 +0000	[thread overview]
Message-ID: <20110315112531.GA17277@sirena.org.uk> (raw)
In-Reply-To: <4D7F1077.9030907@codeaurora.org>

On Tue, Mar 15, 2011 at 12:08:39AM -0700, Patrick Lai wrote:

> 1. If there are two front-ends routed to same backend, which front-end 
> hardware parameters should backend DAI be based on? For example, one 
> front-end is MONO and another front is stereo.

> 2. Depending on device mode/use case, I would like to configure BE to 
> different channel mode irrespective of front-end configuration(i.e 
> configuring back-end to handset mode). Where is the hook to do so under 
> ASoC DSP framework?

If you can configure the two completely separately then you can just
have a DAPM path between the two devices and don't need to link the DAI
configurations at all - WM8994 is an example of doing this, there is a
bunch of DSP and mixing in the digital section between the DAIs but
because the DSP includes sample rate conversion the DAIs can be
configured separately and we don't have to worry about propagating DSP
through.

Thinking off the top of my head if you do need to link the
configurations sometimes the first thing that springs to mind is to set
constraints so broad that they're noops - we're going to want to support
propagating constraints through as well as specific settings anyway
since some stuff has restrictions like "Route DAI 1 to DAI 2 with DAI 2
at any sample rate that's an integer division of the DAI 1 rate", though
that sort of stuff may well be a second pass.

One thing I should mention which I've been working on and which may
(depending on the design of your hardware) be a better match for you is
providing a mechanism for setting up DAI links and starting streams on
them in kernel space based on DAPM routing, with DAPM propagating over
these links automatically.  This is mostly intended for representing
things like basebands where you'll have a DAI link that's going to be
running in one of a small number of configurations (often only one)
connected to something else along the lines of:

   CODEC  <  8kHz mono  >  Baseband

so the idea is that to the user you can have a couple of pin switches
(or whatever else can be represented) in the baseband to say that the
baseband is passing audio and then DAPM will be extended to figure out
that it should start up the audio intefaces and configure their params
without needing userspace to do it just like it can if the link between
the two were analogue.

This will compliment the work Liam's doing - Liam's work ties together
the configuration within a device, this'll help with inter-device links.

  reply	other threads:[~2011-03-15 11:25 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <4D2652C8.7030701@codeaurora.org>
2011-01-25  7:01 ` Question about your DSP topic branch Patrick Lai
2011-01-25 11:51   ` Mark Brown
2011-01-26  6:22     ` Patrick Lai
2011-01-26 11:20       ` Mark Brown
2011-01-27 21:51         ` Patrick Lai
2011-01-31 13:30           ` Mark Brown
2011-03-17  7:29             ` Patrick Lai
2011-03-17 11:57               ` Mark Brown
2011-01-25 16:46   ` Liam Girdwood
2011-01-27 23:41     ` Patrick Lai
2011-03-15  7:08       ` [alsa-devel] " Patrick Lai
2011-03-15 11:25         ` Mark Brown [this message]
2011-03-17  7:21           ` Patrick Lai
2011-03-17 23:58             ` Mark Brown
2011-03-30 20:39 ` Question about your DSP topic Patrick Lai
2011-03-31  6:40   ` Question about your DSP topic branch Patrick Lai
2011-03-31 21:35     ` Liam Girdwood
2011-03-31 21:42       ` Mark Brown
2011-03-31 22:07         ` Patrick Lai
2011-03-31 18:26   ` Question about your DSP topic Liam Girdwood
2011-03-31 20:59     ` Patrick Lai
2011-03-31 21:37       ` Liam Girdwood

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=20110315112531.GA17277@sirena.org.uk \
    --to=broonie@opensource.wolfsonmicro.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=alsa-devel@vger.kernel.org \
    --cc=broonie@opensource.wolfsonmciro.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=lrg@slimlogic.co.uk \
    --cc=plai@codeaurora.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).