[alsa-devel] [PATCH 1/2] ASoC: hdmi-codec: Allow drivers to restrict sample sizes.

Jyri Sarha jsarha at ti.com
Thu Jul 27 12:34:30 CEST 2017


On 07/17/17 17:02, srinivas.kandagatla at linaro.org wrote:
> From: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
> 
> Currently hdmi client drivers does have means to limit the
> sample sizes that it can only support. Having formats parameter
> option would solve this.
> 
> This issue was noticed on DB410c board when adv7511 hdmi codec driver
> failed to play a 32 bits audio samples, as it does not support them.
> 
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>

I left this feature out because I did not need it. All the HDMI encoders
I have used are able to take all the i2s formats I am able to send.

You should probably also update the comment above I2S_FORMATS
definition. Othewise:

Reviewed-by: Jyri Sarha <jsarha at ti.com>


> ---
>  include/sound/hdmi-codec.h    | 1 +
>  sound/soc/codecs/hdmi-codec.c | 3 +++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/include/sound/hdmi-codec.h b/include/sound/hdmi-codec.h
> index 9483c55f871b..89fc4cce5785 100644
> --- a/include/sound/hdmi-codec.h
> +++ b/include/sound/hdmi-codec.h
> @@ -104,6 +104,7 @@ struct hdmi_codec_pdata {
>  	uint i2s:1;
>  	uint spdif:1;
>  	int max_i2s_channels;
> +	u64 formats;
>  	void *data;
>  };
>  
> diff --git a/sound/soc/codecs/hdmi-codec.c b/sound/soc/codecs/hdmi-codec.c
> index 22ed0dc88f0a..1ece73f4be92 100644
> --- a/sound/soc/codecs/hdmi-codec.c
> +++ b/sound/soc/codecs/hdmi-codec.c
> @@ -780,6 +780,9 @@ static int hdmi_codec_probe(struct platform_device *pdev)
>  		hcp->daidrv[i] = hdmi_i2s_dai;
>  		hcp->daidrv[i].playback.channels_max =
>  			hcd->max_i2s_channels;
> +
> +		if (hcd->formats)
> +			hcp->daidrv[i].playback.formats = hcd->formats;
>  		i++;
>  	}
>  
> 



More information about the Alsa-devel mailing list