mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
ASoC: codecs: wm0010: Fix error handling path in wm0010_spi_probe()
Free some resources in the error handling path of the probe, as already done in the remove function. Fixes:e3523e0186("ASoC: wm0010: Add initial wm0010 DSP driver") Fixes:fd8b965744("ASoC: wm0010: Clear IRQ as wake source and include missing header") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://patch.msgid.link/5139ba1ab8c4c157ce04e56096a0f54a1683195c.1741549792.git.christophe.jaillet@wanadoo.fr Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
committed by
Mark Brown
parent
247fba1341
commit
ed92bc5264
@@ -920,7 +920,7 @@ static int wm0010_spi_probe(struct spi_device *spi)
|
||||
if (ret) {
|
||||
dev_err(wm0010->dev, "Failed to set IRQ %d as wake source: %d\n",
|
||||
irq, ret);
|
||||
return ret;
|
||||
goto free_irq;
|
||||
}
|
||||
|
||||
if (spi->max_speed_hz)
|
||||
@@ -932,9 +932,18 @@ static int wm0010_spi_probe(struct spi_device *spi)
|
||||
&soc_component_dev_wm0010, wm0010_dai,
|
||||
ARRAY_SIZE(wm0010_dai));
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
goto disable_irq_wake;
|
||||
|
||||
return 0;
|
||||
|
||||
disable_irq_wake:
|
||||
irq_set_irq_wake(wm0010->irq, 0);
|
||||
|
||||
free_irq:
|
||||
if (wm0010->irq)
|
||||
free_irq(wm0010->irq, wm0010);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void wm0010_spi_remove(struct spi_device *spi)
|
||||
|
||||
Reference in New Issue
Block a user