Thanks for your comments, Hardik! So we'll no longer let topology to create BE DAIs.
And how about the BE DAI links? They are also physical hardware things. Could we also let topology configure those that can be changed by SW on the BE link, instead of letting topology create the BE links?
Thanks Mengdong
On 09/20/2016 01:09 AM, Shah, Hardik T wrote:
Regards, Hardik Shah
-----Original Message----- From: Mark Brown [mailto:broonie@kernel.org]
On Fri, Sep 09, 2016 at 07:43:11PM +0800, mengdong.lin@linux.intel.com wrote:
From: Mengdong Lin mengdong.lin@linux.intel.com
Topology will check with ASoC if a BE DAI already exists by checking its name. If the BE DAI doesn't exist, topology will create a new one and the dai_load ops will be called for device specific init.
I still remain fundamentally unconvinced that this is a good or scalable idea and that it makes sense to have it be part of the standard topology ABI. We are not going to download a DSP firmware that creates a new physical link in the system so having the topology be the thing creating those physical links seems wrong.
Hi Mark, You are right, physical links will always remain same.
create the HDA DAIs. Ideally, the driver should query BIOS to get the physical pin output types and connections to peripherals for a specific platform, but unfortunately BIOS sometimes does not have accurate info, so there is still hard code of BE DAI & DAI links in driver. To share a
Having the connections to the DSP specified in the toplogy is of course sensible but fundamentally this is always going to be choosing from a list of physical DAIs that we already know about and potential connections for those that are also already known. If the driver wants to do something in response to a DAI being hooked up into the topology (which seems to be the actual goal here) that would be sensible but attempting to create physical hardware in a topology does not seem like a good idea as a generic feature.
We were trying to optimize here by creating DAIs for only those physical links which are getting used on the platform. Intel hardware supports multiple physical links like I2S, HDA, HDMI and DMICs and with that BE DAIs can increase up to 15-20, and very few of them may be really used in most of the platforms. But if you think we should create BE DAIs for all physical links, we will go ahead with that approach. _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel