wl12xx: prevent sched_scan when not idle or not in station mode

The current firmware only supports scheduled scan in station mode and
when idle.  To prevent the firmware from crashing, return -EOPNOTSUPP
when sched_scan start is called in an invalid state.

Signed-off-by: Luciano Coelho <coelho@ti.com>
This commit is contained in:
Luciano Coelho 2011-05-12 17:07:55 +03:00
parent d3eff81de6
commit 683c002447

View File

@ -505,6 +505,12 @@ int wl1271_scan_sched_scan_start(struct wl1271 *wl)
wl1271_debug(DEBUG_CMD, "cmd periodic scan start"); wl1271_debug(DEBUG_CMD, "cmd periodic scan start");
if (wl->bss_type != BSS_TYPE_STA_BSS)
return -EOPNOTSUPP;
if (!test_bit(WL1271_FLAG_IDLE, &wl->flags))
return -EBUSY;
start = kzalloc(sizeof(*start), GFP_KERNEL); start = kzalloc(sizeof(*start), GFP_KERNEL);
if (!start) if (!start)
return -ENOMEM; return -ENOMEM;