diff mbox series

[qca6390-bringup] ath11k: fix ZERO address in probe request

Message ID 1576830666-30661-1-git-send-email-cjhuang@codeaurora.org (mailing list archive)
State New, archived
Headers show
Series [qca6390-bringup] ath11k: fix ZERO address in probe request | expand

Commit Message

Carl Huang Dec. 20, 2019, 8:31 a.m. UTC
Host needs to pass at least on bssid with all 0xff to firmware in
WMI_START_SCAN_CMDID, otherwise the bssid and receiver address
in probe requeste are all ZEROs.

This also fixed some hidden AP connection issue because some AP
doesn't respond to probe request which receiver address are all
ZEROs.

Signed-off-by: Carl Huang <cjhuang@codeaurora.org>
---
 drivers/net/wireless/ath/ath11k/wmi.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Kalle Valo Dec. 20, 2019, 2:13 p.m. UTC | #1
Carl Huang <cjhuang@codeaurora.org> writes:

> Host needs to pass at least on bssid with all 0xff to firmware in
> WMI_START_SCAN_CMDID, otherwise the bssid and receiver address
> in probe requeste are all ZEROs.
>
> This also fixed some hidden AP connection issue because some AP
> doesn't respond to probe request which receiver address are all
> ZEROs.
>
> Signed-off-by: Carl Huang <cjhuang@codeaurora.org>
> ---
>  drivers/net/wireless/ath/ath11k/wmi.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/net/wireless/ath/ath11k/wmi.c b/drivers/net/wireless/ath/ath11k/wmi.c
> index 4375e59..1a78002 100644
> --- a/drivers/net/wireless/ath/ath11k/wmi.c
> +++ b/drivers/net/wireless/ath/ath11k/wmi.c
> @@ -1842,6 +1842,9 @@ void ath11k_wmi_start_scan_init(struct ath11k *ar,
>  				  WMI_SCAN_EVENT_DEQUEUED;
>  	arg->scan_flags |= WMI_SCAN_CHAN_STAT_EVENT;
>  	arg->num_bssid = 1;
> +	/* fill bssid_list[0] with 0xff */
> +	ether_addr_copy(arg->bssid_list[0].addr, "\xFF\xFF\xFF\xFF\xFF\xFF");

The comment should explain _why_ you are doing that. It's clear from
looking at the code that we are filling the address with 0xff but the
reason for this unclear just from looking at the code.
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath11k/wmi.c b/drivers/net/wireless/ath/ath11k/wmi.c
index 4375e59..1a78002 100644
--- a/drivers/net/wireless/ath/ath11k/wmi.c
+++ b/drivers/net/wireless/ath/ath11k/wmi.c
@@ -1842,6 +1842,9 @@  void ath11k_wmi_start_scan_init(struct ath11k *ar,
 				  WMI_SCAN_EVENT_DEQUEUED;
 	arg->scan_flags |= WMI_SCAN_CHAN_STAT_EVENT;
 	arg->num_bssid = 1;
+	/* fill bssid_list[0] with 0xff */
+	ether_addr_copy(arg->bssid_list[0].addr, "\xFF\xFF\xFF\xFF\xFF\xFF");
+
 }
 
 static inline void