aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMengdong Lin <mengdong.lin@intel.com>2015-08-05 09:41:14 -0400
committerMark Brown <broonie@kernel.org>2015-08-06 07:34:46 -0400
commitcb88498b36ab01cbe3a0d95cd097e4afdff4c6fd (patch)
tree85df2fe064fd8b1e4a97ff4cf5a4ba93a8dbcb6c
parent28a87eebcad40101b1b273cbd4f2a02c104f9367 (diff)
ASoC: topology: Add ops support to byte controls UAPI
Add UAPI support for setting byte control ops. Rename the ops structure to be more generic so it can be sued by other objects too. Signed-off-by: Mengdong Lin <mengdong.lin@intel.com> Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--include/uapi/sound/asoc.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/uapi/sound/asoc.h b/include/uapi/sound/asoc.h
index aa3a79b42438..d5281ac8e5eb 100644
--- a/include/uapi/sound/asoc.h
+++ b/include/uapi/sound/asoc.h
@@ -163,9 +163,11 @@ struct snd_soc_tplg_channel {
163} __attribute__((packed)); 163} __attribute__((packed));
164 164
165/* 165/*
166 * Kcontrol Operations IDs 166 * Genericl Operations IDs, for binding Kcontrol or Bytes ext ops
167 * Kcontrol ops need get/put/info.
168 * Bytes ext ops need get/put.
167 */ 169 */
168struct snd_soc_tplg_kcontrol_ops_id { 170struct snd_soc_tplg_io_ops {
169 __le32 get; 171 __le32 get;
170 __le32 put; 172 __le32 put;
171 __le32 info; 173 __le32 info;
@@ -179,7 +181,7 @@ struct snd_soc_tplg_ctl_hdr {
179 __le32 type; 181 __le32 type;
180 char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN]; 182 char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
181 __le32 access; 183 __le32 access;
182 struct snd_soc_tplg_kcontrol_ops_id ops; 184 struct snd_soc_tplg_io_ops ops;
183 struct snd_soc_tplg_ctl_tlv tlv; 185 struct snd_soc_tplg_ctl_tlv tlv;
184} __attribute__((packed)); 186} __attribute__((packed));
185 187
@@ -311,6 +313,7 @@ struct snd_soc_tplg_bytes_control {
311 __le32 mask; 313 __le32 mask;
312 __le32 base; 314 __le32 base;
313 __le32 num_regs; 315 __le32 num_regs;
316 struct snd_soc_tplg_io_ops ext_ops;
314 struct snd_soc_tplg_private priv; 317 struct snd_soc_tplg_private priv;
315} __attribute__((packed)); 318} __attribute__((packed));
316 319