ASoC: rt5514-spi: Convert to use devm_* API

Use devm_* API to simplify the code.
This patch also fixes the return value in probe error paths.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Axel Lin 2016-07-14 16:57:05 +08:00 committed by Mark Brown
parent b63d4d13ac
commit e9802c5793

View File

@ -410,32 +410,20 @@ static int rt5514_spi_probe(struct spi_device *spi)
rt5514_spi = spi;
ret = snd_soc_register_platform(&spi->dev, &rt5514_spi_platform);
ret = devm_snd_soc_register_platform(&spi->dev, &rt5514_spi_platform);
if (ret < 0) {
dev_err(&spi->dev, "Failed to register platform.\n");
goto err_plat;
return ret;
}
ret = snd_soc_register_component(&spi->dev, &rt5514_spi_dai_component,
ret = devm_snd_soc_register_component(&spi->dev,
&rt5514_spi_dai_component,
&rt5514_spi_dai, 1);
if (ret < 0) {
dev_err(&spi->dev, "Failed to register component.\n");
goto err_comp;
return ret;
}
return 0;
err_comp:
snd_soc_unregister_platform(&spi->dev);
err_plat:
return 0;
}
static int rt5514_spi_remove(struct spi_device *spi)
{
snd_soc_unregister_component(&spi->dev);
snd_soc_unregister_platform(&spi->dev);
return 0;
}
@ -451,7 +439,6 @@ static struct spi_driver rt5514_spi_driver = {
.of_match_table = of_match_ptr(rt5514_of_match),
},
.probe = rt5514_spi_probe,
.remove = rt5514_spi_remove,
};
module_spi_driver(rt5514_spi_driver);