diff options
author | Arik Nemtsov <arik@wizery.com> | 2012-06-21 19:10:50 +0400 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2012-06-23 10:32:32 +0400 |
commit | c439a1ca3bdc58febf51a388a9930eeba361b410 (patch) | |
tree | 55c80a81c11606d2f9e5b77a8a0a99d44a0ec549 /drivers/net/wireless/ti/wlcore/rx.c | |
parent | ea0a3cf95ed8839ce6f11bf9a050e6333bfc27d6 (diff) | |
download | linux-c439a1ca3bdc58febf51a388a9930eeba361b410.tar.xz |
wlcore: check Rx-filter functions in the suspend path
Propagate some missing return values for Rx-filter related functions.
This and makes sure we always fail the suspend in case of SDIO errors.
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/ti/wlcore/rx.c')
-rw-r--r-- | drivers/net/wireless/ti/wlcore/rx.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/net/wireless/ti/wlcore/rx.c b/drivers/net/wireless/ti/wlcore/rx.c index f42b969c1de9..f55e2f9e7ac5 100644 --- a/drivers/net/wireless/ti/wlcore/rx.c +++ b/drivers/net/wireless/ti/wlcore/rx.c @@ -318,14 +318,19 @@ int wl1271_rx_filter_enable(struct wl1271 *wl, return 0; } -void wl1271_rx_filter_clear_all(struct wl1271 *wl) +int wl1271_rx_filter_clear_all(struct wl1271 *wl) { - int i; + int i, ret = 0; for (i = 0; i < WL1271_MAX_RX_FILTERS; i++) { if (!wl->rx_filter_enabled[i]) continue; - wl1271_rx_filter_enable(wl, i, 0, NULL); + ret = wl1271_rx_filter_enable(wl, i, 0, NULL); + if (ret) + goto out; } + +out: + return ret; } #endif /* CONFIG_PM */ |