[PATCH 2/3] ASoC: topology: Allow TLV control to be either read or write
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Tue Jan 11 17:48:23 CET 2022
On 1/11/22 1:05 PM, Amadeusz Sławiński wrote:
> There is no reason to force readwrite access on TLV controls. It can be
> either read, write or both. This is further evidenced in code where it
> performs following checks:
> if ((k->access & SNDRV_CTL_ELEM_ACCESS_TLV_READ) && !sbe->get)
> return -EINVAL;
> if ((k->access & SNDRV_CTL_ELEM_ACCESS_TLV_WRITE) && !sbe->put)
> return -EINVAL;
>
> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski at linux.intel.com>
> Reviewed-by: Cezary Rojewski <cezary.rojewski at intel.com>
Should there be a Fixes tag
Fixes: 1a3232d2f61d ("ASoC: topology: Add support for TLV bytes controls")
?
> ---
> sound/soc/soc-topology.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c
> index e0f72ddd72c1..9d24184f85f9 100644
> --- a/sound/soc/soc-topology.c
> +++ b/sound/soc/soc-topology.c
> @@ -512,7 +512,8 @@ static int soc_tplg_kcontrol_bind_io(struct snd_soc_tplg_ctl_hdr *hdr,
>
> if (le32_to_cpu(hdr->ops.info) == SND_SOC_TPLG_CTL_BYTES
> && k->iface & SNDRV_CTL_ELEM_IFACE_MIXER
> - && k->access & SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE
> + && (k->access & SNDRV_CTL_ELEM_ACCESS_TLV_READ
> + || k->access & SNDRV_CTL_ELEM_ACCESS_TLV_WRITE)
> && k->access & SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK) {
> struct soc_bytes_ext *sbe;
> struct snd_soc_tplg_bytes_control *be;
>
More information about the Alsa-devel
mailing list