Re: [PATCH] ASoC: imx-audmix: register the card on a proper dev
From: Daniel Baluta
Date: Tue Aug 27 2019 - 03:44:25 EST
On Tue, 2019-08-27 at 11:55 -0400, Shengjiu Wang wrote:
> This platform device is registered from "fsl_audmix", which is
> its parent device. If use pdev->dev.parent for the priv->card.dev,
> the value set by dev_set_drvdata in parent device will be covered
> by the value in child device.
>
> Fixes: b86ef5367761 ("ASoC: fsl: Add Audio Mixer machine driver")
> Signed-off-by: Viorel Suman <viorel.suman@xxxxxxx>
> Signed-off-by: Shengjiu Wang <shengjiu.wang@xxxxxxx>
Reviewed-by: Daniel Baluta <daniel.baluta@xxxxxxx>
Thanks Shengjiu for the fix!
> ---
> sound/soc/fsl/imx-audmix.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/fsl/imx-audmix.c b/sound/soc/fsl/imx-audmix.c
> index 9e1cb18859ce..71590ca6394b 100644
> --- a/sound/soc/fsl/imx-audmix.c
> +++ b/sound/soc/fsl/imx-audmix.c
> @@ -325,14 +325,14 @@ static int imx_audmix_probe(struct
> platform_device *pdev)
> priv->card.num_configs = priv->num_dai_conf;
> priv->card.dapm_routes = priv->dapm_routes;
> priv->card.num_dapm_routes = priv->num_dapm_routes;
> - priv->card.dev = pdev->dev.parent;
> + priv->card.dev = &pdev->dev;
> priv->card.owner = THIS_MODULE;
> priv->card.name = "imx-audmix";
>
> platform_set_drvdata(pdev, &priv->card);
> snd_soc_card_set_drvdata(&priv->card, priv);
>
> - ret = devm_snd_soc_register_card(pdev->dev.parent, &priv-
> >card);
> + ret = devm_snd_soc_register_card(&pdev->dev, &priv->card);
> if (ret) {
> dev_err(&pdev->dev, "snd_soc_register_card failed\n");
> return ret;