Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 49d7f6d8 authored by Teemu Paasikivi's avatar Teemu Paasikivi Committed by John W. Linville
Browse files

wl1271: Fixed unloading of the wl1271_sdio module



Fixed two bugs causing problems when unloding wl1271 module. First was
missing sdio_set_drvdata call from the probe function, second was order
of function calls in the remove function.

Signed-off-by: default avatarTeemu Paasikivi <ext-teemu.3.paasikivi@nokia.com>
Reviewed-by: default avatarJuuso Oikarinen <juuso.oikarinen@nokia.com>
Signed-off-by: default avatarJuuso Oikarinen <juuso.oikarinen@nokia.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 09a9c2b3
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -219,6 +219,8 @@ static int __devinit wl1271_probe(struct sdio_func *func,
		goto out_irq;

	sdio_claim_host(func);
	sdio_set_drvdata(func, wl);

	ret = sdio_enable_func(func);
	if (ret)
		goto out_release;
@@ -246,10 +248,11 @@ static void __devexit wl1271_remove(struct sdio_func *func)
{
	struct wl1271 *wl = sdio_get_drvdata(func);

	ieee80211_unregister_hw(wl->hw);

	sdio_claim_host(func);
	sdio_disable_func(func);
	sdio_release_host(func);
	ieee80211_unregister_hw(wl->hw);

	free_irq(wl->irq, wl);