نمودار کامیت

968 کامیت‌ها

مولف SHA1 پیام تاریخ
Sheenam Monga
35c8eefa9e qcacld-3.0: Don't send sta keepalive time greater than configured val
currently if bss_max_idle_period is greater than default configured
value of sta_keep_alive then same value will be sent to FW. If any
AP sets bss_max_idle_period to greater than sta_keep_alive then reset
is not done on vdev stop due to which same value will be set for
new connection.

Fix is to not to send bss_max_idle_period as time period limit because
same value is updated in bss_max_idle_period of interface. So, default
configured value of sta_keep_alive_timer is required to be passed for
threshold validation. value reset is required once vdev stop happens
to avoid same keep alive even if bss_max_idle_period is not advertised
by AP.

CRs-Fixed: 3861815
Change-Id: I457a436a4c8a561600e93b3d5deaa0399fbd2c7d
2024-07-18 02:11:29 -07:00
Arun Kumar Khandavalli
47afce51f1 qcacld-3.0: Add ini config for enabling EPCS
Currently EPCS is enabled only via the vendor command hook,
add the ini configuration to enable/disable the EPCS

CRs-Fixed: 3838932
Change-Id: I1a887fa2a91dd68877d96169d39ea868ee675241
2024-06-19 00:42:21 -07:00
Liangwei Dong
897a0fac50 qcacld-3.0: Update gNeighborLookupThreshold INI comment
After the change in commit I75f0b76ae920c885a1150d95ea011e5612ef62fd,
the gNeighborLookupThreshold INI value will be a negative number. This
update ensures that the INI comment accurately reflects the change.

Additionally, existing INI files may still include a positive number
(e.g., 76). To maintain compatibility, the default value is updated to
-76 in case the INI files haven't been updated to use negative numbers.

Change-Id: I1c588fcbc5716d9efadf1272842d60a29c26eba6
CRs-Fixed: 3826341
2024-06-05 03:26:41 -07:00
Rahul Gusain
bd3752ec96 qcacld-3.0: Add MLD addr check for SAP Deauth/Disassoc
Currently, driver check peer mac address to filter out duplicate
command in serialization queue. This peer mac address will be
peer MLD address from North bound and link address from the south
bound. For multi-link SAP, if disassociation or deauthentication
request received for two links of same STA (MLD address is same but
link address is different), then driver queue disassociation or
deauthentication command in the serialization for both links.
This will lead to duplicate disassociation or DE authentication commands
in the serialization for same STA.

So, to fix this, add check for MLD address and link address in the
serialization filter.

Change-Id: I2619e3009b28ceba6af4383e36ae40af82020b5f
CRs-Fixed: 3790148
2024-05-28 00:20:26 -07:00
Asutosh Mohapatra
b927e5af83 qcacld-3.0: Add GET_KEEP_ALIVE_INTERVAL command support
Add support to handle GET_KEEP_ALIVE_INETRVAL command.
If received command in connected state return keep alive
period configured to firmware but if command received in
disconnected state, if user space has set keep alive
period then return the user space configured value or
else return INI configured value.

Change-Id: I5d386ecd141531795b471198bd70afa20210bdc5
CRs-Fixed: 3818096
2024-05-26 06:19:36 -07:00
Jianmin Zhu
aae35f82a8 qcacld-3.0: Fix no 320M when connect 2 + 6 MLO AP
When connect 2 + 6 GHz MLO AP, 2 GHz is assoc link, when populate per
sta profile of 6 GHz in assoc req, use BW of current 2 GHz session
wrongly, so 320M is disabled wrongly in EHT cap.

To fix it, when populate per sta profile for assoc req, pass
pe_session as NULL since partner link pe session isn't created at that
time, don't clear 320M cap for 6 GHz link.

When config EPCS, update eht cap at same time.

Change-Id: I7422f0353cc087a24575f9be1d5b30a032cc7b8e
CRs-Fixed: 3821390
2024-05-25 00:29:09 -07:00
Abhinav Kumar
6cc31cba53 qcacld-3.0: Support single PMK feature for AKM SAE_EXT_KEY
If host founds below all conditions are true:
1. Connected AP sends CCX IE in beacon/probe response
2. single PMK feature enabled via ini
   "sae_single_pmk_feature_enabled"
3. And current connection is SAE with AKM type
   WLAN_CRYPTO_KEY_MGMT_SAE_EXT_KEY or
   WLAN_CRYPTO_KEY_MGMT_SAE

Then host should mark connected AP supports
"single PMK feature" and update same to FW via RSO
command.

Change-Id: I831cfefb60271b03e5c5cbdfde0bd5277ee116e0
CRs-Fixed: 3795133
2024-05-15 00:44:44 -07:00
Surya Prakash Sivaraj
99ad149bb6 qcacld-3.0: Allow firmware to auto detect tx bssid
In the case of of 5 GHz + non-tx 6 GHz MLO connection, the scan entry
generated from the ML-probe might not carry MBSSID information of the
non-tx partner. The RNR of the assoc link will also not be inherited.
Therefore, the mbssid info is not generated for this non-tx 6 GHz scan
entry. In such cases, if there is a vdev restart, host driver sends zero
mac address in trans bssid, leading to issues with connection.

To fix this:
1. Look up the RNR db for the 6 GHz link, and determine if the bss param
corresponding to the bssid is non-tx MBSSID.
2. If it is a non-tx MBSSID and there is no mbssid info in the scan cache,
then configure the tx-bssid as broadcast mac.
3. This allows the firmware to auto-detect the tx bssid from the upcoming
beacons.
4. Also, save the neighbor entries from the beacon/probes received from
the firmware during roam sync and other events to facilitate the look-up.
5. If there is no existing entry for the roamed non-tx link, then caching
the neighbor info from the assoc partner link would store the valid entry
into the rnr db.

Change-Id: Ie5ef03fc8504cd63f6db98d2ce4af7eb5c2d7e00
CRs-Fixed: 3789675
2024-05-14 00:35:17 -07:00
Vinod Kumar Pirla
28f58fc1f3 qcacld-3.0: Relax WPA2 and WPA3-SAE HnP for MLO connection
Change the default connection dot11mode behavior of APs with
following security configuration which can support MLO:
   1) WPA2 with PMF
   2) WPA3-SAE with HnP (or H2E cap equals false)

Currently User has to force allow connection in MLO via INI or
else driver downgrades such candidates to 11ax.

Change-Id: I4ff232fc920e19e4f158eba3038abd57b045e705
CRs-Fixed: 3779433
2024-05-02 07:50:54 -07:00
CNSS_WLAN Service
9571c5520b Merge "qcacld-3.0: Remove dependency of gEnable2x2 with HtSMPS" into wlan-cld3.driver.lnx.2.0.14 2024-04-19 04:18:12 -07:00
Aasir Rasheed
3a6d1ba2ea qcacld-3.0: Enable mlo_5gl_5gh_mlsr ini
Default config
mlo_5gl_5gh_mlsr=1

Disable 5GL+5GH MLS
mlo_5gl_5gh_mlsr=0

Enable 5GL+5GH MLS
mlo_5gl_5gh_mlsr=1

Change-Id: If8ca98cc78b4b52358565e6a9e1c57d1d42f67b5
CRs-Fixed: 3779614
2024-04-15 13:14:25 -07:00
Vinod Kumar Pirla
1f2aba85c0 qcacld-3.0: Store cdp peer setup/delete history
Any MLD peer setup call to cdp shall happen only after
clearing the existing MLD peer otherwise the MLD peer's
VDEV reference is lost on recreation. This leads to
VDEV reference leak.

Add history to track the peer setup and destroy sequence,
to understand the CP peer create/destroy sequence when
any such leak happens.

Change-Id: If338bc26e086490a3cc2bb4de32efa6a762ee0e6
CRs-Fixed: 3736548
2024-03-28 01:35:23 -07:00
Abhinav Kumar
662da8cef5 qcacld-3.0: Remove dependency of gEnable2x2 with HtSMPS
As per FW, value of gEnable2x2 and gEnableHtSMPS are
independent.

Remove dependency of INI "gEnable2x2: used to enables/
disables VHT Tx/Rx MCS values for 2x2" and INI
"gEnableHtSMPS : used to enable SM Power Save".

Initialize ht_cap_info.mimo_power_save bit as per INI
"gHtSMPS: used to set default SM Power Save Antenna mode"

Update SMPS HT cap as per FW capability
WMI_HT_CAP_DYNAMIC_SMPS and ini gHtSMPS.

Change-Id: I79ad8f060adb550c738c58259fa65f073ad9b42d
CRs-Fixed: 3771123
2024-03-26 23:53:36 -07:00
Srinivas Dasari
6472be5eda qcacld-3.0: Enhance coex_unsafe_chan_nb_user_prefer for P2P mode
Currently, firmware-reported unsafe channels are ignored
and userspace configured channels are honored when
coex_unsafe_chan_nb_user_prefer ini is set. This is supported for
SAP mode only.
But some platforms may want driver to ignore the firmware-
reported coex channels for P2P-GO also.
Enhance the ini to allow user to configure mode specific
bit as mentioned below,

BIT 0: Don't honor fw coex/unsafe channel info for SAP mode
BIT 1: Don't honor fw coex/unsafe channel info for P2P-GO mode

Change-Id: I91a2c6b2da9aba411d081f6ae3b23d374fe53159
CRs-Fixed: 3766393
2024-03-26 18:59:44 -07:00
Abhinav Kumar
2610e0b2e7 qcacld-3.0: Disable UL MIMO feature as per INI
Host update “UL MU-MIMO” bit as HE cap in assoc request
based on below 2 things:
1. "enable_ul_mimo" INI
2. FW capability WMI_HECAP_PHY_ULMUMIMOOFDMA_GET

Fix is to overwrite he_cap->ul_mu feature in assoc request
configured via above FW capability with value of ini
"enable_ul_mimo".

Change-Id: I6ede13ec107a194f11a094ccd954155e859c02ec
CRs-Fixed: 3750038
2024-03-20 15:06:27 -07:00
Surya Prakash Sivaraj
6336092bcd qcacld-3.0: Support dynamic FILS enablement for dual SAP
For Dual SAP(legacy SAP + 6 GHz SAP), WFA  HE-4.1.1 cert
case requires the following:
a) If Dual SAP is enabled, the 6 GHz SSID should be
discovered via the RNR IE of the colocated legacy SAP.
b) If a co-located neighbor is present, the  6 GHz SAP
should not send FD or unsolicited probe responses.

Add support for the above the cert case by configuring the
FD support for the 6 GHz SAP based on the operation of the
co-located SAP.

Change-Id: I045911cd34bceccdb08248ae7b99beb8454a2c98
CRs-Fixed: 3732649
2024-03-12 02:02:30 -07:00
Jianmin Zhu
89e709e7af qcacld-3.0: Clear user disabled_roaming flag for new connection
User/wpa_supplicant disable roaming flag is only effective for current
 connection, it will be cleared during new connection.
 APP/wpa_supplicant can uses QCA_NL80211_VENDOR_SUBCMD_ROAMING to change
 roaming behavior for current connection.

Change-Id: If9f439f51e25e3d67f5db5557c0d8f468b071596
CRs-Fixed: 3737996
2024-03-09 16:02:57 -08:00
Abhinav Kumar
36b79ad01e qcacld-3.0: Process update ch_width request as per omn ie
AP sends "Operating Mode Notification" IE having max supported
channel width (say ap operating bw) via beacon/probe response/
association/re-association response frame.

When datapath detect leaky AP, to enable/disable, userspace
sends ch_width update to host.

Step 1. If STA founds OMN IE present in above frame, host
sends update channel width (say new AP operating BW is
80 MHz) ind via WMI_PEER_SET_PARAM_CMDID with param id 4
(WMI_HOST_PEER_CHWIDTH).

Step 2: After ch_width update to 80 MHz in FW at step 1,
if host receives a update ch_width (to 160 MHz) request
from userspace on leaky AP detection disable. Host updates
its internal channel info structure with new BW and sends
update indication to FW via WMI_VDEV_SET_PARAM_CMDID
with param id WMI_VDEV_PARAM_CHWIDTH_WITH_NOTIFY.

In case, if host allows ch_width update greater than ch_width
present in OMN IE (ap operating bw), FW only disable leaky
detection but did not update Rx/Tx BW as per new ch_width as
ap operating bw is still 80 MHz (configured at step 1).
This leads to out of sync for value of ch_width in host and
FW and IOT issues.

To keep host and FW in sync with current AP's operating BW,
add a sanity check and reject request before updating internal
channel info structure in host if new ch_width (coming from
user space) is greater than ap operating bw present OMN IE.

Change-Id: Iedc1706e32b9e08512ca6c9b98162902cd32f976
CRs-Fixed: 3732557
2024-03-05 22:17:29 -08:00
Jianmin Zhu
8a42ea9add qcacld-3.0: Use ini to set mlo link band
Force single link on 2 GHz:
mlo_support_link_num=1, mlo_support_link_band=1

Force single link on 5 GHz:
mlo_support_link_num=1, mlo_support_link_band=2

Force single link on 6 GHz:
mlo_support_link_num=1, mlo_support_link_band=4

Force 2 links on 2+5 GHz, force assoc link 2 GHz:
mlo_support_link_num=2, mlo_support_link_band=0x13

Force 2 links on 2+5 GHz, force assoc link 5 GHz:
mlo_support_link_num=2, mlo_support_link_band=0x23

Force 2 links on 5+6 GHz, force assoc link 6 GHz:
mlo_support_link_num=2, mlo_support_link_band=0x46

Change-Id: Id6f56421528a42aa7059693845fe71a206bded93
CRs-Fixed: 3722009
2024-03-03 18:54:09 -08:00
Aasir Rasheed
e9df705b4b qcacld-3.0: Use ini to set 5GL+5GH MLSR
Default config
mlo_5gl_5gh_mlsr=0

Disable 5GL+5GH MLS
mlo_5gl_5gh_mlsr=0

Enable 5GL+5GH MLS
mlo_5gl_5gh_mlsr=1

Change-Id: Iefc6944b1e915e021dc20dee64ba60ce06ea273b
CRs-Fixed: 3720188
2024-02-06 09:31:33 -08:00
Vinod Kumar Myadam
fd0e3bbfe8 qcacld-3.0: Add INI to enable/disable BTM offload for HS-2.0
Some solutions may not have HS-2.0 certification and there is
no need to forward the BTM frame to wpa_supplicant in such
solutions. Let firmware handle the frame in such cases by
enabling btm_offload so that it doesn't wakeup the host.
Firmware may roam to another AP upon BTM reception.

To enable/disable BTM offload add hs20_btm_offload_disable INI.
If this INI is enable BTM offload will be disable and if INI
is disable BTM offload will be enabled.

Change-Id: Id6e18404cc3a12a23b213c0f858c943715285932
CRs-Fixed: 3718776
2024-02-04 23:53:23 -08:00
Arun Kumar Khandavalli
d460d11504 qcacld-3.0: Reset the max supported ml links to intersected value
Currently whenever the userspace is trying to reset the previously
configured max mlo links for association, set wifi config command
with "SET_NUM_ALLOWED_MLO_LINK 0" is issued, this always
resets the max mlo value to the ini default value which is 2
rather than defaulting to the firmware/ini intersected value.

Fix is to default to the firmware/ini intersected value rather than
the default value.

CRs-Fixed: 3707990
Change-Id: Iaa7cbe32613102ccffbcf92fcb7ef0a39f96a705
2024-01-21 08:54:36 -08:00
Vinod Kumar Pirla
da746fb4d7 qcacld-3.0: Introduce INI/API to fetch OEM EHT config
Introduce INI to allow OEM vendor to configure driver
to connect to various EHT/MLO configuration APs which
are not allowed by default.

The vendor has to specify which APs to be allowed to
connect in EHT/MLO as a bitmap.

The list of configuration allowed are:
    1) Connect to WPA2-PSK APs without PMF in EHT only
    2) Connect to WPA2-PSK APs without PMF in MLO
    3) Connect to WPA2-PSK APs with PMF in EHT only
    4) Connect to WPA2-PSK APs with PMF in MLO
    5) Connect to WPA2-SAE APs without H2E in EHT only
    6) Connect to WPA2-SAE APs without H2E in MLO

Vendors may chose to connect in 802.11be without MLO
and to facilitate such configuration, the following
API is enhanced to take additional argument on whether
the given candidate can allow MLO or only EHT.
    API: wlan_cm_is_eht_allowed_for_current_security()

Change-Id: I3ea1cc0b2c7ba96d1b25aba7bc851773edf27bd8
CRs-Fixed: 3693810
2024-01-11 13:08:45 -08:00
Vinod Kumar Myadam
2aee71d4ab qcacld-3.0: Change order of enum dot11mode_11abg
Suppose INI gDot11Mode is configured as 1 dot11mode_11a, but
the enum MLME_DOT11_MODE_ABG is defined at the last, which is
causing STA to connect in dot11mode_11ac.

So, lower dot11modes should be defined first. Change the order
of dot11mode_11abg to the initial enum value.

Change MLME dot11mode mapping to CSR dot11mode, passing to
csr_convert_mode_to_nw_type function.

Change-Id: I71972bed1b6ac25f809c980e9fff4829fae7e4ff
CRs-Fixed: 3686458
2024-01-08 04:48:24 -08:00
Asutosh Mohapatra
3ba7cdeb68 qcacld-3.0: Add ini to disable mcs 12 13 for 2.4 GHz 40 MHz SAP
Add ini to disable mcs 12 13 for SAP operating in
2.4 GHz with 40 MHz bandwidth.

Change-Id: I78ed90bf6bab80a8f81f7a0640b9aca9d2736f4d
CRs-Fixed: 3672437
2024-01-03 00:25:32 -08:00
Jianmin Zhu
c1bcfdb534 qcacld-3.0: Stop periodical pdev stats report when stop monitor mode
Send periodic fw stats to get chan noise floor when monitor mode
start, but not stop it when  monitor mode stop,
pdev stats event is received even when event handler unregistered,
race condition lead to assert.

To fix it, when monitor mode stop, stop periodical pdev stats report
first.

Change-Id: I58a0ced84aca74a7228064067bb096803cf952fd
CRs-Fixed: 3667212
2023-12-29 04:00:12 -08:00
Vijay Raj
f2419e60c1 qcacld-3.0: Add support to disable MLMR mode in ULL mode
Add ini support to forcefully disable MLMR mode in Ultra low
latency mode.

Change-Id: If524e5d2a2b3bc88fe9a3f096e24a8023bc4366f
CRs-Fixed: 3689784
2023-12-27 07:30:20 -08:00
Sheenam Monga
4bce8122a0 qcacld-3.0: Don't set link_agnostic to true if dest addr is not AP addr
Currently, mlo_link_agnostic is set to true without validating
destination address which means FW is free to choose
transmission link L0 or L1 due to which GAS frame TX is failing.

Fix is to set mlo_link_agnostic to false when dest address is not
AP address, so that FW can choose freq as per channel which is
sent as part of mgmt frame.

Change-Id: Icacc4ce06b0eda341342ac1cdcf347de74e59e39
CRs-Fixed: 3666152
(cherry picked from commit d3cbd7154a31479cb79230643a0a8818b41d2a67)
2023-12-26 22:09:56 -08:00
Liangwei Dong
7a843bc437 qcacld-3.0: Add vendor command support for query TPC information
Add support for QCA_NL80211_VENDOR_SUBCMD_REGULATORY_TPC_INFO vendor
command to return the STA TPC information used within the BSS.
If STA is ML STA, multiple link TPC information will be returned to
userspace.

Change-Id: I6fd30893c057c876e9a01e112595e5cb0c906a70
CRs-Fixed: 3665538
2023-12-25 16:57:18 -08:00
Asutosh Mohapatra
a901bcc17e qcacld-3.0: Send additional interface combinations to fw
As part of set feature set command, update STA_P2P,
STA_SAP, STA_NAN, STA_TDLS, STA_SAP_P2P, STA_SAP_NAN,
STA_P2P_NAN, STA_P2P_TDLS, STA_SAP_TDLS, STA_NAN_TDLS,
STA_SAP_P2P_TDLS, STA_SAP_NAN_TDLS, STA_P2P_P2P_TDLS,
STA_P2P_NAN_TDLS iface combinations to fw.

Also use WLAN_FEATURE_NO_P2P_CONCURRENCY sta dual p2p
support combination.

Change-Id: I315c219f79995dedb0c2856d326838351d8a3d5e
CRs-Fixed: 3674696
2023-12-14 09:10:17 -08:00
Chunquan Luo
357d04615d qcacld-3.0: Add set bandwidth MLO 3links support
Driver cache all links channel bandwidth config from user space,
when link switch happened, and connect complete, send bandwidth
of the link id to fw.

CRs-Fixed: 3625801
Change-Id: I7d4a13075b62c9c8928d2c33bd309e9c5b085171
2023-12-06 10:54:45 -08:00
Srinivas Dasari
2332eb23d0 qcacld-3.0: Maintain chan_switch_in_progress flag for MLD also
Currently, chan_switch_in_progress flag is maintained per vdev.
This info is needed at MLD level also to differentiate between
current MLD STA and concurrent STA. This can be used to decide
whether to allow link switch or not.
Also, don't process session beacon if link switch is in
progress to avoid CSA upon detecting any change in the Operation
IEs(HT_INFO/VHT_OP/HE_OP/EHT_OP, etc..).

Change-Id: I9cca40f4953a390c71758896097c6a119951abe7
CRs-Fixed: 3660868
2023-12-01 02:34:46 -08:00
Srinivas Dasari
591177a99b qcacld-3.0: Modify the min value of sae_auth_failure_timeout
Currently, the expected range of sae_auth_failure_timeout
is 500-1000ms. DUT sta retries SAE authentication frame if it
hasn't received response within the configured time. But there
can be APs where there might be a timeout at AP and AP proceeds
with next frame(SAE confirm response) if the previous frame
is not acked by STA or SAE confirm request is not received
within this time.
Custom platforms may want to address this by retrying more
aggressively, e.g. retry within 100ms.

Add provision for the same by making min value as 100 ms.

Change-Id: I09fa57808edc6c00bda2dbe5d988558c7ef48e17
CRs-Fixed: 3662150
2023-12-01 02:34:39 -08:00
Aasir Rasheed
3ce28bb3b3 qcacld-3.0: Add config to enable/disable 5GL+5GH MLSR
By default 5GL+5GH MLSR is allowed if mlo_5gl_5gh_mlsr
is set to 1.

Change-Id: Ie881160900babc900e42007b9eb6bc2edb09cdec
CRs-Fixed: 3662634
2023-11-24 02:35:46 -08:00
Abhinav Kumar
f8a690b38f qcacld-3.0: Add ini support to control update cw
Add support for INI update_cw_allowed to enable or
disable update channel width via vendor command
QCA_WLAN_VENDOR_ATTR_CONFIG_CHANNEL_WIDTH

Change-Id: I1f4ab2c7ca8dacb93442803336d59a4a5ffb1b47
CRs-Fixed: 3659655
2023-11-14 05:28:34 -08:00
Arun Kumar Khandavalli
cc3e7e51d8 qcacld-3.0: update the return status properly for wlan_mlme_get_sta_ch_width
Return status of the wlan_mlme_get_sta_ch_width is always
returning error resulting in caller not updating with
the phymode correct the vdev object.

When the kernel is querying phymode via cfg80211_get_channel driver is
returning invalid bandwidth post roam resulting in kernel warning.

Fix this by returning proper status in wlan_mlme_get_sta_ch_width

CRs-Fixed: 3641158
Change-Id: I013f75a3e06768127ffc72776eef6885633e927a
2023-11-08 01:01:50 -08:00
Vinod Kumar Myadam
0d8eee9b75 qcacld-3.0: change enable_responder_11az_support to bitmap
Currently the ini "enable_responder_11az_support" is a boolean
value and applicable for enabling all the RSTA operations- 11az
TB and NTB ranging. Change the usage of existing ini
"enable_responder_11az_support" into a bitmap as below:
BIT 0 - 11az NTB
BIT 1 - 11az TB

Change-Id: I744e614eae4d89d9ff5d0e86398c0c94c8160d77
CRs-Fixed: 3651115
2023-11-08 01:01:43 -08:00
Surya Prakash Sivaraj
298b451a67 qcacld-3.0: Update the connect ies to prevent 40 MHz roam
If "override_ht20_40_24g" ini is set, the host driver disables
the HT40/HE40 caps for 2.4 GHz after connection via SET IE. The
firmware uses this for roam. However, if reassoc comes from userspace
with the HT40 cap different from the initial connect, then host
does not update the IEs based on new cap. This leads to mismatch
between user configuration and firmware roam.

To fix this, modify and send the HE40/HT40 caps via SET IE for
every connect request. Reset it after disconnection to the default
self cap.

Change-Id: I58e14e8ae8e8842e1d79a0284c4240ac7d279272
CRs-Fixed: 3651600
2023-11-07 19:04:37 -08:00
Srikanth Marepalli
b1e3fd5c90 qcacld-3.0: [11ABG] Add dot11mode changes to support 11abg
Add new dot11mode in MLME and update the utility functions to
derive the dot11mode based on the INI config and AP dot11 mode.

Change-Id: Ic53ab0cdd94dce75d6928270bc8bf4f8539ac96f
CRs-Fixed: 3653767
2023-11-03 10:04:32 -07:00
Abhinav Kumar
4396f1e66f qcacld-3.0: Use proper center freq in case of 320 MHz connection
To trigger wide band scan in case of 320 MHz initial connection,
Host should use value of cen320_freq at the time of initial
connection.

Fix is to use value of cen320_freq present in struct
mlme_priv->connect_info.assoc_chan_info.cen320_freq.

Change-Id: Ia6b823e88d50a33259621a0cd564ae9fa06ced13
CRs-Fixed: 3651649
2023-11-03 10:03:45 -07:00
Chunquan Luo
28e8075589 qcacld-3.0: Update bss rate flag for correct link
Use default link info is incorrect for mlo link.
Fetch link info by link id and update the bss rate flag.

Change-Id: I72a6747308b9873e18ea2bcb1b95cb915e668970
CRs-Fixed: 3643925
2023-11-02 14:16:41 -07:00
Jianmin Zhu
a68e8b7311 qcacld-3.0: Add cfg to disable puncture in US LPI mode
Add cfg to disable puncture in US LPI mode per FCC requirement,
set to false by default.

Change-Id: Id01f952b2a74ad64216a66d2d292166211440c4b
CRs-Fixed: 3649640
2023-11-02 14:16:29 -07:00
Chunquan Luo
cf59788437 qcacld-3.0: Update roam AP BSSID to user space for roam issue
User space need roam AP BSSID info to analyse roam issue.
Driver cache AP BSSID during roam and update to user space when
get roam stats info by QCA_WLAN_VENDOR_ATTR_ROAM_STATS_INFO.
Change the roam frame number from 6 to 54, means update all
roam failed and successful frame to user space.

Change-Id: I22b3d917e7e0b4f322142ab359fa135cd588d8f7
CRs-Fixed: 3611826
2023-10-26 16:08:35 -07:00
Jianmin Zhu
bd2a4c5c4c qcacld-3.0: Update puncture bitmap along with chan width
When update channel width of current vdev, need update puncture bitmap
to avoid mismatch.

Change-Id: I0487b251524421611cee2ec33f036a037efa42ea
CRs-Fixed: 3646904
2023-10-26 16:08:29 -07:00
Srinivas Dasari
3e9ba88776 qcacld-3.0: Limit SAP restart bw to current operating bw
SAP restart happens when a concurrent STA comes up in the
same band. Currently, the new bw is calculated based on channel
supported max bw. If SAP moves from one 6 GHz channel to another
6 GHz channel, the new bw would be calculated as 320 MHz even if
the current SAP operating bw is 160 MHz. But SAP bw should be
limited to current operating bw as it might have got downgraded
to 160 MHz as part of sap_bw_update algo.
Considered current operating bw when SAP restart happens as part
of sap_bw_update.

Change-Id: If310b0ad9f914b438ae3c1968ca8f1ee26d57589
CRs-Fixed: 3637263
2023-10-25 20:10:41 -07:00
Jianmin Zhu
213929b71e qcacld-3.0: Disable puncture in US LPI mode
Disable puncture in US LPI mode per FCC request.
If bad FCC AP is detected, send WMI_VDEV_PARAM_CHWIDTH_WITH_NOTIFY with
reduced bw after setkey is done.

Also add the same bad FCC AP detection logic in HDD where bw increase req
from SS framework is handled.

When handle beacon update, also FCC AP detection logic to avoid wrong
channel switch.
If the AP removes or reduces puncturing pattern in new beacon, send
WMI_VDEV_PARAM_CHWIDTH_WITH_NOTIFY with increased bw.

For roaming case, after roaming, host will receive new beacon with new
bpcc, same as beacon update, use the same bad FCC AP detection logic and
send WMI_VDEV_PARAM_CHWIDTH_WITH_NOTIFY with updted bw right away or after
setkey is done (in case of hybrid roaming like OWE).

Change-Id: I6e85de879575d5c0a1960527f9018b4b33bf18d6
CRs-Fixed: 3631634
2023-10-25 16:34:07 -07:00
Abhinav Kumar
969f28aeaf qcacld-3.0: Trigger wide band scan as per OPTIE of chan load req
AP can send channel width and related information via below OPIE:
1. Wide Bandwidth Channel Switch (Subelement ID 163)
2. Bandwidth Indication (Subelement ID 164)

Trigger wide band scan as per values present for above IEs present
in channel load request.

Change-Id: I013389972f0f72395488a2405e4b0dcbff39dd42
CRs-Fixed: 3629109
2023-10-20 13:06:42 -07:00
Ashish Kumar Dhanotiya
252f127360 qcacld-3.0: Update logging format for BS state machine
With this change add a logging format for bearer switch
state machine.

Change-Id: I4f75b402c163eb6872d1c478845f3e76842d5cae
CRs-Fixed: 3642471
2023-10-20 07:59:23 -07:00
Srikanth Marepalli
f1d00fad4c qcacld-3.0: Add vendor attribute for high RSSI roam trigger threshold
Currently the roam scan high RSSI delta is configured via INI.
Define an attribute to allow user configure high RSSI roam
trigger threshold. STA is expected to trigger roam if the current
connected AP's RSSI gets above this high RSSI threshold. STA's
roam attempt on high RSSI threshold aims to find candidates from
other better Wi-Fi bands.
This attribute value is given priority over the INI.
Use a new service bit WMI_SERVICE_5GHZ_HI_RSSI_ROAM_SUPPORT to
enable high RSSI roam trigger in 5 GHz as well.

Change-Id: Ide48ad2261b603de36bd1b31114b91c3a9d6606f
CRs-Fixed: 3586170
2023-10-18 00:51:55 -07:00
Liangwei Dong
b388f1d8b8 qcacld-3.0: Fix standby link removal fail
Add callback mlme_vdev_reconfig_notify_standby to cld code to
handle standby link removal.
For standby link, it is going to be removed by AP, so don't
start link removal timer for it. Force inactive it to avoid
link switch to it.

Change-Id: Ib28e6b043f582e0fff2f4702e32ff222fc3428d3
CRs-Fixed: 3629633
2023-10-17 15:52:49 -07:00