From 274034cd12fea30572afca5880a4bf7fdde6cc74 Mon Sep 17 00:00:00 2001 From: Rajeev Kumar Date: Mon, 23 Nov 2015 11:28:58 -0800 Subject: [PATCH] qcacld-3.0: Do not allow NoA setting in non P2P GO mode Propagation from qcacld-2.0 to qcacld-3.0 - FW asserts after receiving P2P NOA parameter in non P2P GO mode - Add P2P GO mode check in set NOA IOCTL and do not allow this command in non P2P GO modes Change-Id: Ie786dcf33fc50eacadb407d74ae5638da68cf0d2 CRs-Fixed: 919889 --- core/hdd/src/wlan_hdd_wext.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/hdd/src/wlan_hdd_wext.c b/core/hdd/src/wlan_hdd_wext.c index 064dbdceb654..245519f8501d 100644 --- a/core/hdd/src/wlan_hdd_wext.c +++ b/core/hdd/src/wlan_hdd_wext.c @@ -7664,6 +7664,14 @@ static int __iw_set_var_ints_getnone(struct net_device *dev, { p2p_app_setP2pPs_t p2pNoA; + if (pAdapter->device_mode != WLAN_HDD_P2P_GO) { + hdd_err("Setting NoA is not allowed in Device mode %s(%d)", + hdd_device_mode_to_string( + pAdapter->device_mode), + pAdapter->device_mode); + return -EINVAL; + } + p2pNoA.opp_ps = apps_args[0]; p2pNoA.ctWindow = apps_args[1]; p2pNoA.duration = apps_args[2];