Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cfa357d5 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "qcacld-3.0: roam latency optimisation changes" into wlan-cld3.driver.lnx.2.0.8.r3-rel

parents 2561dc63 19de3826
Loading
Loading
Loading
Loading
+39 −32
Original line number Diff line number Diff line
@@ -3061,9 +3061,6 @@ hdd_association_completion_handler(struct hdd_adapter *adapter,
				  sta_ctx->ap_supports_immediate_power_save);
		}

		/* Indicate 'connect' status to user space */
		hdd_send_association_event(dev, roam_info);

		if (policy_mgr_is_mcc_in_24G(hdd_ctx->psoc)) {
			if (hdd_ctx->miracast_value)
				wlan_hdd_set_mas(adapter,
@@ -3265,6 +3262,27 @@ hdd_association_completion_handler(struct hdd_adapter *adapter,
				assoc_req_len = 0;
			}

			if (!hddDisconInProgress) {
				/*
				 * Perform any WMM-related association
				 * processing.
				 */
				hdd_wmm_assoc(adapter, roam_info,
					      eCSR_BSS_TYPE_INFRASTRUCTURE);

				/*
				 * Register the Station with DP after associated
				 */
				qdf_status = hdd_roam_register_sta(adapter,
						roam_info,
						roam_info->bss_desc);
				hdd_debug("Enabling queues");
				hdd_netif_queue_enable(adapter);
			}

			/* Indicate 'connect' status to user space */
			hdd_send_association_event(dev, roam_info);

			if ((roam_info->u.pConnectedProfile->AuthType ==
			     eCSR_AUTH_TYPE_FT_RSN) ||
			    (roam_info->u.pConnectedProfile->AuthType ==
@@ -3406,38 +3424,10 @@ hdd_association_completion_handler(struct hdd_adapter *adapter,
							       conn_info_freq);
				}
			}
			if (!hddDisconInProgress) {
				/*
				 * Perform any WMM-related association
				 * processing.
				 */
				hdd_wmm_assoc(adapter, roam_info,
					      eCSR_BSS_TYPE_INFRASTRUCTURE);

				/*
				 * Register the Station with DP after associated
				 */
				qdf_status = hdd_roam_register_sta(adapter,
						roam_info,
						roam_info->bss_desc);
				hdd_debug("Enabling queues");
				hdd_netif_queue_enable(adapter);
			}
		} else {
			/*
			 * wpa supplicant expecting WPA/RSN IE in connect result
			 * in case of reassociation also need to indicate it to
			 * supplicant.
			 */
			sme_roam_get_wpa_rsn_req_ie(
						mac_handle,
						adapter->vdev_id,
						&reqRsnLength, reqRsnIe);

			cdp_hl_fc_set_td_limit(soc, adapter->vdev_id,
					       conn_info_freq);
			hdd_send_re_assoc_event(dev, adapter, roam_info,
						reqRsnIe, reqRsnLength);

			/* Reassoc successfully */
			if (roam_info->fAuthRequired) {
				qdf_status =
@@ -3475,7 +3465,24 @@ hdd_association_completion_handler(struct hdd_adapter *adapter,
			/* Start the tx queues */
			hdd_debug("Enabling queues");
			hdd_netif_queue_enable(adapter);

			/* Indicate 'connect' status to user space */
			hdd_send_association_event(dev, roam_info);

			/*
			 * wpa supplicant expecting WPA/RSN IE in connect result
			 * in case of reassociation also need to indicate it to
			 * supplicant.
			 */
			sme_roam_get_wpa_rsn_req_ie(
						mac_handle,
						adapter->vdev_id,
						&reqRsnLength, reqRsnIe);

			hdd_send_re_assoc_event(dev, adapter, roam_info,
						reqRsnIe, reqRsnLength);
		}

		qdf_mem_free(reqRsnIe);

		if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
+2 −2
Original line number Diff line number Diff line
@@ -2954,8 +2954,8 @@ static int __wlan_hdd_cfg80211_get_txpower(struct wiphy *wiphy,
	HDD_IS_RATE_LIMIT_REQ(is_rate_limited,
			      hdd_ctx->config->nb_commands_interval);
	if (hdd_ctx->driver_status != DRIVER_MODULES_ENABLED ||
	    is_rate_limited) {
		hdd_debug("Modules not enabled/rate limited, use cached stats");
	    is_rate_limited || hdd_is_roaming_in_progress(hdd_ctx)) {
		hdd_debug("Modules not enabled/rate limited/roaming, use cached stats");
		/* Send cached data to upperlayer*/
		*dbm = adapter->hdd_stats.class_a_stat.max_pwr;
		return 0;