diff mbox

ath10k: handling qos at STA side based on AP WMM enable/disable

Message ID 1511863650-9419-1-git-send-email-bpothuno@qti.qualcomm.com (mailing list archive)
State New, archived
Headers show

Commit Message

bpothuno@qti.qualcomm.com Nov. 28, 2017, 10:07 a.m. UTC
From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

Data packets are not sent by STA in case of STA joined to
non QOS AP (WMM disabled AP). This is happening because of STA
is sending data packets to firmware from host with qos enabled
along with non qos queue value(TID = 16).
Due to qos enabled, firmware is discarding the packet.

This patch fixes this issue by updating the qos based on station
WME capability field if WMM is disabled in AP.

This patch is required by 10.4 family chipsets like
QCA4019/QCA9888/QCA9884/QCA99X0.
Firmware Versoin : 10.4-3.5.1-00018.

For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch
has no effect.

Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
---
 drivers/net/wireless/ath/ath10k/mac.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Sebastian Gottschall Nov. 29, 2017, 2:57 a.m. UTC | #1
did you notice  that Marvell 88W8964 based clients will crash 10.4-3.5.3 
firmwares?  (tested with 9984 and 10.4-3.5.3-00038)
client device was a linksys wrt3200acm running dd-wrt for testing

Am 28.11.2017 um 11:07 schrieb bpothuno@qti.qualcomm.com:
> From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
>
> Data packets are not sent by STA in case of STA joined to
> non QOS AP (WMM disabled AP). This is happening because of STA
> is sending data packets to firmware from host with qos enabled
> along with non qos queue value(TID = 16).
> Due to qos enabled, firmware is discarding the packet.
>
> This patch fixes this issue by updating the qos based on station
> WME capability field if WMM is disabled in AP.
>
> This patch is required by 10.4 family chipsets like
> QCA4019/QCA9888/QCA9884/QCA99X0.
> Firmware Versoin : 10.4-3.5.1-00018.
>
> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch
> has no effect.
>
> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
> ---
>   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 0a947ee..2616b99 100644
> --- a/drivers/net/wireless/ath/ath10k/mac.c
> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> @@ -2563,7 +2563,7 @@ static void ath10k_peer_assoc_h_qos(struct ath10k *ar,
>   		}
>   		break;
>   	case WMI_VDEV_TYPE_STA:
> -		if (vif->bss_conf.qos)
> +		if (sta->wme)
>   			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
>   		break;
>   	case WMI_VDEV_TYPE_IBSS:
bpothuno@qti.qualcomm.com Nov. 29, 2017, 6:58 a.m. UTC | #2
Hi Sebastian,

If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?
Do you used  any other client in place of WRT3200ACM ?
Can you share the more details on firmware crash ?

Regards,
Balaji.

-----Original Message-----
From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com] 

Sent: Wednesday, November 29, 2017 8:28 AM
To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable

did you notice  that Marvell 88W8964 based clients will crash 10.4-3.5.3 firmwares?  (tested with 9984 and 10.4-3.5.3-00038) client device was a linksys wrt3200acm running dd-wrt for testing

Am 28.11.2017 um 11:07 schrieb bpothuno@qti.qualcomm.com:
> From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

>

> Data packets are not sent by STA in case of STA joined to non QOS AP 

> (WMM disabled AP). This is happening because of STA is sending data 

> packets to firmware from host with qos enabled along with non qos 

> queue value(TID = 16).

> Due to qos enabled, firmware is discarding the packet.

>

> This patch fixes this issue by updating the qos based on station WME 

> capability field if WMM is disabled in AP.

>

> This patch is required by 10.4 family chipsets like 

> QCA4019/QCA9888/QCA9884/QCA99X0.

> Firmware Versoin : 10.4-3.5.1-00018.

>

> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch has 

> no effect.

>

> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

> ---

>   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 0a947ee..2616b99 100644

> --- a/drivers/net/wireless/ath/ath10k/mac.c

> +++ b/drivers/net/wireless/ath/ath10k/mac.c

> @@ -2563,7 +2563,7 @@ static void ath10k_peer_assoc_h_qos(struct ath10k *ar,

>   		}

>   		break;

>   	case WMI_VDEV_TYPE_STA:

> -		if (vif->bss_conf.qos)

> +		if (sta->wme)

>   			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;

>   		break;

>   	case WMI_VDEV_TYPE_IBSS:



--
Mit freundlichen Grüssen / Regards

Sebastian Gottschall / CTO

NewMedia-NET GmbH - DD-WRT
Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim
Registergericht: Amtsgericht Darmstadt, HRB 25473
Geschäftsführer: Peter Steinhäuser, Christian Scheele http://www.dd-wrt.com
email: s.gottschall@dd-wrt.com
Tel.: +496251-582650 / Fax: +496251-5826565
Sebastian Gottschall Nov. 29, 2017, 8:33 a.m. UTC | #3
Am 29.11.2017 um 07:58 schrieb Balaji Pothunoori:
> Hi Sebastian,
>
> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?
> Do you used  any other client in place of WRT3200ACM ?

there is not much  traffic required. as it seems the firmware crashes 
immediatly after association. the issue is also not present in 
10.4-3.4-0082ww

> Can you share the more details on firmware crash ?

so a firmware crashdump from log? i'll try to get it within the next 
hours. just need to resetup the test scenario


Sebastian


>
> Regards,
> Balaji.
>
> -----Original Message-----
> From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com]
> Sent: Wednesday, November 29, 2017 8:28 AM
> To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable
>
> did you notice  that Marvell 88W8964 based clients will crash 10.4-3.5.3 firmwares?  (tested with 9984 and 10.4-3.5.3-00038) client device was a linksys wrt3200acm running dd-wrt for testing
>
> Am 28.11.2017 um 11:07 schrieb bpothuno@qti.qualcomm.com:
>> From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
>>
>> Data packets are not sent by STA in case of STA joined to non QOS AP
>> (WMM disabled AP). This is happening because of STA is sending data
>> packets to firmware from host with qos enabled along with non qos
>> queue value(TID = 16).
>> Due to qos enabled, firmware is discarding the packet.
>>
>> This patch fixes this issue by updating the qos based on station WME
>> capability field if WMM is disabled in AP.
>>
>> This patch is required by 10.4 family chipsets like
>> QCA4019/QCA9888/QCA9884/QCA99X0.
>> Firmware Versoin : 10.4-3.5.1-00018.
>>
>> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch has
>> no effect.
>>
>> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
>> ---
>>    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 0a947ee..2616b99 100644
>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>> @@ -2563,7 +2563,7 @@ static void ath10k_peer_assoc_h_qos(struct ath10k *ar,
>>    		}
>>    		break;
>>    	case WMI_VDEV_TYPE_STA:
>> -		if (vif->bss_conf.qos)
>> +		if (sta->wme)
>>    			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
>>    		break;
>>    	case WMI_VDEV_TYPE_IBSS:
>
> --
> Mit freundlichen Grüssen / Regards
>
> Sebastian Gottschall / CTO
>
> NewMedia-NET GmbH - DD-WRT
> Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim
> Registergericht: Amtsgericht Darmstadt, HRB 25473
> Geschäftsführer: Peter Steinhäuser, Christian Scheele http://www.dd-wrt.com
> email: s.gottschall@dd-wrt.com
> Tel.: +496251-582650 / Fax: +496251-5826565
>
bpothuno@qti.qualcomm.com Nov. 29, 2017, 10:12 a.m. UTC | #4
>> Hi Sebastian,

>>

>> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?

>> Do you used  any other client in place of WRT3200ACM ?


>there is not much  traffic required. as it seems the firmware crashes immediatly after association. the issue is also not present in 10.4-3.4-0082ww


Still my question is not cleared,  firmware crash is due to this patch ? Also let me know do you observed same behavior with any other chipset ?

 
Regards,
Balaji.

>Sebastian



>>

>> Regards,

>> Balaji.


-----Original Message-----
From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com] 

Sent: Wednesday, November 29, 2017 2:04 PM
To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable

Am 29.11.2017 um 07:58 schrieb Balaji Pothunoori:
> Hi Sebastian,

>

> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?

> Do you used  any other client in place of WRT3200ACM ?


there is not much  traffic required. as it seems the firmware crashes immediatly after association. the issue is also not present in 10.4-3.4-0082ww

> Can you share the more details on firmware crash ?


so a firmware crashdump from log? i'll try to get it within the next hours. just need to resetup the test scenario


Sebastian


>

> Regards,

> Balaji.

>

> -----Original Message-----

> From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com]

> Sent: Wednesday, November 29, 2017 8:28 AM

> To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org

> Cc: linux-wireless@vger.kernel.org

> Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable

>

> did you notice  that Marvell 88W8964 based clients will crash 10.4-3.5.3 firmwares?  (tested with 9984 and 10.4-3.5.3-00038) client device was a linksys wrt3200acm running dd-wrt for testing

>

> Am 28.11.2017 um 11:07 schrieb bpothuno@qti.qualcomm.com:

>> From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

>>

>> Data packets are not sent by STA in case of STA joined to non QOS AP

>> (WMM disabled AP). This is happening because of STA is sending data

>> packets to firmware from host with qos enabled along with non qos

>> queue value(TID = 16).

>> Due to qos enabled, firmware is discarding the packet.

>>

>> This patch fixes this issue by updating the qos based on station WME

>> capability field if WMM is disabled in AP.

>>

>> This patch is required by 10.4 family chipsets like

>> QCA4019/QCA9888/QCA9884/QCA99X0.

>> Firmware Versoin : 10.4-3.5.1-00018.

>>

>> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch has

>> no effect.

>>

>> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

>> ---

>>    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 0a947ee..2616b99 100644

>> --- a/drivers/net/wireless/ath/ath10k/mac.c

>> +++ b/drivers/net/wireless/ath/ath10k/mac.c

>> @@ -2563,7 +2563,7 @@ static void ath10k_peer_assoc_h_qos(struct ath10k *ar,

>>    		}

>>    		break;

>>    	case WMI_VDEV_TYPE_STA:

>> -		if (vif->bss_conf.qos)

>> +		if (sta->wme)

>>    			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;

>>    		break;

>>    	case WMI_VDEV_TYPE_IBSS:

>

> --

> Mit freundlichen Grüssen / Regards

>

> Sebastian Gottschall / CTO

>

> NewMedia-NET GmbH - DD-WRT

> Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim

> Registergericht: Amtsgericht Darmstadt, HRB 25473

> Geschäftsführer: Peter Steinhäuser, Christian Scheele http://www.dd-wrt.com

> email: s.gottschall@dd-wrt.com

> Tel.: +496251-582650 / Fax: +496251-5826565

>


-- 
Mit freundlichen Grüssen / Regards

Sebastian Gottschall / CTO

NewMedia-NET GmbH - DD-WRT
Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim
Registergericht: Amtsgericht Darmstadt, HRB 25473
Geschäftsführer: Peter Steinhäuser, Christian Scheele
http://www.dd-wrt.com
email: s.gottschall@dd-wrt.com
Tel.: +496251-582650 / Fax: +496251-5826565
Sebastian Gottschall Nov. 29, 2017, 1:38 p.m. UTC | #5
Am 29.11.2017 um 11:12 schrieb Balaji Pothunoori:
>>> Hi Sebastian,
>>>
>>> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?
>>> Do you used  any other client in place of WRT3200ACM ?
>> there is not much  traffic required. as it seems the firmware crashes immediatly after association. the issue is also not present in 10.4-3.4-0082ww
> Still my question is not cleared,  firmware crash is due to this patch ? Also let me know do you observed same behavior with any other chipset ?

no. its unrelated to this patch but since you're working for qca i 
thought it would make sense to tell you this since saw that you're using 
ath10k firmwares which arent published officiall but based on the

qca firmwares which are published on chipcode. since i was testing  
these firmwares too some weeks ago i found its a good idea to tell you this

>
>   
> Regards,
> Balaji.
>
>> Sebastian
>
>>> Regards,
>>> Balaji.
> -----Original Message-----
> From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com]
> Sent: Wednesday, November 29, 2017 2:04 PM
> To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org
> Cc: linux-wireless@vger.kernel.org
> Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable
>
> Am 29.11.2017 um 07:58 schrieb Balaji Pothunoori:
>> Hi Sebastian,
>>
>> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?
>> Do you used  any other client in place of WRT3200ACM ?
> there is not much  traffic required. as it seems the firmware crashes immediatly after association. the issue is also not present in 10.4-3.4-0082ww
>
>> Can you share the more details on firmware crash ?
> so a firmware crashdump from log? i'll try to get it within the next hours. just need to resetup the test scenario
>
>
> Sebastian
>
>
>> Regards,
>> Balaji.
>>
>> -----Original Message-----
>> From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com]
>> Sent: Wednesday, November 29, 2017 8:28 AM
>> To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org
>> Cc: linux-wireless@vger.kernel.org
>> Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable
>>
>> did you notice  that Marvell 88W8964 based clients will crash 10.4-3.5.3 firmwares?  (tested with 9984 and 10.4-3.5.3-00038) client device was a linksys wrt3200acm running dd-wrt for testing
>>
>> Am 28.11.2017 um 11:07 schrieb bpothuno@qti.qualcomm.com:
>>> From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
>>>
>>> Data packets are not sent by STA in case of STA joined to non QOS AP
>>> (WMM disabled AP). This is happening because of STA is sending data
>>> packets to firmware from host with qos enabled along with non qos
>>> queue value(TID = 16).
>>> Due to qos enabled, firmware is discarding the packet.
>>>
>>> This patch fixes this issue by updating the qos based on station WME
>>> capability field if WMM is disabled in AP.
>>>
>>> This patch is required by 10.4 family chipsets like
>>> QCA4019/QCA9888/QCA9884/QCA99X0.
>>> Firmware Versoin : 10.4-3.5.1-00018.
>>>
>>> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch has
>>> no effect.
>>>
>>> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
>>> ---
>>>     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 0a947ee..2616b99 100644
>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>> @@ -2563,7 +2563,7 @@ static void ath10k_peer_assoc_h_qos(struct ath10k *ar,
>>>     		}
>>>     		break;
>>>     	case WMI_VDEV_TYPE_STA:
>>> -		if (vif->bss_conf.qos)
>>> +		if (sta->wme)
>>>     			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
>>>     		break;
>>>     	case WMI_VDEV_TYPE_IBSS:
>> --
>> Mit freundlichen Grüssen / Regards
>>
>> Sebastian Gottschall / CTO
>>
>> NewMedia-NET GmbH - DD-WRT
>> Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim
>> Registergericht: Amtsgericht Darmstadt, HRB 25473
>> Geschäftsführer: Peter Steinhäuser, Christian Scheele http://www.dd-wrt.com
>> email: s.gottschall@dd-wrt.com
>> Tel.: +496251-582650 / Fax: +496251-5826565
>>
bpothuno@qti.qualcomm.com Nov. 30, 2017, 5:24 a.m. UTC | #6
>>>> Hi Sebastian,

>>>>If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?

>>>> Do you used  any other client in place of WRT3200ACM ?

>>> there is not much  traffic required. as it seems the firmware crashes 

>>> immediatly after association. the issue is also not present in 

>>> 10.4-3.4-0082ww

>> Still my question is not cleared,  firmware crash is due to this patch ? Also let me know do you observed same behavior with any other chipset ?


>no. its unrelated to this patch but since you're working for qca i thought it would make sense to tell you this since saw that you're using ath10k firmwares which arent published officiall but based on the


>qca firmwares which are published on chipcode. since i was testing these firmwares too some weeks ago i found its a good idea to tell you this


Thanks for confirmation , Let us know from where you have procured ath10k firmware : 10.4-3.5.3-00038 ? Did you also seen the issue on latest firmware version?

>>

>>   

>> Regards,

>> Balaji.

>

>> Sebastian

>

>>> Regards,

>>> Balaji.


-----Original Message-----
From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com] 

Sent: Wednesday, November 29, 2017 7:08 PM
To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable

Am 29.11.2017 um 11:12 schrieb Balaji Pothunoori:
>>> Hi Sebastian,

>>>

>>> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?

>>> Do you used  any other client in place of WRT3200ACM ?

>> there is not much  traffic required. as it seems the firmware crashes 

>> immediatly after association. the issue is also not present in 

>> 10.4-3.4-0082ww

> Still my question is not cleared,  firmware crash is due to this patch ? Also let me know do you observed same behavior with any other chipset ?


no. its unrelated to this patch but since you're working for qca i thought it would make sense to tell you this since saw that you're using ath10k firmwares which arent published officiall but based on the

qca firmwares which are published on chipcode. since i was testing these firmwares too some weeks ago i found its a good idea to tell you this

>

>   

> Regards,

> Balaji.

>

>> Sebastian

>

>>> Regards,

>>> Balaji.

> -----Original Message-----

> From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com]

> Sent: Wednesday, November 29, 2017 2:04 PM

> To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org

> Cc: linux-wireless@vger.kernel.org

> Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable

>

> Am 29.11.2017 um 07:58 schrieb Balaji Pothunoori:

>> Hi Sebastian,

>>

>> If I am not wrong you are seeing the issue with WRT3200ACM (Marvell 88W8964) as client + QCA9984 (FW : 10.4-3.5.3-00038) as AP with below change you are seeing the crash while running traffic between the WRT3200ACM + QCA9984 ?

>> Do you used  any other client in place of WRT3200ACM ?

> there is not much  traffic required. as it seems the firmware crashes immediatly after association. the issue is also not present in 10.4-3.4-0082ww

>

>> Can you share the more details on firmware crash ?

> so a firmware crashdump from log? i'll try to get it within the next hours. just need to resetup the test scenario

>

>

> Sebastian

>

>

>> Regards,

>> Balaji.

>>

>> -----Original Message-----

>> From: Sebastian Gottschall [mailto:s.gottschall@dd-wrt.com]

>> Sent: Wednesday, November 29, 2017 8:28 AM

>> To: Balaji Pothunoori <bpothuno@qti.qualcomm.com>; ath10k@lists.infradead.org

>> Cc: linux-wireless@vger.kernel.org

>> Subject: Re: [PATCH] ath10k: handling qos at STA side based on AP WMM enable/disable

>>

>> did you notice  that Marvell 88W8964 based clients will crash 10.4-3.5.3 firmwares?  (tested with 9984 and 10.4-3.5.3-00038) client device was a linksys wrt3200acm running dd-wrt for testing

>>

>> Am 28.11.2017 um 11:07 schrieb bpothuno@qti.qualcomm.com:

>>> From: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

>>>

>>> Data packets are not sent by STA in case of STA joined to non QOS AP

>>> (WMM disabled AP). This is happening because of STA is sending data

>>> packets to firmware from host with qos enabled along with non qos

>>> queue value(TID = 16).

>>> Due to qos enabled, firmware is discarding the packet.

>>>

>>> This patch fixes this issue by updating the qos based on station WME

>>> capability field if WMM is disabled in AP.

>>>

>>> This patch is required by 10.4 family chipsets like

>>> QCA4019/QCA9888/QCA9884/QCA99X0.

>>> Firmware Versoin : 10.4-3.5.1-00018.

>>>

>>> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch has

>>> no effect.

>>>

>>> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>

>>> ---

>>>     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 0a947ee..2616b99 100644

>>> --- a/drivers/net/wireless/ath/ath10k/mac.c

>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c

>>> @@ -2563,7 +2563,7 @@ static void ath10k_peer_assoc_h_qos(struct ath10k *ar,

>>>     		}

>>>     		break;

>>>     	case WMI_VDEV_TYPE_STA:

>>> -		if (vif->bss_conf.qos)

>>> +		if (sta->wme)

>>>     			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;

>>>     		break;

>>>     	case WMI_VDEV_TYPE_IBSS:

>> --

>> Mit freundlichen Grüssen / Regards

>>

>> Sebastian Gottschall / CTO

>>

>> NewMedia-NET GmbH - DD-WRT

>> Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim

>> Registergericht: Amtsgericht Darmstadt, HRB 25473

>> Geschäftsführer: Peter Steinhäuser, Christian Scheele http://www.dd-wrt.com

>> email: s.gottschall@dd-wrt.com

>> Tel.: +496251-582650 / Fax: +496251-5826565

>>


-- 
Mit freundlichen Grüssen / Regards

Sebastian Gottschall / CTO

NewMedia-NET GmbH - DD-WRT
Firmensitz:  Stubenwaldallee 21a, 64625 Bensheim
Registergericht: Amtsgericht Darmstadt, HRB 25473
Geschäftsführer: Peter Steinhäuser, Christian Scheele
http://www.dd-wrt.com
email: s.gottschall@dd-wrt.com
Tel.: +496251-582650 / Fax: +496251-5826565
Kalle Valo Dec. 14, 2017, 3:19 p.m. UTC | #7
bpothuno@qti.qualcomm.com wrote:

> Data packets are not sent by STA in case of STA joined to
> non QOS AP (WMM disabled AP). This is happening because of STA
> is sending data packets to firmware from host with qos enabled
> along with non qos queue value(TID = 16).
> Due to qos enabled, firmware is discarding the packet.
> 
> This patch fixes this issue by updating the qos based on station
> WME capability field if WMM is disabled in AP.
> 
> This patch is required by 10.4 family chipsets like
> QCA4019/QCA9888/QCA9884/QCA99X0.
> Firmware Versoin : 10.4-3.5.1-00018.
> 
> For 10.2.4 family chipsets QCA988X/QCA9887 and QCA6174 this patch
> has no effect.
> 
> Signed-off-by: Balaji Pothunoori <bpothuno@qti.qualcomm.com>
> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>

Patch applied to ath-next branch of ath.git, thanks.

07ffb4497360 ath10k: handling qos at STA side based on AP WMM enable/disable
diff mbox

Patch

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index 0a947ee..2616b99 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -2563,7 +2563,7 @@  static void ath10k_peer_assoc_h_qos(struct ath10k *ar,
 		}
 		break;
 	case WMI_VDEV_TYPE_STA:
-		if (vif->bss_conf.qos)
+		if (sta->wme)
 			arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
 		break;
 	case WMI_VDEV_TYPE_IBSS: