Commit c4f5c852 authored by Kalle Valo's avatar Kalle Valo Committed by John W. Linville

wl12xx: fix error handling in wl12xx_probe()

Resources were not freed properly in some cases.
Signed-off-by: default avatarKalle Valo <kalle.valo@nokia.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 1d3b8130
...@@ -1274,13 +1274,15 @@ static int __devinit wl12xx_probe(struct spi_device *spi) ...@@ -1274,13 +1274,15 @@ static int __devinit wl12xx_probe(struct spi_device *spi)
wl->set_power = pdata->set_power; wl->set_power = pdata->set_power;
if (!wl->set_power) { if (!wl->set_power) {
wl12xx_error("set power function missing in platform data"); wl12xx_error("set power function missing in platform data");
return -ENODEV; ret = -ENODEV;
goto out_free;
} }
wl->irq = spi->irq; wl->irq = spi->irq;
if (wl->irq < 0) { if (wl->irq < 0) {
wl12xx_error("irq missing in platform data"); wl12xx_error("irq missing in platform data");
return -ENODEV; ret = -ENODEV;
goto out_free;
} }
ret = request_irq(wl->irq, wl12xx_irq, 0, DRIVER_NAME, wl); ret = request_irq(wl->irq, wl12xx_irq, 0, DRIVER_NAME, wl);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment