diff mbox series

[PATCHv2] ath10k : Fix channel survey dump

Message ID 1533039077-1532-1-git-send-email-vnaralas@codeaurora.org (mailing list archive)
State New, archived
Headers show
Series [PATCHv2] ath10k : Fix channel survey dump | expand

Commit Message

Venkateswara Naralasetty July 31, 2018, 12:11 p.m. UTC
Channel active/busy time are showing incorrect(less than previous or
sometimes zero) for successive survey dump command.

example:
Survey data from wlan0
	frequency:                      5180 MHz [in use]
	channel active time:            54995 ms
	channel busy time:              432 ms
	channel receive time:           0 ms
	channel transmit time:          59 ms
Survey data from wlan0
	frequency:                      5180 MHz [in use]
	channel active time:            32592 ms
	channel busy time:              254 ms
	channel receive time:           0 ms
	channel transmit time:          0 ms

This patch fix this issue by assigning 'wmi_bss_survey_req_type'
as 'WMI_BSS_SURVEY_REQ_TYPE_READ' which accumulate survey data in
FW and send survey data to driver upon the driver request. Wrap around
is taken care by FW.

hardware used : QCA9984
firmware ver  : ver 10.4-3.5.3-00057

Signed-off-by: Venkateswara Naralasetty <vnaralas@codeaurora.org>
---
v2:
 * updated commit log.

 drivers/net/wireless/ath/ath10k/mac.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Ben Greear July 31, 2018, 5:37 p.m. UTC | #1
On 07/31/2018 05:11 AM, Venkateswara Naralasetty wrote:
> Channel active/busy time are showing incorrect(less than previous or
> sometimes zero) for successive survey dump command.
>
> example:
> Survey data from wlan0
> 	frequency:                      5180 MHz [in use]
> 	channel active time:            54995 ms
> 	channel busy time:              432 ms
> 	channel receive time:           0 ms
> 	channel transmit time:          59 ms
> Survey data from wlan0
> 	frequency:                      5180 MHz [in use]
> 	channel active time:            32592 ms
> 	channel busy time:              254 ms
> 	channel receive time:           0 ms
> 	channel transmit time:          0 ms
>
> This patch fix this issue by assigning 'wmi_bss_survey_req_type'
> as 'WMI_BSS_SURVEY_REQ_TYPE_READ' which accumulate survey data in
> FW and send survey data to driver upon the driver request. Wrap around
> is taken care by FW.
>
> hardware used : QCA9984
> firmware ver  : ver 10.4-3.5.3-00057

Have you tested this on other firmwares?  I am pretty sure that at least
some of them, probably 10.2, will have issues.

Maybe you could make this change specific to certain firmware that
is known to work with the change?

Thanks,
Ben

>
> Signed-off-by: Venkateswara Naralasetty <vnaralas@codeaurora.org>
> ---
> v2:
>  * updated commit log.
>
>  drivers/net/wireless/ath/ath10k/mac.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> index f068e2b..db93ab1 100644
> --- a/drivers/net/wireless/ath/ath10k/mac.c
> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> @@ -6837,7 +6837,7 @@ ath10k_mac_update_bss_chan_survey(struct ath10k *ar,
>  				  struct ieee80211_channel *channel)
>  {
>  	int ret;
> -	enum wmi_bss_survey_req_type type = WMI_BSS_SURVEY_REQ_TYPE_READ_CLEAR;
> +	enum wmi_bss_survey_req_type type = WMI_BSS_SURVEY_REQ_TYPE_READ;
>
>  	lockdep_assert_held(&ar->conf_mutex);
>
>
Venkateswara Naralasetty Aug. 1, 2018, 8:47 a.m. UTC | #2
> -----Original Message-----
> From: ath10k <ath10k-bounces@lists.infradead.org> On Behalf Of Ben
> Greear
> Sent: Tuesday, July 31, 2018 11:08 PM
> To: Venkateswara Naralasetty <vnaralas@codeaurora.org>;
> ath10k@lists.infradead.org
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: [PATCHv2] ath10k : Fix channel survey dump
> 
> On 07/31/2018 05:11 AM, Venkateswara Naralasetty wrote:
> > Channel active/busy time are showing incorrect(less than previous or
> > sometimes zero) for successive survey dump command.
> >
> > example:
> > Survey data from wlan0
> > 	frequency:                      5180 MHz [in use]
> > 	channel active time:            54995 ms
> > 	channel busy time:              432 ms
> > 	channel receive time:           0 ms
> > 	channel transmit time:          59 ms
> > Survey data from wlan0
> > 	frequency:                      5180 MHz [in use]
> > 	channel active time:            32592 ms
> > 	channel busy time:              254 ms
> > 	channel receive time:           0 ms
> > 	channel transmit time:          0 ms
> >
> > This patch fix this issue by assigning 'wmi_bss_survey_req_type'
> > as 'WMI_BSS_SURVEY_REQ_TYPE_READ' which accumulate survey data in
> FW
> > and send survey data to driver upon the driver request. Wrap around is
> > taken care by FW.
> >
> > hardware used : QCA9984
> > firmware ver  : ver 10.4-3.5.3-00057
> 
> Have you tested this on other firmwares?  I am pretty sure that at least some
> of them, probably 10.2, will have issues.
> 
I have tested this change with firmware version 10.2.4-1.0-00036 (hw used QCA988x) as well it's working fine for me without any issues.
 
> Maybe you could make this change specific to certain firmware that is known
> to work with the change?
> 
> Thanks,
> Ben
> 
> >
> > Signed-off-by: Venkateswara Naralasetty <vnaralas@codeaurora.org>
> > ---
> > v2:
> >  * updated commit log.
> >
> >  drivers/net/wireless/ath/ath10k/mac.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/wireless/ath/ath10k/mac.c
> > b/drivers/net/wireless/ath/ath10k/mac.c
> > index f068e2b..db93ab1 100644
> > --- a/drivers/net/wireless/ath/ath10k/mac.c
> > +++ b/drivers/net/wireless/ath/ath10k/mac.c
> > @@ -6837,7 +6837,7 @@ ath10k_mac_update_bss_chan_survey(struct
> ath10k *ar,
> >  				  struct ieee80211_channel *channel)  {
> >  	int ret;
> > -	enum wmi_bss_survey_req_type type =
> WMI_BSS_SURVEY_REQ_TYPE_READ_CLEAR;
> > +	enum wmi_bss_survey_req_type type =
> WMI_BSS_SURVEY_REQ_TYPE_READ;
> >
> >  	lockdep_assert_held(&ar->conf_mutex);
> >
> >
> 
> 
> --
> Ben Greear <greearb@candelatech.com>
> Candela Technologies Inc  http://www.candelatech.com
> 
> 
> _______________________________________________
> ath10k mailing list
> ath10k@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/ath10k
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index f068e2b..db93ab1 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -6837,7 +6837,7 @@  ath10k_mac_update_bss_chan_survey(struct ath10k *ar,
 				  struct ieee80211_channel *channel)
 {
 	int ret;
-	enum wmi_bss_survey_req_type type = WMI_BSS_SURVEY_REQ_TYPE_READ_CLEAR;
+	enum wmi_bss_survey_req_type type = WMI_BSS_SURVEY_REQ_TYPE_READ;
 
 	lockdep_assert_held(&ar->conf_mutex);