ASoC: SOF: control: Add access field in struct snd_sof_control
authorRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Mon, 27 Sep 2021 12:05:07 +0000 (15:05 +0300)
committerMark Brown <broonie@kernel.org>
Fri, 1 Oct 2021 19:48:21 +0000 (20:48 +0100)
Add a new field to save the access setting for all controls
in struct snd_sof_control. This will be used to ensure that
only widgets belonging to static pipelines have volatile
controls.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20210927120517.20505-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/sof-audio.h
sound/soc/sof/topology.c

index 9a8d005e75a0742c7d169e7924bb3a16c98a04e8..78a4a0c90a29706fcf45a5af8657a77b1483d780 100644 (file)
@@ -66,6 +66,7 @@ struct snd_sof_control {
        int min_volume_step; /* min volume step for volume_table */
        int max_volume_step; /* max volume step for volume_table */
        int num_channels;
+       unsigned int access;
        u32 readback_offset; /* offset to mmapped data if used */
        struct sof_ipc_ctrl_data *control_data;
        u32 size;       /* cdata size */
index 96b8791f7cc1eebf705c88ffd629340e63ae3569..d8f7b1edefc357375e13b5970625be438c67f1e6 100644 (file)
@@ -1250,6 +1250,7 @@ static int sof_control_load(struct snd_soc_component *scomp, int index,
                return -ENOMEM;
 
        scontrol->scomp = scomp;
+       scontrol->access = kc->access;
 
        switch (le32_to_cpu(hdr->ops.info)) {
        case SND_SOC_TPLG_CTL_VOLSW: