[alsa-devel] [PATCH v7 1/4] ASoC: Intel: add Skylake HDA platform driver

Mark Brown broonie at kernel.org
Wed Jul 8 20:56:55 CEST 2015


On Mon, Jul 06, 2015 at 08:54:23AM +0530, Vinod Koul wrote:

> +	dev_dbg(dai->dev, "%s: %s\n", __func__, dai->name);
> +	pm_runtime_get_sync(dai->dev);

Check the return value please, this can fail.

> +static int skl_get_format(struct snd_pcm_substream *substream,
> +		struct snd_soc_dai *dai)
> +{
> +	struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream);
> +	struct skl_dma_params *dma_params;
> +	int format_val = 0;
> +	struct snd_soc_dai *codec_dai = rtd->codec_dai;
> +
> +	dma_params  = (struct skl_dma_params *)
> +			snd_soc_dai_get_dma_data(codec_dai, substream);

Should be no need to cast away from void.

> +	if (substream->runtime->dma_area)
> +		memset(substream->runtime->dma_area, 0,
> +				params_buffer_bytes(params));

Why do we need to memset here?

> +	dma_params  = (struct skl_dma_params *)
> +			snd_soc_dai_get_dma_data(dai, substream);
> +
> +	pm_runtime_mark_last_busy(dai->dev);
> +	pm_runtime_put_autosuspend(dai->dev);
> +	kfree(dma_params);

We check elsewhere for dma_params being NULL, shouldn't we set it to be
NULL when we free?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20150708/5474f2b2/attachment.sig>


More information about the Alsa-devel mailing list