소스 검색

qcacld-3.0: Hold wake lock for SAP client disconnect notification

Hold wake lock in driver for SAP client disconnect notification to
user space inorder to avoid hostapd and driver going out of sync.

Change-Id: If81cf836b8fc047731735aa28831d1efa2f4e7b2
CRs-Fixed: 2084282
Rajeev Kumar 7 년 전
부모
커밋
f98a5cc3f8
2개의 변경된 파일8개의 추가작업 그리고 0개의 파일을 삭제
  1. 3 0
      core/hdd/inc/wlan_hdd_main.h
  2. 5 0
      core/hdd/src/wlan_hdd_hostapd.c

+ 3 - 0
core/hdd/inc/wlan_hdd_main.h

@@ -262,6 +262,9 @@
 #define WLAN_HDD_QOS_MAP_CONFIGURE 4
 #define HDD_SAP_WAKE_LOCK_DURATION 10000        /* in msecs */
 
+/* SAP client disconnect wake lock duration in milli seconds */
+#define HDD_SAP_CLIENT_DISCONNECT_WAKE_LOCK_DURATION (1000)
+
 #if defined(CONFIG_HL_SUPPORT)
 #define HDD_MOD_EXIT_SSR_MAX_RETRIES 200
 #else

+ 5 - 0
core/hdd/src/wlan_hdd_hostapd.c

@@ -1825,6 +1825,11 @@ QDF_STATUS hdd_hostapd_sap_event_cb(tpSap_Event pSapEvent,
 		wlan_hdd_auto_shutdown_enable(pHddCtx, true);
 #endif
 
+		cds_host_diag_log_work(&pHddCtx->sap_wake_lock,
+				       HDD_SAP_WAKE_LOCK_DURATION,
+				       WIFI_POWER_EVENT_WAKELOCK_SAP);
+		qdf_wake_lock_timeout_acquire(&pHddCtx->sap_wake_lock,
+			 HDD_SAP_CLIENT_DISCONNECT_WAKE_LOCK_DURATION);
 		cfg80211_del_sta(dev,
 				 (const u8 *)&pSapEvent->sapevt.
 				 sapStationDisassocCompleteEvent.staMac.