@@ -615,6 +615,7 @@ static int snd_byt_cht_es8316_mc_probe(struct platform_device *pdev)
return 0;
err:
+ device_remove_properties(priv->codec_dev);
put_device(priv->codec_dev);
return ret;
}
@@ -625,6 +626,7 @@ static int snd_byt_cht_es8316_mc_remove(struct platform_device *pdev)
struct byt_cht_es8316_private *priv = snd_soc_card_get_drvdata(card);
gpiod_put(priv->speaker_en_gpio);
+ device_remove_properties(priv->codec_dev);
put_device(priv->codec_dev);
return 0;
}
@@ -1483,7 +1483,7 @@ static int snd_byt_rt5640_mc_probe(struct platform_device *pdev)
/* Must be called before register_card, also see declaration comment. */
ret_val = byt_rt5640_add_codec_device_props(codec_dev, priv);
if (ret_val)
- goto err;
+ goto err_device;
log_quirks(&pdev->dev);
@@ -1586,6 +1586,8 @@ static int snd_byt_rt5640_mc_probe(struct platform_device *pdev)
return ret_val;
err:
+ device_remove_properties(priv->codec_dev);
+err_device:
put_device(priv->codec_dev);
return ret_val;
}
@@ -1595,6 +1597,7 @@ static int snd_byt_rt5640_mc_remove(struct platform_device *pdev)
struct snd_soc_card *card = platform_get_drvdata(pdev);
struct byt_rt5640_private *priv = snd_soc_card_get_drvdata(card);
+ device_remove_properties(priv->codec_dev);
put_device(priv->codec_dev);
return 0;
}
@@ -997,7 +997,7 @@ static int snd_byt_rt5651_mc_probe(struct platform_device *pdev)
/* Must be called before register_card, also see declaration comment. */
ret_val = byt_rt5651_add_codec_device_props(codec_dev);
if (ret_val)
- goto err;
+ goto err_device;
/* Cherry Trail devices use an external amplifier enable gpio */
if (soc_intel_is_cht() && !byt_rt5651_gpios)
@@ -1125,6 +1125,8 @@ static int snd_byt_rt5651_mc_probe(struct platform_device *pdev)
return ret_val;
err:
+ device_remove_properties(priv->codec_dev);
+err_device:
put_device(priv->codec_dev);
return ret_val;
}
@@ -1134,6 +1136,7 @@ static int snd_byt_rt5651_mc_remove(struct platform_device *pdev)
struct snd_soc_card *card = platform_get_drvdata(pdev);
struct byt_rt5651_private *priv = snd_soc_card_get_drvdata(card);
+ device_remove_properties(priv->codec_dev);
put_device(priv->codec_dev);
return 0;
}