diff mbox

ath10k + iw set bitrates is causing FW crash

Message ID 1467982766213.21223@qti.qualcomm.com (mailing list archive)
State Not Applicable
Delegated to: Kalle Valo
Headers show

Commit Message

Rajkumar Manoharan July 8, 2016, 12:59 p.m. UTC
I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?

-Rajkumar

Comments

Krishna Chaitanya July 8, 2016, 3:27 p.m. UTC | #1
On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
<rmanohar@qti.qualcomm.com> wrote:
> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
>
> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> index 5e1cc8f4c43c..f7f04bb46fc8 100644
> --- a/drivers/net/wireless/ath/ath10k/mac.c
> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
>                                     sta->addr, smps, err);
>         }
>
> -       if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> -           changed & IEEE80211_RC_NSS_CHANGED) {
> +       if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> +           changed & IEEE80211_RC_NSS_CHANGED) &&
> +           (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
>                 ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
>                            sta->addr);

Bottom posting please. I have tried your change i still see the same issue.
Right after connecting i see that packets are encrypted but once it
unset/set "bitrates" plain packets are seen in sniffer.

BTW, i am not rebooting for each driver update, just re-inserting the module,
do i need to do a reboot for each driver change?
 ________________________________________
> From: Krishna Chaitanya <chaitanya.mgit@gmail.com>
> Sent: Friday, July 8, 2016 5:26 PM
> To: Manoharan, Rajkumar
> Cc: linux-wireless; ath10k
> Subject: Re: ath10k + iw set bitrates is causing FW crash
>
> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
> <rmanohar@qti.qualcomm.com> wrote:
>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>>
>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>>> no crash is observed but it still uses MCS9.
>>>>
>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>>
>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>>> the mac80211 rates?
>>>>
>>>
>> Thanks for reporting the issue. Could you please try with below change?
>>
>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>> index 5e1cc8f4c43c..cfa7e01a6103 100644
>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
>>                 return ret;
>>         }
>>
>> +       if (vif->type != NL80211_IFTYPE_ADHOC)
>> +               peer_arg.peer_reassoc = reassoc;
>> +
>>         ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
>>         if (ret) {
>>                 ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
>
> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
> seeing 0-9, so its
> working.
>
> But i am seeing a weird issues, the moment i give bitrates command,
> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
> interface up/down
> it doesn't work.
Krishna Chaitanya July 8, 2016, 3:37 p.m. UTC | #2
On Fri, Jul 8, 2016 at 8:57 PM, Krishna Chaitanya
<chaitanya.mgit@gmail.com> wrote:
> On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
> <rmanohar@qti.qualcomm.com> wrote:
>> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
>>
>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>> index 5e1cc8f4c43c..f7f04bb46fc8 100644
>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
>>                                     sta->addr, smps, err);
>>         }
>>
>> -       if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>> -           changed & IEEE80211_RC_NSS_CHANGED) {
>> +       if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>> +           changed & IEEE80211_RC_NSS_CHANGED) &&
>> +           (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
>>                 ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
>>                            sta->addr);
>
> Bottom posting please. I have tried your change i still see the same issue.
> Right after connecting i see that packets are encrypted but once it
> unset/set "bitrates" plain packets are seen in sniffer.
>
> BTW, i am not rebooting for each driver update, just re-inserting the module,
> do i need to do a reboot for each driver change?

After reboot i dont see the "unencrypted" packet issue, i will do
some more testing on limiting the rates, currently in my setup its
not reaching MCS9 so cannot verify now.

Thanks for the fixes and prompt reply.
  ________________________________________
>> From: Krishna Chaitanya <chaitanya.mgit@gmail.com>
>> Sent: Friday, July 8, 2016 5:26 PM
>> To: Manoharan, Rajkumar
>> Cc: linux-wireless; ath10k
>> Subject: Re: ath10k + iw set bitrates is causing FW crash
>>
>> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
>> <rmanohar@qti.qualcomm.com> wrote:
>>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>>>
>>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>>>> no crash is observed but it still uses MCS9.
>>>>>
>>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>>>
>>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>>>> the mac80211 rates?
>>>>>
>>>>
>>> Thanks for reporting the issue. Could you please try with below change?
>>>
>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>>> index 5e1cc8f4c43c..cfa7e01a6103 100644
>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
>>>                 return ret;
>>>         }
>>>
>>> +       if (vif->type != NL80211_IFTYPE_ADHOC)
>>> +               peer_arg.peer_reassoc = reassoc;
>>> +
>>>         ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
>>>         if (ret) {
>>>                 ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
>>
>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>> seeing 0-9, so its
>> working.
>>
>> But i am seeing a weird issues, the moment i give bitrates command,
>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>> interface up/down
>> it doesn't work.
Krishna Chaitanya July 8, 2016, 3:39 p.m. UTC | #3
On Fri, Jul 8, 2016 at 9:07 PM, Krishna Chaitanya
<chaitanya.mgit@gmail.com> wrote:
> On Fri, Jul 8, 2016 at 8:57 PM, Krishna Chaitanya
> <chaitanya.mgit@gmail.com> wrote:
>> On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
>> <rmanohar@qti.qualcomm.com> wrote:
>>> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
>>>
>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>>> index 5e1cc8f4c43c..f7f04bb46fc8 100644
>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
>>>                                     sta->addr, smps, err);
>>>         }
>>>
>>> -       if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>>> -           changed & IEEE80211_RC_NSS_CHANGED) {
>>> +       if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>>> +           changed & IEEE80211_RC_NSS_CHANGED) &&
>>> +           (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
>>>                 ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
>>>                            sta->addr);
>>
>> Bottom posting please. I have tried your change i still see the same issue.
>> Right after connecting i see that packets are encrypted but once it
>> unset/set "bitrates" plain packets are seen in sniffer.
>>
>> BTW, i am not rebooting for each driver update, just re-inserting the module,
>> do i need to do a reboot for each driver change?
>
> After reboot i dont see the "unencrypted" packet issue, i will do
> some more testing on limiting the rates, currently in my setup its
> not reaching MCS9 so cannot verify now.
>
> Thanks for the fixes and prompt reply.
>   ________________________________________
>>> From: Krishna Chaitanya <chaitanya.mgit@gmail.com>
>>> Sent: Friday, July 8, 2016 5:26 PM
>>> To: Manoharan, Rajkumar
>>> Cc: linux-wireless; ath10k
>>> Subject: Re: ath10k + iw set bitrates is causing FW crash
>>>
>>> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
>>> <rmanohar@qti.qualcomm.com> wrote:
>>>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>>>>
>>>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>>>>> no crash is observed but it still uses MCS9.
>>>>>>
>>>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>>>>
>>>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>>>>> the mac80211 rates?
>>>>>>
>>>>>
>>>> Thanks for reporting the issue. Could you please try with below change?
>>>>
>>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>>>> index 5e1cc8f4c43c..cfa7e01a6103 100644
>>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
>>>>                 return ret;
>>>>         }
>>>>
>>>> +       if (vif->type != NL80211_IFTYPE_ADHOC)
>>>> +               peer_arg.peer_reassoc = reassoc;
>>>> +
>>>>         ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
>>>>         if (ret) {
>>>>                 ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
>>>
>>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>>> seeing 0-9, so its
>>> working.
>>>
>>> But i am seeing a weird issues, the moment i give bitrates command,
>>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>>> interface up/down
>>> it doesn't work.

Also can you please tell me how to make ath10k use minstrel rc, its needed
for comparative purposes? Is disable HW_RATE_CONTROL enough or does
it need more changes?
Ben Greear July 8, 2016, 3:42 p.m. UTC | #4
On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:

> Also can you please tell me how to make ath10k use minstrel rc, its needed
> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
> it need more changes?

It cannot be done.  You have to use whatever rate-ctrl is baked into the
firmware.

Thanks,
Ben
Krishna Chaitanya July 8, 2016, 3:44 p.m. UTC | #5
On Fri, Jul 8, 2016 at 9:12 PM, Ben Greear <greearb@candelatech.com> wrote:
> On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:
>
>> Also can you please tell me how to make ath10k use minstrel rc, its needed
>> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
>> it need more changes?
>
>
> It cannot be done.  You have to use whatever rate-ctrl is baked into the
> firmware.
Ok, its a good feature to have.
Ben Greear July 8, 2016, 3:47 p.m. UTC | #6
On 07/08/2016 08:44 AM, Krishna Chaitanya wrote:
> On Fri, Jul 8, 2016 at 9:12 PM, Ben Greear <greearb@candelatech.com> wrote:
>> On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:
>>
>>> Also can you please tell me how to make ath10k use minstrel rc, its needed
>>> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
>>> it need more changes?
>>
>>
>> It cannot be done.  You have to use whatever rate-ctrl is baked into the
>> firmware.
> Ok, its a good feature to have.
>

It is unlikely to happen anytime soon.  It requires significant firmware
modification (and driver too), and probably you would have to add MU-MIMO
support to minstrel if you wanted to support latest ath10k NICs.

Thanks,
Ben
Krishna Chaitanya July 8, 2016, 3:49 p.m. UTC | #7
On Fri, Jul 8, 2016 at 9:17 PM, Ben Greear <greearb@candelatech.com> wrote:
> On 07/08/2016 08:44 AM, Krishna Chaitanya wrote:
>>
>> On Fri, Jul 8, 2016 at 9:12 PM, Ben Greear <greearb@candelatech.com>
>> wrote:
>>>
>>> On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:
>>>
>>>> Also can you please tell me how to make ath10k use minstrel rc, its
>>>> needed
>>>> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
>>>> it need more changes?
>>>
>>>
>>>
>>> It cannot be done.  You have to use whatever rate-ctrl is baked into the
>>> firmware.
>>
>> Ok, its a good feature to have.
>>
>
> It is unlikely to happen anytime soon.  It requires significant firmware
> modification (and driver too),
Ok, I understand.
>and probably you would have to add MU-MIMO
> support to minstrel if you wanted to support latest ath10k NICs.
It need not be a full pledged one, but 11ac MIMO works should be
good enough (for now).
Krishna Chaitanya July 20, 2016, 10:52 a.m. UTC | #8
On Fri, Jul 8, 2016 at 9:07 PM, Krishna Chaitanya
<chaitanya.mgit@gmail.com> wrote:
>
> On Fri, Jul 8, 2016 at 8:57 PM, Krishna Chaitanya
> <chaitanya.mgit@gmail.com> wrote:
> > On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
> > <rmanohar@qti.qualcomm.com> wrote:
> >> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
> >>
> >> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> >> index 5e1cc8f4c43c..f7f04bb46fc8 100644
> >> --- a/drivers/net/wireless/ath/ath10k/mac.c
> >> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> >> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
> >>                                     sta->addr, smps, err);
> >>         }
> >>
> >> -       if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> >> -           changed & IEEE80211_RC_NSS_CHANGED) {
> >> +       if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> >> +           changed & IEEE80211_RC_NSS_CHANGED) &&
> >> +           (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
> >>                 ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
> >>                            sta->addr);
> >
> > Bottom posting please. I have tried your change i still see the same issue.
> > Right after connecting i see that packets are encrypted but once it
> > unset/set "bitrates" plain packets are seen in sniffer.
> >
> > BTW, i am not rebooting for each driver update, just re-inserting the module,
> > do i need to do a reboot for each driver change?
>
> After reboot i dont see the "unencrypted" packet issue, i will do
> some more testing on limiting the rates, currently in my setup its
> not reaching MCS9 so cannot verify now.
>
> Thanks for the fixes and prompt reply.



>
>   ________________________________________
> >> From: Krishna Chaitanya <chaitanya.mgit@gmail.com>
> >> Sent: Friday, July 8, 2016 5:26 PM
> >> To: Manoharan, Rajkumar
> >> Cc: linux-wireless; ath10k
> >> Subject: Re: ath10k + iw set bitrates is causing FW crash
> >>
> >> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
> >> <rmanohar@qti.qualcomm.com> wrote:
> >>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
> >>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
> >>>>>
> >>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
> >>>>> no crash is observed but it still uses MCS9.
> >>>>>
> >>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
> >>>>>
> >>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
> >>>>> the mac80211 rates?
> >>>>>
> >>>>
> >>> Thanks for reporting the issue. Could you please try with below change?
> >>>
> >>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> >>> index 5e1cc8f4c43c..cfa7e01a6103 100644
> >>> --- a/drivers/net/wireless/ath/ath10k/mac.c
> >>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> >>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
> >>>                 return ret;
> >>>         }
> >>>
> >>> +       if (vif->type != NL80211_IFTYPE_ADHOC)
> >>> +               peer_arg.peer_reassoc = reassoc;
> >>> +
> >>>         ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
> >>>         if (ret) {
> >>>                 ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
> >>
> >> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
> >> seeing 0-9, so its
> >> working.
> >>
> >> But i am seeing a weird issues, the moment i give bitrates command,
> >> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
> >> interface up/down
> >> it doesn't work.
Rajkumar,

I am still not able to make mcs9 work, so i have tried to change the Nss to 1
using iw, but that is not taking affect. This command is not taking effect.
Rajkumar Manoharan July 22, 2016, 11:59 a.m. UTC | #9
[...]
> >> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
> >> seeing 0-9, so its
> >> working.
> >>
> >> But i am seeing a weird issues, the moment i give bitrates command,
> >> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
> >> interface up/down
> >> it doesn't work.
>> After reboot i dont see the "unencrypted" packet issue, i will do
>> some more testing on limiting the rates, currently in my setup its
>> not reaching MCS9 so cannot verify now.
> Rajkumar,
>
> I am still not able to make mcs9 work, so i have tried to change the Nss to 1
> using iw, but that is not taking affect. This command is not taking effect.
>
you mean not able to fix VHT rates alone. am i right? By auto rate mode, is firmware selecting
mcs9? What is the command used for fixing vht rate?

-Rajkumar
Krishna Chaitanya July 22, 2016, 12:21 p.m. UTC | #10
On Fri, Jul 22, 2016 at 5:29 PM, Manoharan, Rajkumar
<rmanohar@qti.qualcomm.com> wrote:
> [...]
>> >> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>> >> seeing 0-9, so its
>> >> working.
>> >>
>> >> But i am seeing a weird issues, the moment i give bitrates command,
>> >> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>> >> interface up/down
>> >> it doesn't work.
>>> After reboot i dont see the "unencrypted" packet issue, i will do
>>> some more testing on limiting the rates, currently in my setup its
>>> not reaching MCS9 so cannot verify now.
>> Rajkumar,
>>
>> I am still not able to make mcs9 work, so i have tried to change the Nss to 1
>> using iw, but that is not taking affect. This command is not taking effect.
>>
> you mean not able to fix VHT rates alone. am i right? By auto rate mode, is firmware selecting
> mcs9? What is the command used for fixing vht rate?
Basically my requirement is to disable MCS8 and 9 for comparison.
to check whether ath10k honors the iw command, i used below
command. changing to 1SS, but i could see that it still transmits
using 2SS. Does your patch ignore these settings except for
adhoc mode?

iw set bitrates vht-mcs-5 1:0-7
Ben Greear July 22, 2016, 1:32 p.m. UTC | #11
On 07/22/2016 05:21 AM, Krishna Chaitanya wrote:
> On Fri, Jul 22, 2016 at 5:29 PM, Manoharan, Rajkumar
> <rmanohar@qti.qualcomm.com> wrote:
>> [...]
>>>>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>>>>> seeing 0-9, so its
>>>>> working.
>>>>>
>>>>> But i am seeing a weird issues, the moment i give bitrates command,
>>>>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>>>>> interface up/down
>>>>> it doesn't work.
>>>> After reboot i dont see the "unencrypted" packet issue, i will do
>>>> some more testing on limiting the rates, currently in my setup its
>>>> not reaching MCS9 so cannot verify now.
>>> Rajkumar,
>>>
>>> I am still not able to make mcs9 work, so i have tried to change the Nss to 1
>>> using iw, but that is not taking affect. This command is not taking effect.
>>>
>> you mean not able to fix VHT rates alone. am i right? By auto rate mode, is firmware selecting
>> mcs9? What is the command used for fixing vht rate?
> Basically my requirement is to disable MCS8 and 9 for comparison.
> to check whether ath10k honors the iw command, i used below
> command. changing to 1SS, but i could see that it still transmits
> using 2SS. Does your patch ignore these settings except for
> adhoc mode?
>
> iw set bitrates vht-mcs-5 1:0-7

You can set the number of spatial streams on the phy device.  Search around
for a 'chainmask' configurable.

In general, stock ath10k firmware does not have full support for setting
arbitrary bitrates options.

Thanks,
Ben
Krishna Chaitanya July 22, 2016, 2:48 p.m. UTC | #12
On Fri, Jul 22, 2016 at 7:02 PM, Ben Greear <greearb@candelatech.com> wrote:
>
>
> On 07/22/2016 05:21 AM, Krishna Chaitanya wrote:
>>
>> On Fri, Jul 22, 2016 at 5:29 PM, Manoharan, Rajkumar
>> <rmanohar@qti.qualcomm.com> wrote:
>>>
>>> [...]
>>>>>>
>>>>>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>>>>>> seeing 0-9, so its
>>>>>> working.
>>>>>>
>>>>>> But i am seeing a weird issues, the moment i give bitrates command,
>>>>>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>>>>>> interface up/down
>>>>>> it doesn't work.
>>>>>
>>>>> After reboot i dont see the "unencrypted" packet issue, i will do
>>>>> some more testing on limiting the rates, currently in my setup its
>>>>> not reaching MCS9 so cannot verify now.
>>>>
>>>> Rajkumar,
>>>>
>>>> I am still not able to make mcs9 work, so i have tried to change the Nss
>>>> to 1
>>>> using iw, but that is not taking affect. This command is not taking
>>>> effect.
>>>>
>>> you mean not able to fix VHT rates alone. am i right? By auto rate mode,
>>> is firmware selecting
>>> mcs9? What is the command used for fixing vht rate?
>>
>> Basically my requirement is to disable MCS8 and 9 for comparison.
>> to check whether ath10k honors the iw command, i used below
>> command. changing to 1SS, but i could see that it still transmits
>> using 2SS. Does your patch ignore these settings except for
>> adhoc mode?
>>
>> iw set bitrates vht-mcs-5 1:0-7
>
>
> You can set the number of spatial streams on the phy device.  Search around
> for a 'chainmask' configurable.
>
> In general, stock ath10k firmware does not have full support for setting
> arbitrary bitrates options.
Yes, i know that option but havent tried that. My intention was to limit to MCS7
so in order to verify that commands i tried to change nss.
diff mbox

Patch

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index 5e1cc8f4c43c..f7f04bb46fc8 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -5745,8 +5745,9 @@  static void ath10k_sta_rc_update_wk(struct work_struct *wk)
                                    sta->addr, smps, err);
        }

-       if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
-           changed & IEEE80211_RC_NSS_CHANGED) {
+       if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
+           changed & IEEE80211_RC_NSS_CHANGED) &&
+           (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
                ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
                           sta->addr);