All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev>
To: Jiangshan Yi <yijiangshan@kylinos.cn>,
	oder_chiou@realtek.com, lgirdwood@gmail.com, broonie@kernel.org,
	perex@perex.cz, tiwai@suse.com
Cc: shumingf@realtek.com, linux-sound@vger.kernel.org,
	linux-kernel@vger.kernel.org, 13667453960@163.com,
	stable@vger.kernel.org
Subject: Re: [PATCH] ASoC: codecs: rt712-sdca-dmic: fix uninitialized stream_config->type
Date: Mon, 14 Sep 2026 19:55:19 +0200	[thread overview]
Message-ID: <ac77dc6c-a216-42a3-a858-8fcfff65e364@linux.dev> (raw)
In-Reply-To: <20260914104712.379574-1-yijiangshan@kylinos.cn>

On 9/14/26 12:47, Jiangshan Yi wrote:
> stream_config is not initialized before being passed to
> sdw_stream_add_slave().  The type field may contain garbage and is
> later copied to stream->type by sdw_config_stream().
> 
> Zero-initialize stream_config so type defaults to SDW_STREAM_PCM.
> 
> While at it, use snd_sdw_params_to_config() helper instead of
> open-coding the same logic.
> 
> Fixes: 63a511284c9e ("ASoC: rt712-sdca: Add RT712 SDCA driver for Mic topology")
> Cc: stable@vger.kernel.org
> Signed-off-by: Jiangshan Yi <yijiangshan@kylinos.cn>
> ---
>  sound/soc/codecs/rt712-sdca-dmic.c | 14 +++++---------
>  1 file changed, 5 insertions(+), 9 deletions(-)

This change looks correct, and there are quite a few other codecs in the
same directory where the same change could be applied. Just look for
"struct sdw_stream_config stream_config;"

For this patch here's my

Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev>


> 
> diff --git a/sound/soc/codecs/rt712-sdca-dmic.c b/sound/soc/codecs/rt712-sdca-dmic.c
> index 8860d81134e7..a9f3aa4e143a 100644
> --- a/sound/soc/codecs/rt712-sdca-dmic.c
> +++ b/sound/soc/codecs/rt712-sdca-dmic.c
> @@ -13,6 +13,7 @@
>  #include <sound/core.h>
>  #include <sound/pcm.h>
>  #include <sound/pcm_params.h>
> +#include <sound/sdw.h>
>  #include <sound/tlv.h>
>  #include "rt712-sdca.h"
>  #include "rt712-sdca-dmic.h"
> @@ -632,10 +633,10 @@ static int rt712_sdca_dmic_hw_params(struct snd_pcm_substream *substream,
>  {
>  	struct snd_soc_component *component = dai->component;
>  	struct rt712_sdca_dmic_priv *rt712 = snd_soc_component_get_drvdata(component);
> -	struct sdw_stream_config stream_config;
> +	struct sdw_stream_config stream_config = {0};
>  	struct sdw_port_config port_config;
>  	struct sdw_stream_runtime *sdw_stream;
> -	int retval, num_channels;
> +	int retval;
>  	unsigned int sampling_rate;
> 
>  	dev_dbg(dai->dev, "%s %s", __func__, dai->name);
> @@ -647,13 +648,8 @@ static int rt712_sdca_dmic_hw_params(struct snd_pcm_substream *substream,
>  	if (!rt712->slave)
>  		return -EINVAL;
> 
> -	stream_config.frame_rate = params_rate(params);
> -	stream_config.ch_count = params_channels(params);
> -	stream_config.bps = snd_pcm_format_width(params_format(params));
> -	stream_config.direction = SDW_DATA_DIR_TX;
> -
> -	num_channels = params_channels(params);
> -	port_config.ch_mask = GENMASK(num_channels - 1, 0);
> +	/* SoundWire specific configuration */
> +	snd_sdw_params_to_config(substream, params, &stream_config, &port_config);
>  	port_config.num = 2;
> 
>  	retval = sdw_stream_add_slave(rt712->slave, &stream_config,
> --
> 2.25.1
> 
> 


  reply	other threads:[~2026-09-14 18:29 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-14 10:47 [PATCH] ASoC: codecs: rt712-sdca-dmic: fix uninitialized stream_config->type Jiangshan Yi
2026-09-14 17:55 ` Pierre-Louis Bossart [this message]
2026-09-14 19:04 ` Mark Brown
2026-09-16 19:06 ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ac77dc6c-a216-42a3-a858-8fcfff65e364@linux.dev \
    --to=pierre-louis.bossart@linux.dev \
    --cc=13667453960@163.com \
    --cc=broonie@kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=oder_chiou@realtek.com \
    --cc=perex@perex.cz \
    --cc=shumingf@realtek.com \
    --cc=stable@vger.kernel.org \
    --cc=tiwai@suse.com \
    --cc=yijiangshan@kylinos.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.