topology: ABI - Separate PCM & BE/CC link support and bump ABI version to 4

The struct snd_soc_tplg_pcm_dai is renamed to snd_soc_tplg_pcm.
This struct will now be used to handle data related to PCMs
(FE DAI & DAI links). It's not for BE, because BE DAI mappings will be
provided by ACPI/FDT data.

Remove the unused struct snd_soc_tplg_pcm_cfg_caps. We are using
snd_soc_tplg_stream and snd_soc_stream_caps instead.

Define the topology type for BE DAI link: SND_SOC_TPLG_TYPE_BACKEND_LINK.

Define struct snd_soc_tplg_link_config to configure BE & CC links.

Bump ABI version to 4.

Signed-off-by: Vedang Patel <vedang.patel@intel.com>
Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Vedang Patel 2015-11-05 20:48:30 +08:00 committed by Jaroslav Kysela
parent b73d50fc2b
commit 368e4f2a89
5 changed files with 134 additions and 287 deletions

View file

@ -108,11 +108,11 @@ struct tplg_elem {
struct snd_soc_tplg_enum_control *enum_ctrl;
struct snd_soc_tplg_bytes_control *bytes_ext;
struct snd_soc_tplg_dapm_widget *widget;
struct snd_soc_tplg_pcm_dai *pcm;
struct snd_soc_tplg_pcm_dai *be;
struct snd_soc_tplg_pcm_dai *cc;
struct snd_soc_tplg_pcm *pcm;
struct snd_soc_tplg_link_config *be;
struct snd_soc_tplg_link_config *cc;
struct snd_soc_tplg_dapm_graph_elem *route;
struct snd_soc_tplg_stream_config *stream_cfg;
struct snd_soc_tplg_stream *stream_cfg;
struct snd_soc_tplg_stream_caps *stream_caps;
/* these do not map to UAPI structs but are internal only */
@ -164,15 +164,9 @@ int tplg_parse_dapm_graph(snd_tplg_t *tplg, snd_config_t *cfg,
int tplg_parse_dapm_widget(snd_tplg_t *tplg,
snd_config_t *cfg, void *private ATTRIBUTE_UNUSED);
int tplg_parse_pcm_config(snd_tplg_t *tplg,
snd_config_t *cfg, void *private ATTRIBUTE_UNUSED);
int tplg_parse_pcm_caps(snd_tplg_t *tplg,
snd_config_t *cfg, void *private ATTRIBUTE_UNUSED);
int tplg_parse_pcm_cap_cfg(snd_tplg_t *tplg, snd_config_t *cfg,
void *private);
int tplg_parse_pcm(snd_tplg_t *tplg,
snd_config_t *cfg, void *private ATTRIBUTE_UNUSED);