ASoC: Intel: remove device_properties for Atom boards
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Fri, 13 Aug 2021 15:11:15 +0000 (10:11 -0500)
committerMark Brown <broonie@kernel.org>
Fri, 13 Aug 2021 15:50:42 +0000 (16:50 +0100)
Prepare the transition to the software node API by removing device
properties in the probe error handling and .remove callback.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210813151116.23931-8-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/bytcht_es8316.c
sound/soc/intel/boards/bytcr_rt5640.c
sound/soc/intel/boards/bytcr_rt5651.c

index d2e0a0b441fc94419213e30dc66690bf2a08caf6..f3919baaad08f8aa5749a56eab32fe5b7a67f90f 100644 (file)
@@ -615,6 +615,7 @@ static int snd_byt_cht_es8316_mc_probe(struct platform_device *pdev)
        return 0;
 
 err_put_codec:
+       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;
 }
index 4215bbafd2f7eeba7c5981ebca398c267a53436d..41fd56d42103ffadbbe36668aee8ee314d4d1690 100644 (file)
@@ -1481,7 +1481,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);
 
@@ -1584,6 +1584,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;
 }
@@ -1593,6 +1595,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;
 }
index c70dd729cdbb7582500c4e1d67842de4d636d85c..cc1505e53b4f3e0509e5f2e3d40e1ca11a2886cb 100644 (file)
@@ -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;
 }