diff options
author | Fabio Estevam <fabio.estevam@freescale.com> | 2013-08-17 18:13:00 -0300 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-08-20 11:47:04 +0100 |
commit | 0783e648988a2ccef6eac9b1c376e7832e09cd94 (patch) | |
tree | 3312f0cae5972ddef3c9cc6c29873123f53b4ece /sound/soc/fsl | |
parent | 3c1c32d3765876b72570966c819fac4b8c646394 (diff) | |
download | linux-0783e648988a2ccef6eac9b1c376e7832e09cd94.tar.bz2 |
ASoC: fsl: fsl_ssi: Fix the order of resources removal
In fsl_ssi_remove() we need to remove the resources in the opposite order that
they were acquired in probe.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc/fsl')
-rw-r--r-- | sound/soc/fsl/fsl_ssi.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c index 0c072ff10875..3168998dcf1d 100644 --- a/sound/soc/fsl/fsl_ssi.c +++ b/sound/soc/fsl/fsl_ssi.c @@ -928,14 +928,14 @@ static int fsl_ssi_remove(struct platform_device *pdev) if (!ssi_private->new_binding) platform_device_unregister(ssi_private->pdev); - if (ssi_private->ssi_on_imx) { + if (ssi_private->ssi_on_imx) imx_pcm_dma_exit(pdev); - clk_disable_unprepare(ssi_private->clk); - } snd_soc_unregister_component(&pdev->dev); + dev_set_drvdata(&pdev->dev, NULL); device_remove_file(&pdev->dev, &ssi_private->dev_attr); + if (ssi_private->ssi_on_imx) + clk_disable_unprepare(ssi_private->clk); irq_dispose_mapping(ssi_private->irq); - dev_set_drvdata(&pdev->dev, NULL); return 0; } |