diff options
author | Eliad Peller <eliad@wizery.com> | 2011-10-10 10:12:59 +0200 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2011-10-11 15:09:57 +0300 |
commit | 9eb599e9c62dcfd4efece1936c385381b366b684 (patch) | |
tree | b368f89a6282a3ce02197f4be9d22cae192a39df /drivers/net/wireless/wl12xx/debugfs.c | |
parent | 48e93e402ad19f570bae323b07911bdf6562af8e (diff) | |
download | lwn-9eb599e9c62dcfd4efece1936c385381b366b684.tar.gz lwn-9eb599e9c62dcfd4efece1936c385381b366b684.zip |
wl12xx: rearm rx streaming per vif
Currently, the rx streaming doesn't support multi-vif
(the actual wlvif is taken from wl->vif, and the management
is global).
Make the rx streaming timers/works per-vif, and pass the
the actual vif as param.
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/debugfs.c')
-rw-r--r-- | drivers/net/wireless/wl12xx/debugfs.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/wireless/wl12xx/debugfs.c b/drivers/net/wireless/wl12xx/debugfs.c index 669b081848e8..4abff8274ac3 100644 --- a/drivers/net/wireless/wl12xx/debugfs.c +++ b/drivers/net/wireless/wl12xx/debugfs.c @@ -505,6 +505,7 @@ static ssize_t rx_streaming_interval_write(struct file *file, size_t count, loff_t *ppos) { struct wl1271 *wl = file->private_data; + struct wl12xx_vif *wlvif; unsigned long value; int ret; @@ -528,7 +529,9 @@ static ssize_t rx_streaming_interval_write(struct file *file, if (ret < 0) goto out; - wl1271_recalc_rx_streaming(wl); + wl12xx_for_each_wlvif_sta(wl, wlvif) { + wl1271_recalc_rx_streaming(wl, wlvif); + } wl1271_ps_elp_sleep(wl); out: @@ -557,6 +560,7 @@ static ssize_t rx_streaming_always_write(struct file *file, size_t count, loff_t *ppos) { struct wl1271 *wl = file->private_data; + struct wl12xx_vif *wlvif; unsigned long value; int ret; @@ -580,7 +584,9 @@ static ssize_t rx_streaming_always_write(struct file *file, if (ret < 0) goto out; - wl1271_recalc_rx_streaming(wl); + wl12xx_for_each_wlvif_sta(wl, wlvif) { + wl1271_recalc_rx_streaming(wl, wlvif); + } wl1271_ps_elp_sleep(wl); out: |