alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Mengdong Lin <mengdong.lin@linux.intel.com>
To: Mark Brown <broonie@kernel.org>
Cc: alsa-devel@alsa-project.org, vinod.koul@intel.com,
	mengdong.lin@intel.com, liam.r.girdwood@linux.intel.com,
	jeeja.kp@intel.com, subhransu.s.prusty@intel.com
Subject: Re: [PATCH 5/5] ASoC: The soc card can have auxiliary components
Date: Tue, 15 Dec 2015 16:06:14 +0800	[thread overview]
Message-ID: <566FC9F6.8050107@linux.intel.com> (raw)
In-Reply-To: <20151211202208.GS5727@sirena.org.uk>



On 12/12/2015 04:22 AM, Mark Brown wrote:
> On Thu, Dec 10, 2015 at 06:05:30PM +0800, Mengdong Lin wrote:
>> On 12/10/2015 04:38 AM, Mark Brown wrote:
>
>>> OK, but I do think that's something we *should* be doing as part of the
>>> overall move of CODECs to components and it's something that having this
>>> change implies we should be doing as an immediate thing since it's the
>>> more obvious direct use of the code (as Lars said in reply to the early
>>> draft you posted IIRC).
>
>> My early draft didn't use the aux components, so I'm not sure where to find
>> Lars's comments on this idea.
>
> He replied to some thing you posted by mistake and immediately
> retracted.  Can't remember the subject, sorry.

Thanks, I found his comments.

>
>> Please check if my understanding is right?
>
>> I guess you want me to replace the "aux_dev" array from the struct
>> snd_soc_card, by an "aux_components" array. And we may
>> replace soc_bind_aux_dev() by soc_find_components(),
>> replace soc_probe/remove_aux_dev() by soc_probe/remove_components.
>> Probably soc_find/prove/remove_components need some adjustment for the the
>> aux devices (DAIless codecs).
>
>> And device driver of the these aux_dev need to use
>> snd_soc_register_component() to make it as a component.
>
> Yeah, pretty much.  I think we'll have a period where we support both
> though as any CODEC *could* be used in this way and we're not ready for
> that yet.
>
> Let me have a look at converting some of the drivers over the weekend.
>

I still have some basic questions:

1. What are the typical usages for aux_dev?
    For CODEC<->CODEC link or external headset detection chip?

    In samsung/neo1973_wm8753.c, the aux_dev "dfbmcs320" is to involve 
the BT sco codec. And this codec provides dai "bt-sco-pcm" for voice via 
BT. This seems to be the codec-codec link case, the CODEC can have DAIs.


    And this seems to be the external headset chip case (DAIless):
    In rockchip/rockchip_max98090.c, the aux_devs
static struct snd_soc_aux_dev rk_98090_headset_dev = {
	.name = "Headset Chip",
	.init = rk_98090_headset_init,
};
   But how can ASoC find the right component registered by 
codecs/ts3a227e.c? This aux device does not give a codec node or name.

   Any other typical usage cases?

2. Why we need the rtd array 'rtd_aux' for the aux_devs?
    If the codec has DAIs and used by a DAI link, the ASoC will create a 
rtd for the link.

Thanks
Mengdong










ts3a227e.c

Thanks
Mengdong

  reply	other threads:[~2015-12-15  7:50 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-02  6:08 [PATCH 0/5] ASoC: Allow topology to create DAI links mengdong.lin
2015-12-02  6:11 ` [PATCH 1/5] ASoC: Implement DAI links in a list & define API to add/remove a link mengdong.lin
2015-12-08 18:03   ` Mark Brown
2015-12-08 19:11   ` Applied "ASoC: Implement DAI links in a list & define API to add/remove a link" to the asoc tree Mark Brown
2015-12-02  6:11 ` [PATCH 2/5] ASoC: Define add/remove_dai_link ops for a soc card mengdong.lin
2015-12-08 19:11   ` Applied "ASoC: Define add/remove_dai_link ops for a soc card" to the asoc tree Mark Brown
2015-12-02  6:11 ` [PATCH 3/5] ASoC: soc_bind_dai_link() directly returns success for a bound DAI link mengdong.lin
2015-12-02  6:11 ` [PATCH 4/5] ASoC: Bind new DAI links after probing components mengdong.lin
2015-12-02  6:11 ` [PATCH 5/5] ASoC: The soc card can have auxiliary components mengdong.lin
2015-12-08 18:58   ` Mark Brown
2015-12-09  9:09     ` Mengdong Lin
2015-12-09 20:38       ` Mark Brown
2015-12-10 10:05         ` Mengdong Lin
2015-12-11 20:22           ` Mark Brown
2015-12-15  8:06             ` Mengdong Lin [this message]
2015-12-15 11:23               ` Mark Brown
2015-12-16  8:33                 ` Mengdong Lin
2015-12-18  9:35                   ` Mark Brown
2015-12-22  8:15                   ` Can we remove the rtd_aux for the aux_devs? Mengdong Lin
2015-12-22 23:56                     ` 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=566FC9F6.8050107@linux.intel.com \
    --to=mengdong.lin@linux.intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=jeeja.kp@intel.com \
    --cc=liam.r.girdwood@linux.intel.com \
    --cc=mengdong.lin@intel.com \
    --cc=subhransu.s.prusty@intel.com \
    --cc=vinod.koul@intel.com \
    /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).