Browse Source

qcacld-3.0: Set Powersave config to firmware after link switch

Currently after link switch powersave conifig is not sent to firmware
resulting in STA not entering BMPS.

Set the powersave config to firmware after link switch

Change-Id: I60864b03144900edac2861348375280507b9e25c
CRs-Fixed: 3680566
Arun Kumar Khandavalli 1 year ago
parent
commit
12bd9f4c4b
3 changed files with 20 additions and 10 deletions
  1. 16 0
      core/hdd/inc/wlan_hdd_power.h
  2. 3 0
      core/hdd/src/wlan_hdd_cm_connect.c
  3. 1 10
      core/hdd/src/wlan_hdd_power.c

+ 16 - 0
core/hdd/inc/wlan_hdd_power.h

@@ -362,6 +362,17 @@ void hdd_enable_ns_offload(struct hdd_adapter *adapter,
 void hdd_disable_ns_offload(struct hdd_adapter *adapter,
 			    struct wlan_objmgr_vdev *vdev,
 			    enum pmo_offload_trigger trigger);
+
+/**
+ * hdd_send_ps_config_to_fw() - Check user pwr save config set/reset PS
+ * @adapter: pointer to hdd adapter
+ *
+ * This function checks the power save configuration saved in MAC context
+ * and sends power save config to FW.
+ *
+ * Return: None
+ */
+void hdd_send_ps_config_to_fw(struct hdd_adapter *adapter);
 #else /* WLAN_NS_OFFLOAD */
 static inline
 void hdd_enable_ns_offload(struct hdd_adapter *adapter,
@@ -376,6 +387,11 @@ void hdd_disable_ns_offload(struct hdd_adapter *adapter,
 			    enum pmo_offload_trigger trigger)
 {
 }
+
+static inline
+void hdd_send_ps_config_to_fw(struct hdd_adapter *adapter)
+{
+}
 #endif /* WLAN_NS_OFFLOAD */
 
 /**

+ 3 - 0
core/hdd/src/wlan_hdd_cm_connect.c

@@ -1834,6 +1834,9 @@ hdd_cm_connect_success_post_user_update(struct wlan_objmgr_vdev *vdev,
 	}
 	ucfg_dp_periodic_sta_stats_start(vdev);
 	wlan_twt_concurrency_update(hdd_ctx);
+
+	if (wlan_vdev_mlme_is_mlo_link_switch_in_progress(vdev))
+		hdd_send_ps_config_to_fw(adapter);
 }
 
 static void hdd_cm_connect_success(struct wlan_objmgr_vdev *vdev,

+ 1 - 10
core/hdd/src/wlan_hdd_power.c

@@ -679,16 +679,7 @@ static inline void hdd_send_mlo_ps_to_fw(struct hdd_adapter *adapter)
 {}
 #endif
 
-/**
- * hdd_send_ps_config_to_fw() - Check user pwr save config set/reset PS
- * @adapter: pointer to hdd adapter
- *
- * This function checks the power save configuration saved in MAC context
- * and sends power save config to FW.
- *
- * Return: None
- */
-static void hdd_send_ps_config_to_fw(struct hdd_adapter *adapter)
+void hdd_send_ps_config_to_fw(struct hdd_adapter *adapter)
 {
 	struct hdd_context *hdd_ctx;
 	bool is_mlo_vdev;