From 8e1699448eaef8d90f884c1a8b2eda967c76ca62 Mon Sep 17 00:00:00 2001 From: Piotr Nakraszewicz Date: Wed, 29 Feb 2012 15:15:35 +0100 Subject: cw1200: Do not set bssid filter when in p2p mode When acting as p2p client being connected to p2p GO, in order to receive frames from a different p2p device (such as GO negotiation request) turn off bssid filter. WARNING: This patch can only be used with FW WSM371 and its successors. In that FW version even with bssid filter turned off, device will block most of the frames from outside the BSS and not pass them to the host. If using FW WSM373 and its successors this patch will be causing high power consumption in p2p mode. ST-Ericsson ID: 409603 ST-Ericsson FOSS-OUT ID: NA Signed-off-by: Piotr Nakraszewicz Change-Id: Icbcd6c57f8c646f56c41b174c79abb45f7118d15 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/46739 Reviewed-by: QABUILD Tested-by: Piotr NAKRASZEWICZ Reviewed-by: Bartosz MARKOWSKI --- drivers/staging/cw1200/sta.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/staging/cw1200/sta.c b/drivers/staging/cw1200/sta.c index 2d2392f7a75..edce5b436cf 100644 --- a/drivers/staging/cw1200/sta.c +++ b/drivers/staging/cw1200/sta.c @@ -466,6 +466,18 @@ void cw1200_update_filtering(struct cw1200_common *priv) else if (priv->join_status == CW1200_JOIN_STATUS_MONITOR) bssid_filtering = false; + /* + * When acting as p2p client being connected to p2p GO, in order to + * receive frames from a different p2p device, turn off bssid filter. + * + * WARNING: FW dependency! + * This can only be used with FW WSM371 and its successors. + * In that FW version even with bssid filter turned off, + * device will block most of the unwanted frames. + */ + if (priv->vif->p2p) + bssid_filtering = false; + ret = wsm_set_rx_filter(priv, &priv->rx_filter); if (!ret) ret = wsm_set_beacon_filter_table(priv, &priv->bf_table); -- cgit v1.2.3