wl12xx: make WL1271_FLAG_RX_STREAMING_STARTED flag per-vif
This flag should be set per-vif, rather than globally. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
This commit is contained in:
parent
8181aecce9
commit
0744bdb60b
@ -514,9 +514,9 @@ static int wl1271_set_rx_streaming(struct wl1271 *wl, struct wl12xx_vif *wlvif,
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (enable)
|
if (enable)
|
||||||
set_bit(WL1271_FLAG_RX_STREAMING_STARTED, &wl->flags);
|
set_bit(WLVIF_FLAG_RX_STREAMING_STARTED, &wlvif->flags);
|
||||||
else
|
else
|
||||||
clear_bit(WL1271_FLAG_RX_STREAMING_STARTED, &wl->flags);
|
clear_bit(WLVIF_FLAG_RX_STREAMING_STARTED, &wlvif->flags);
|
||||||
out:
|
out:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -531,7 +531,7 @@ int wl1271_recalc_rx_streaming(struct wl1271 *wl, struct wl12xx_vif *wlvif)
|
|||||||
int period = wl->conf.rx_streaming.interval;
|
int period = wl->conf.rx_streaming.interval;
|
||||||
|
|
||||||
/* don't reconfigure if rx_streaming is disabled */
|
/* don't reconfigure if rx_streaming is disabled */
|
||||||
if (!test_bit(WL1271_FLAG_RX_STREAMING_STARTED, &wl->flags))
|
if (!test_bit(WLVIF_FLAG_RX_STREAMING_STARTED, &wlvif->flags))
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
/* reconfigure/disable according to new streaming_period */
|
/* reconfigure/disable according to new streaming_period */
|
||||||
@ -558,7 +558,7 @@ static void wl1271_rx_streaming_enable_work(struct work_struct *work)
|
|||||||
|
|
||||||
mutex_lock(&wl->mutex);
|
mutex_lock(&wl->mutex);
|
||||||
|
|
||||||
if (test_bit(WL1271_FLAG_RX_STREAMING_STARTED, &wl->flags) ||
|
if (test_bit(WLVIF_FLAG_RX_STREAMING_STARTED, &wlvif->flags) ||
|
||||||
!test_bit(WLVIF_FLAG_STA_ASSOCIATED, &wlvif->flags) ||
|
!test_bit(WLVIF_FLAG_STA_ASSOCIATED, &wlvif->flags) ||
|
||||||
(!wl->conf.rx_streaming.always &&
|
(!wl->conf.rx_streaming.always &&
|
||||||
!test_bit(WL1271_FLAG_SOFT_GEMINI, &wl->flags)))
|
!test_bit(WL1271_FLAG_SOFT_GEMINI, &wl->flags)))
|
||||||
@ -594,7 +594,7 @@ static void wl1271_rx_streaming_disable_work(struct work_struct *work)
|
|||||||
|
|
||||||
mutex_lock(&wl->mutex);
|
mutex_lock(&wl->mutex);
|
||||||
|
|
||||||
if (!test_bit(WL1271_FLAG_RX_STREAMING_STARTED, &wl->flags))
|
if (!test_bit(WLVIF_FLAG_RX_STREAMING_STARTED, &wlvif->flags))
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
ret = wl1271_ps_elp_wakeup(wl);
|
ret = wl1271_ps_elp_wakeup(wl);
|
||||||
|
@ -670,7 +670,7 @@ void wl12xx_rearm_rx_streaming(struct wl1271 *wl, unsigned long *active_hlids)
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
/* enable rx streaming */
|
/* enable rx streaming */
|
||||||
if (!test_bit(WL1271_FLAG_RX_STREAMING_STARTED, &wl->flags))
|
if (!test_bit(WLVIF_FLAG_RX_STREAMING_STARTED, &wlvif->flags))
|
||||||
ieee80211_queue_work(wl->hw,
|
ieee80211_queue_work(wl->hw,
|
||||||
&wlvif->rx_streaming_enable_work);
|
&wlvif->rx_streaming_enable_work);
|
||||||
|
|
||||||
|
@ -327,7 +327,6 @@ enum wl12xx_flags {
|
|||||||
WL1271_FLAG_SUSPENDED,
|
WL1271_FLAG_SUSPENDED,
|
||||||
WL1271_FLAG_PENDING_WORK,
|
WL1271_FLAG_PENDING_WORK,
|
||||||
WL1271_FLAG_SOFT_GEMINI,
|
WL1271_FLAG_SOFT_GEMINI,
|
||||||
WL1271_FLAG_RX_STREAMING_STARTED,
|
|
||||||
WL1271_FLAG_RECOVERY_IN_PROGRESS,
|
WL1271_FLAG_RECOVERY_IN_PROGRESS,
|
||||||
WL1271_FLAG_CS_PROGRESS,
|
WL1271_FLAG_CS_PROGRESS,
|
||||||
};
|
};
|
||||||
@ -339,6 +338,7 @@ enum wl12xx_vif_flags {
|
|||||||
WLVIF_FLAG_PSM,
|
WLVIF_FLAG_PSM,
|
||||||
WLVIF_FLAG_PSM_REQUESTED,
|
WLVIF_FLAG_PSM_REQUESTED,
|
||||||
WLVIF_FLAG_STA_STATE_SENT,
|
WLVIF_FLAG_STA_STATE_SENT,
|
||||||
|
WLVIF_FLAG_RX_STREAMING_STARTED,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct wl1271_link {
|
struct wl1271_link {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user