topology: Parse and build private data for PCM

Users can define private for PCM (FE DAI & DAI links) elements by both
text conf file and C API:

- Text conf file may define multiple data blocks for a PCM and they will
  be merged in building phase;

- Add private data to C API template of PCM object.

Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Mengdong Lin 2016-11-04 07:08:12 +08:00 committed by Takashi Iwai
parent e4237a250d
commit 4136d98606
2 changed files with 53 additions and 2 deletions

View file

@ -612,6 +612,8 @@ extern "C" {
* symmetric_rates "true"
* symmetric_channels "true"
* symmetric_sample_bits "false"
*
* data "name" # optional private data
* }
* </pre>
*
@ -901,6 +903,7 @@ struct snd_tplg_pcm_template {
struct snd_tplg_stream_caps_template *caps[2]; /*!< playback & capture for DAI */
unsigned int flag_mask; /*!< bitmask of flags to configure */
unsigned int flags; /*!< flag value SND_SOC_TPLG_LNK_FLGBIT_* */
struct snd_soc_tplg_private *priv; /*!< private data */
int num_streams; /*!< number of supported configs */
struct snd_tplg_stream_template stream[0]; /*!< supported configs */
};