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

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

Merge "ath10k: Fix unwanted probe requests sent during p2p scan"

parents 66968286 75ab52cc
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -5530,6 +5530,11 @@ static int ath10k_hw_scan(struct ieee80211_hw *hw,
			arg.ssids[i].len  = req->ssids[i].ssid_len;
			arg.ssids[i].ssid = req->ssids[i].ssid;
		}
		if (QCA_REV_WCN3990(ar)) {
			arg.scan_ctrl_flags &=
					~(WMI_SCAN_ADD_BCAST_PROBE_REQ |
					  WMI_SCAN_CHAN_STAT_EVENT);
		}
	} else {
		arg.scan_ctrl_flags |= WMI_SCAN_FLAG_PASSIVE;
	}
@@ -6428,7 +6433,13 @@ static int ath10k_remain_on_channel(struct ieee80211_hw *hw,
	arg.dwell_time_passive = scan_time_msec;
	arg.max_scan_time = scan_time_msec;
	arg.scan_ctrl_flags |= WMI_SCAN_FLAG_PASSIVE;
	if (QCA_REV_WCN3990(ar)) {
		arg.scan_ctrl_flags &= ~(WMI_SCAN_FILTER_PROBE_REQ |
					  WMI_SCAN_CHAN_STAT_EVENT |
					  WMI_SCAN_ADD_BCAST_PROBE_REQ);
	} else {
		arg.scan_ctrl_flags |= WMI_SCAN_FILTER_PROBE_REQ;
	}
	arg.burst_duration_ms = duration;

	ret = ath10k_start_scan(ar, &arg);
+1 −5
Original line number Diff line number Diff line
@@ -1553,11 +1553,7 @@ ath10k_wmi_tlv_op_gen_start_scan(struct ath10k *ar,
	cmd->ie_len = __cpu_to_le32(arg->ie_len);
	cmd->num_probes = __cpu_to_le32(3);

	if (QCA_REV_WCN3990(ar)) {
		cmd->common.scan_ctrl_flags = ar->fw_flags->flags;
		cmd->common.scan_ctrl_flags |=
					__cpu_to_le32(WMI_SCAN_CHAN_STAT_EVENT);
	} else {
	if (!QCA_REV_WCN3990(ar)) {
		cmd->common.scan_ctrl_flags ^=
			__cpu_to_le32(WMI_SCAN_FILTER_PROBE_REQ);
	}
+2 −0
Original line number Diff line number Diff line
@@ -6192,6 +6192,8 @@ void ath10k_wmi_start_scan_init(struct ath10k *ar,
		| WMI_SCAN_EVENT_BSS_CHANNEL
		| WMI_SCAN_EVENT_FOREIGN_CHANNEL
		| WMI_SCAN_EVENT_DEQUEUED;
	if (QCA_REV_WCN3990(ar))
		arg->scan_ctrl_flags = ar->fw_flags->flags;
	arg->scan_ctrl_flags |= WMI_SCAN_CHAN_STAT_EVENT;
	arg->n_bssids = 1;
	arg->bssids[0].bssid = "\xFF\xFF\xFF\xFF\xFF\xFF";
+2 −0
Original line number Diff line number Diff line
@@ -2960,6 +2960,8 @@ struct wmi_start_scan_arg {
/* Different FW scan engine may choose to bail out on errors.
 * Allow the driver to have influence over that. */
#define WMI_SCAN_CONTINUE_ON_ERROR 0x80
/** add DS content in probe req frame */
#define WMI_SCAN_ADD_DS_IE_IN_PROBE_REQ   0x800

/* WMI_SCAN_CLASS_MASK must be the same value as IEEE80211_SCAN_CLASS_MASK */
#define WMI_SCAN_CLASS_MASK 0xFF000000