diff options
author | Mengdong Lin <mengdong.lin@linux.intel.com> | 2016-11-04 07:05:53 +0800 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2016-11-05 16:41:52 +0100 |
commit | 6945156a677abdc51318f214b0380199204ab6ba (patch) | |
tree | 88b7f6541c37c165b79a889139d4feccbbda0508 | |
parent | 3a5341e2ac8fe745b8791a04c36a21ae136024bd (diff) | |
download | alsa-lib-6945156a677abdc51318f214b0380199204ab6ba.tar.gz |
topology: ABI - Update stream caps and PCM objects to ABI v5
Here are the ABI updates for PCM (Front DAI & DAI link) objects:
- add sig_bits to stream caps.
- add flags and private data to PCM.
The kernel can handle the ABI update in a backward compatible way with
the patch "ASoC: topology: Make PCM backward compatible from ABI v4".
Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | include/sound/asoc.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/sound/asoc.h b/include/sound/asoc.h index abe49c59..1f2c230c 100644 --- a/include/sound/asoc.h +++ b/include/sound/asoc.h @@ -115,6 +115,11 @@ #define SND_SOC_TPLG_TUPLE_TYPE_WORD 4 #define SND_SOC_TPLG_TUPLE_TYPE_SHORT 5 +/* DAI link flags */ +#define SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_RATES (1 << 0) +#define SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_CHANNELS (1 << 1) +#define SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_SAMPLEBITS (1 << 2) + /* * Block Header. * This header precedes all object and object arrays below. @@ -242,6 +247,7 @@ struct snd_soc_tplg_stream_caps { __le32 period_size_max; /* max period size bytes */ __le32 buffer_size_min; /* min buffer size bytes */ __le32 buffer_size_max; /* max buffer size bytes */ + __le32 sig_bits; /* number of bits of content */ } __attribute__((packed)); /* @@ -422,6 +428,9 @@ struct snd_soc_tplg_pcm { struct snd_soc_tplg_stream stream[SND_SOC_TPLG_STREAM_CONFIG_MAX]; /* for DAI link */ __le32 num_streams; /* number of streams */ struct snd_soc_tplg_stream_caps caps[2]; /* playback and capture for DAI */ + __le32 flag_mask; /* bitmask of flags to configure */ + __le32 flags; /* SND_SOC_TPLG_LNK_FLGBIT_* flag value */ + struct snd_soc_tplg_private priv; } __attribute__((packed)); |