[PATCH v5 06/11] wifi: ath12k: prepare EHT peer assoc parameters

Wen Gong quic_wgong at quicinc.com
Thu Jul 27 19:50:10 PDT 2023


On 7/28/2023 12:59 AM, Aloka Dixit wrote:
> On 7/26/2023 10:48 PM, Wen Gong wrote:
>> On 7/27/2023 12:38 AM, Aloka Dixit wrote:
>>> On 7/25/2023 8:43 PM, Wen Gong wrote:
>>>> On 7/26/2023 6:40 AM, Aloka Dixit wrote:
>>>> [...]
>>>>> +
>>>>> +static void ath12k_peer_assoc_h_eht(struct ath12k *ar,
>>>>> +                    struct ieee80211_vif *vif,
>>>>> +                    struct ieee80211_sta *sta,
>>>>> +                    struct ath12k_wmi_peer_assoc_arg *arg)
>>>>> +{
>>>>> +
>>>> This is the IEs of my AP below, then it will still entered into 
>>>> this branch for my ath12k station mode.
>>>> sta->deflink.eht_cap and sta->deflink.he_cap is copied from peer 
>>>> remote, for ath12k station mode, peer
>>>> remote is the AP. The field only_20mhz is only valid when the IEs 
>>>> is from a station which only support
>>>> 20 MHz.
>>>>
>>>> I think the flag from_ap should be added here as well as function 
>>>> ieee80211_eht_mcs_nss_size().
>>>>
>>>> Please correct me if wrong.
>>>>
>>>
>>> Okay, can you fix this in a follow-up patch?
>>> I don't have a device to test the station mode to verify a fix.
>>> Thanks.
>> The fix patch is simple like this (I have verified OK), you can merge 
>> it to your patch.😁
>>
>> It is to not use only_20mhz when ath12k is station mode.
>>
>
> Thanks Wen.
>
> It would be simpler if the current version, which works for the 
> majority of cases for both AP and non-AP STA mode, gets reviewed first 
> considering 10/11 patches will remain same for the next version.
> Every time I re-base the series I have to test, add cover-letter, 
> change-log in 11 patches. Seems like an overkill for a non-crash 
> related fix which can be reviewed separately.
>
> Let's see what Kalle thinks.

The change is simple here, and I have verified on WCN7850 station mode 
successfully.

I think you do not need re-base and re-test😁

Anyway, let's see what Kalle thinks.

@ -2482,6 +2482,7 @@ static void ath12k_peer_assoc_h_eht(struct ath12k *ar,
         const struct ieee80211_eht_mcs_nss_supp_bw *mcs_nss_supp_bw;
         u8 mcs_idx = WMI_EHTCAP_TXRX_MCS_NSS_IDX_80;
+       bool is_local_sta = arvif->vif->type == NL80211_IFTYPE_STATION;

         eht_cap = &sta->link[link_id]->eht_cap;

@@ -2522,7 +2523,7 @@ static void ath12k_peer_assoc_h_eht(struct ath12k 
*ar,
                 fallthrough;

         default:
-               if ((he_cap->he_cap_elem.phy_cap_info[0] &
+               if (!is_local_sta && 
(he_cap->he_cap_elem.phy_cap_info[0] &) {




More information about the ath12k mailing list