Commit cb88498b authored by Mengdong Lin's avatar Mengdong Lin Committed by Mark Brown

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: default avatarMengdong Lin <mengdong.lin@intel.com>
Signed-off-by: default avatarLiam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 28a87eeb
...@@ -163,9 +163,11 @@ struct snd_soc_tplg_channel { ...@@ -163,9 +163,11 @@ struct snd_soc_tplg_channel {
} __attribute__((packed)); } __attribute__((packed));
/* /*
* Kcontrol Operations IDs * Genericl Operations IDs, for binding Kcontrol or Bytes ext ops
* Kcontrol ops need get/put/info.
* Bytes ext ops need get/put.
*/ */
struct snd_soc_tplg_kcontrol_ops_id { struct snd_soc_tplg_io_ops {
__le32 get; __le32 get;
__le32 put; __le32 put;
__le32 info; __le32 info;
...@@ -179,7 +181,7 @@ struct snd_soc_tplg_ctl_hdr { ...@@ -179,7 +181,7 @@ struct snd_soc_tplg_ctl_hdr {
__le32 type; __le32 type;
char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN]; char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
__le32 access; __le32 access;
struct snd_soc_tplg_kcontrol_ops_id ops; struct snd_soc_tplg_io_ops ops;
struct snd_soc_tplg_ctl_tlv tlv; struct snd_soc_tplg_ctl_tlv tlv;
} __attribute__((packed)); } __attribute__((packed));
...@@ -311,6 +313,7 @@ struct snd_soc_tplg_bytes_control { ...@@ -311,6 +313,7 @@ struct snd_soc_tplg_bytes_control {
__le32 mask; __le32 mask;
__le32 base; __le32 base;
__le32 num_regs; __le32 num_regs;
struct snd_soc_tplg_io_ops ext_ops;
struct snd_soc_tplg_private priv; struct snd_soc_tplg_private priv;
} __attribute__((packed)); } __attribute__((packed));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment