Revīziju grafs

904 Revīzijas

Autors SHA1 Ziņojums Datums
Guisen Yang
897bca02be qcacld-3.0: Change CFG_STA_BSS_MAX_IDLE_PERIOD to configurable
The item "bss_max_idle_period" is not an ini item and we can only
use it's default value 0. It's not convenient to set it a value
that user required. So set it to an ini item.

Change-Id: Ie514992448cde192ffd6f1402a4477fabbbae741
CRs-Fixed: 3591728
2023-09-21 22:16:28 -07:00
Rahul Gusain
2fc9fe88ca qcacld-3.0: Enable wide band scan for 2 link also
Currently, when user connect STA with 2 link AP and sends
"MEASURE_ML_CHANNEL_CONDITION" command to driver, the driver report
error. This is due to driver tries to fetch the link info for
3 link but only 2 link info is available. Hence, it gets invalid
link id for third link.

To fix this, add check for number of links and extract the data for
available links only.

Change-Id: I5a25e0a4c8610703959390b62a530b784b5c766a
CRs-Fixed: 3616274
2023-09-20 20:09:31 -07:00
Vijay Raj
3f5473b0b8 qcacld-3.0: Modify support for connecting event logging
Connecting event logs are to be sent after candidate
selection and not immediately after receiving
connect request.

Modify the connecting event logs to be sent after
sta info event logs.

Change-Id: I83b654ba0ef3458368ba7dd6353c5ab67077ec39
CRs-Fixed: 3599703
2023-09-20 20:09:03 -07:00
Srinivas Dasari
6c56b0813e qcacld-3.0: Reset the chan_switch_in_progress in failure cases
When host driver receives CSA event from firmware, lim posts
VDEV_RESTERT request with the CSA info. But the channel
switch operation may fail in further APIs due to any
reason(e.g. channel not valid for switch). Failure status is not
forwarded till lim in such cases as vdev SM always returns
true(success) when it handles the message.
So, the flag doesn't get reset in such cases.
Reset the flag in lim handler of VDEV_RESTART request when it
fails to send VDEV_RESTART command to firmware.

Change-Id: Iceeabd9cab46107ce7e2d14af121b0155c27673c
CRs-Fixed: 3602751
2023-09-17 02:35:39 -07:00
Pragaspathi Thilagaraj
9894e86760 qcacld-3.0: Send RSO stop for assoc vdev during link switch start
When link switch happens internal disconnect sequence happens on
that vdev, but RSO stop is not sent for assoc vdev during below
scenario:
1. Disconnect gets triggered from userspace when VDEV-0 is in
middle of link switch.
2. At the time of the disconnect, vdev-1 is assoc vdev and vdev-0
is link vdev.
3. For the disconnect request, first disconnect serialization is
posted for assoc vdev(0) and then for link vdev(1).
4. After the serialization is posted, link switch connection
succeeds and vdev-0 again becomes assoc vdev and vdev-1 becomes
link.
5. Now, serialization posted in #4 gets dequeued and assoc vdev
gets cleaned up first.
6. Link vdev-1 gets cleaned up next, and it posts RSO STOP for
assoc vdev and waits for response. However, vdev-0 is already
cleaned up.
7. Therefore, vdev-1 gets stuck in wait-for-rso-stop response
and leads to active command timeout.

RSO start for this assoc vdev will be sent after link switch
is complete when keys are installed.

So send RSO stop for assoc vdev during link switch start

Change-Id: I5563dacef6610fc7039b1d05798edf4b6364eebd
CRs-Fixed: 3612704
2023-09-17 02:35:18 -07:00
Gururaj Pandurangi
73be1b7d8d qcacld-3.0: Add support to configure MLD ID in scan request
In the MLO-MBSSID test, STA can request information of
non-Tx BSS through Tx BSS by configuring non-Tx BSS MLD ID
within the ML probe request that is invoked as part of scan
request. Add support to configure MLD ID in scan start
params to FW.

Change-Id: Iec5a144e597a7f6b9b741f279e4424f975c5115c
CRs-Fixed: 3561040
2023-09-15 17:33:29 -07:00
Gangadhar Kavalastramath
e9e8c4d57c qcacld-3.0: Configure STA with default non-SRG SR parameters
Currently, STA cannot perform SR when SAP does not include SR
IE in Beacon/Probe response/Assoc response.

This change is done to configure default non-SRG OBSS PD
parameters in FW in this case.

Change-Id: Ic37e5f011cb7e07ebbe4acef56b8c36c4e08c285
CRs-Fixed: 3551808
2023-09-15 17:33:22 -07:00
Gangadhar Kavalastramath
42f90e43f6 qcacld-3.0: Add SRPS IE in Beacon if defined in hostapd.conf
SRPS IE is not included in beacon, when Non-SRG OBSS PD SR Disallowed
bit is set in he_spr_sr_control hostapd configuration parameter.

Code changes are done to update beacon template to include SRPS IE to
communicate to all the connected STAs that, the Non-SRG OBSS PD based
SR transmissions are not allowed in the BSS.

Change-Id: I4090099de20fe383f16e60ad871faa4f42549a24
CRs-Fixed: 3533287
2023-09-14 08:41:17 -07:00
Jyoti Kumari
00a4ef030d qcacld-3.0: Get sorted ACS channel list
Get sorted ACS channel list to select channels for ll_lt_sap

Change-Id: Id653136321a22ec091c5b4fe167911f8ea1d4b38
CRs-Fixed: 3567422
2023-09-14 01:33:07 -07:00
Rahul Gusain
59b19dff23 qcacld-3.0: Code refractor for ML debug id
Currently, in some API such as
"wlan_cfg80211_tdls_add_peer_mlo", when driver gets vdev, it is
MLO vdev, so it uses WLAN_MLO_MGR_ID ID, but when it tries to put
the vdev, since disconnection happens and mlo flag is cleared,
so it uses WLAN_OSIF_TDLS_ID ID which is non-ML vdev.
This causes release of vdev reference from different id for which
it never takes reference and result in crash.

To fix this, use same debug id throughout function. For that,
generalize the get_ml_vdev API by passing the debug id as
argument to the function.

Change-Id: I903185ec9b64cc67cc2e0c595ba88b7b0ca8ded2
CRs-Fixed: 3603012
2023-09-13 14:19:19 -07:00
Abhinav Kumar
49c7a74dbf qcacld-3.0: Init channel load and statistics rrm caps
During rrm_initialize () set RRM cap for Channel Load
and statistics to enable by default. Same rrm capabilities
driver sends to AP in association request during connection.

Change-Id: I3a9d87b8bd8b28b84ccc3578fff2ad1c7ebd8a6e
CRs-Fixed: 3609838
2023-09-12 14:41:14 -07:00
Jianmin Zhu
bcad2864be qcacld-3.0: Active ini he_max_ampdu_len
Active ini he_max_ampdu_len and change default value from 0 to 3.
Use min(ini,  he_max_ampdu_len from F/W band/MAC cap) as final
he_config.
Mdm platform need set different value to pass throughput KPI.

Change-Id: Ib0580a0e68b72b6b7cd02d327ba643cfd1508080
CRs-Fixed: 3609154
2023-09-12 14:40:37 -07:00
Gururaj Pandurangi
faeed38706 qcacld-3.0: Reset BTM abridge flag for Cert cases
For BTM certification cases, FW is unable to roam to
testbed AP BSS due to scoring logic. Reset the BTM
abridge flag that is used to enable FW to select
candidates based on score.

Change-Id: I29b6e1b5dea969263eb263103c6d2c10d5047f20
CRs-Fixed: 3591574
2023-09-12 14:40:12 -07:00
Aravind Kishore Sukla
a05c70ac06 qcacld-3.0: Configure CFG_T2LM_NEGOTIATION_SUPPORT as INI
As per customer requirement, to enable or disable t2lm support
configure CFG_T2LM_NEGOTIATION_SUPPORT as INI.

Change-Id: I8eb4c78a04bbaa5ce0c155d04ddb793d31b092ee
CRs-Fixed: 3608649
2023-09-11 03:38:27 -07:00
Aasir Rasheed
de4b1f31e9 qcacld-3.0: Add mlo context to get link info
Currently, Host driver uses vdev object to retrieve
mlo link info. However, there is a need to use
mlo dev context in case of standby link.

This change is to use mlo dev context for fetching
link info, As it is available for both psoc and vdev.

Change-Id: Idccf91eb191a9fc24108648b885d6e9c7832a051
CRs-Fixed: 3568936
2023-09-09 19:31:37 -07:00
Rahul Gusain
dcd5823e12 qcacld-3.0: Update freq in wide scan req
Currently, when user executes "MEASURE_ML_CHANNEL_CONDITION" command,
it provide frequency parameters for two link only as driver fills
the frequency, phymode and other parameters in scan request for
two links only. This is because driver fills for
"WLAN_UMAC_MLO_MAX_VDEVS".

To enable this for three link, driver fill the scan requent from
link context which have link information for "WLAN_MAX_ML_BSS_LINKS".

Change-Id: Ic8e1313b35c6ae916a4494cdbfbd7b0828eddc7a
CRs-Fixed: 3576619
2023-09-09 12:56:34 -07:00
Gururaj Pandurangi
f30be587ea qcacld-3.0: Offload BTM to FW even with RSO disable
For certain cert cases, roaming is disabled through
CAPI. Supplicant sends RSO disable to Host and the Host
disables BTM offload as well as part of roam disable.
But, for cases like load balancing, Firmware has the
logic to handle BTM requests with disassociation
imminent bit set to 1, by sending an event to Host to
trigger a T2LM request action frame rather than a BTM
response. Thus, set BTM offload bit even when roaming
is disabled to allow FW to handle BTM request frames
instead of supplicant.

Change-Id: Iaa0cbbce62dbb76518880ef2470d6d0819c501db
CRs-Fixed: 3590733
2023-09-09 03:35:53 -07:00
Sheenam Monga
d453172923 qcacld-3.0: Don't return bool value instead of uint
Currently, some mlo APIs returns false if mlme_obj is
not found but return type expected is uint8_t.
So, return 0 instead of false in case of error.

Change-Id: I52d0fd82520bb046a7a80381d53f97c95b32d0d1
CRs-Fixed: 3608559
2023-09-08 04:10:17 -07:00
Abhinav Kumar
9e1471bd14 qcacld-3.0: Fill proper channel(s) in wide band scan request
In case of 320 MHz BW, 6 GHz channel numbers are overlapping
with existing 2.4 GHz and 5 GHz channel numbers.

If DUT connected with one of overlapped channel, To identify
exact band and corresponding bonded channels driver should
pass 320 MHz center frequency to
wlan_reg_get_bonded_chan_entry() as a argument along with
connected 6 GHz frequency and channel width.

Fix is to use 320 MHz center frequency to compute bonded
channels in mlme_update_freq_in_scan_start_req().

Change-Id: I7616f0379d64e33f9bd4a208253db0a390158f77
CRs-Fixed: 3606575
2023-09-08 04:10:04 -07:00
Chunquan Luo
f1aabdebab qcacld-3.0: Update Roaming AP BSSID to user space
Currently, roam stats don't cache Roam AP BSSID and don't update
to user space.
If roam successful, save R_AP and P_AP, if roam failed, save P_AP
and save C_AP if exist, then update to user space.

CRs-Fixed: 3580957
Change-Id: Ib0048c34701a7750f9261ba5cbd1bc65eb41582c
2023-09-08 04:09:32 -07:00
Liangwei Dong
e65c3b8bea qcacld-3.0: Allow dynamic channel width update for 2.4 GHz STA
There is a requirement to downgrade/upgrade STA band width on 2.4 GHz
without reconnect. Change driver to allow such request from vendor
command by QCA_WLAN_VENDOR_ATTR_CONFIG_CHANNEL_WIDTH attribute.

Change-Id: I6642963d90eafc388b6c20c0ce393e6fec58b374
CRs-Fixed: 3594338
2023-09-08 04:09:06 -07:00
Vijay Patil
52e5d326f6 qcacld-3.0: Add support to handle PEER_OPER_MODE_CHANGE event
Firmware sends PEER_OPER_MODE_CHANGE event to host in SAP
mode when a connected client indicates upgrade/downgrade
of its bandwidth.
Host needs this data as any further SAP bandwidth
upgrade/downgrade should honor the indicated bandwidth for
that specific peer.

Change-Id: I50fecf670b47c56e3f33b8519fde1d5eaec7523f
CRs-Fixed: 3604716
2023-09-05 15:13:55 -07:00
Srinivas Dasari
db3618ad48 qcacld-3.0: Include BW_IND_ELEM IE in beacon and ECSA frames
Include BW_IND_ELEM IE in beacon and ECSA frames while advertising
CSA. This is needed when upgrading the bandwidth to 320 MHz.
Send the ECSA IE with switch count as 1. Use a timer to reset it
after sending the beacon out.

Change-Id: I6c38ef1ce4629b7a67bcbf803c7dbcced05ade33
CRs-Fixed: 3604422
2023-09-05 08:25:59 -07:00
Srinivas Dasari
26a2f2e4ce qcacld-3.0: cache SAP current oper bw in vdev mlme priv obj
SAP operating bandwidth may get updated due to concurrencies.
This might be temporary and SAP moves back to its original
bandwidth once concurrency is gone. So, add set and get APIs
to maintain the SAP current operating bandwidth.
These can be used during/after bandwidth update operations.

Change-Id: I386ad20bcbd0902672a890bde510ecc50e58512b
CRs-Fixed: 3600223
2023-09-03 22:32:54 -07:00
Abhinav Kumar
663120a684 qcacld-3.0: Send proper control mode value to upper layer
1. Upper layer sends QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONTROL_MODE
vendor command to configure control mode in host/fw.
2. Host receives GET_ML_LINK_STATE driver command to return
control mode (configured at step 1) to upper layer.

Host should reply as a response of GET_ML_LINK_STATE with same
value of control mode configured at step 1 to upper layer.

Change-Id: I6ae82c2a1c0e4ff13cea678bf27916a3cda8ad81
CRs-Fixed: 3595730
2023-08-31 11:00:21 -07:00
Prasanna JS
8f12b73f1d qcacld-3.0: Update beacon Tx rate configuration implementation
Update beacon Tx rate configuration implementation
for lithium onwards targets

Change-Id: I864b7eedb36b8f4a4804baf42f2b4c762d6868dc
CRs-Fixed: 3593181
2023-08-30 16:44:02 -07:00
Prasanna JS
0ed9d7c8cc qcacld-3.0: Move assemble rate code functionality to mlme
Move assemble rate code functionality to mlme

Change-Id: I8acb04f2e09be742f95d38a4688e07c1d011f4e8
CRs-Fixed: 3593174
2023-08-30 16:43:56 -07:00
Gururaj Pandurangi
ad0d63a599 qcacld-3.0: Change TPE IE parsing logic for Client mode
Currently, if the AP advertises both Local and Regulatory
TPE IEs in the beacons, STA uses an INI to choose one over
the other. Vendor ask is to change this logic and allow STA
to use the minimum of the two TPE power limits. Also,
deprecate the INI that sets the preference between local
and regulatory TPE IEs.

CRs-Fixed: 3574510
Change-Id: Ibf19020d59621efa72cf290ef34c825fdb50e3e7
2023-08-30 01:37:29 -07:00
Chunquan Luo
5208f9f8e4 qcacld-3.0: Set max bandwidth with link id
Support wpa_cli driver SET_MAX_BW with two params:
[bw_index][link_id].

Change-Id: Id2a872152e308e94389cd1068013d7661b37659b
CRs-Fixed: 3522561
2023-08-28 21:12:08 -07:00
Vinod Kumar Myadam
bca37ddeea qcacld-3.0: Add support to get num tx/rx chains
Add support to get num tx and rx chains.

Change-Id: Iae8e3d15679e5e9ca139c59e6880a5d733ee17ef
CRs-Fixed: 3596086
2023-08-28 21:11:50 -07:00
Ashish Kumar Dhanotiya
62bd1008e4 qcacld-3.0: Remove duplicate API wlan_get_opmode_vdev_id
There are two APIs wlan_get_opmode_vdev_id and
wlan_get_opmode_from_vdev_id present in the host driver for the
same task.
With this change, remove the duplicate API wlan_get_opmode_vdev_id
from the host driver code.

Change-Id: I7ff45610ff18da9c002e22c5be06f1414d3835bc
CRs-Fixed: 3593560
2023-08-28 21:11:44 -07:00
nakul kachhwaha
1ac61ce509 qcacld-3.0: Enable Flex. TWT based on TWT Req/Resp Capability
Enable Flexible TWT when TWT feature is enable and either of
the TWT Requestor or Responder capability is enable.

Change-Id: I2f2b1c311d9aba6e09d309e83f37098175b80767
CRs-Fixed: 3422493
2023-08-25 06:04:29 -07:00
Surya Prakash Sivaraj
f3969f6436 qcacld-3.0: Prevent runtime suspend during disconnect
In MLO cases, system enters into runtime suspend in
between the disconnect processing of two links. This
leads to delay/timeouts in MLO disconnect processing.

To fix this, acquire runtime lock between disconnect
start and disconnect complete if_manager events.

Keep the runtime lock at vdev level to handle async
disconnects triggered by the driver and link-only
disconnects during roaming.

CRs-Fixed: 3588246
Change-Id: Ida48127d8597aecd8b6f5347c70ba5e9a2045d11
2023-08-24 01:26:07 -07:00
Ashish Kumar Dhanotiya
66f468f156 qcacld-3.0: Disable FILS discovery for LL_LT_SAP
Based on new requirement, disable FILS discovery for
LL_LT_SAP.

Change-Id: If136bc272ba29a39f9748b01c53e35cac79f79b1
CRs-Fixed: 3585674
2023-08-22 11:06:47 -07:00
Pragaspathi Thilagaraj
62e8fc78a0 qcacld-3.0: Update version for some supported feature set
Update version for vendor request 1 and vendor request 2 as
below:
vendor_req_1_version: WMI_HOST_VENDOR1_REQ1_VERSION_4_00
vendor_req_2_version: WMI_HOST_VENDOR1_REQ2_VERSION_3_50

Change-Id: Ieaa25a9c2b98f4c73cb89462463dd88ba5d11b53
CRs-Fixed: 3590251
2023-08-18 18:09:34 -07:00
Abhinav Kumar
be6f4c4190 qcacld-3.0: Add support for Channel load request frame
As per new requirement, to improve Wi-Fi Roaming behavior
DUT should support channel load request received as part
of rrm measurement.

The Channel Load request/report pair returns the channel
utilization measurement to AP as observed by the measuring
STA.

Change-Id: Idf1b5581222e1fbed3426d94edd8768234ff6a43
CRs-Fixed: 3580180
2023-08-17 01:39:00 -07:00
Jyoti Kumari
4f6b354391 qcacld-3.0: Move tSapChSelSpectInfo structure to mlme component
Move tSapChSelSpectInfo structure from sap component to mlme
component so that it can be use by LL_SAP as well

Change-Id: Ic3c2919054326aca3530071df27d425bb78a699a
CRs-Fixed: 3561182
2023-08-16 13:35:37 -07:00
Amruta Kulkarni
8b495ff353 qcacld-3.0: Update mlo_support_link_num from cfg to ini
Change made to mlo_support_link_num from cfg to ini parameter.

Change-Id: I02251725fca7d0d550e87d806dda82f542e18879
CRs-Fixed: 3588980
2023-08-16 13:35:20 -07:00
Pragaspathi Thilagaraj
8a8f33379e qcacld-3.0: Update mlo_support_link_num to 3
Update the mlo_support_link_num config to 3. This will enable
support to connect/roam to 3 Link AP with 3 links advertised.

Change-Id: I6241f7024271208c8d1584549edb91cc37fadcb8
CRs-Fixed: 3582858
2023-08-11 14:58:49 -07:00
Arun Kumar Khandavalli
ad3cf51017 qcacld-3.0: Add support to use MLD addr for one link
If INI is enabled don't derive first link's MAC address
and directly use MLD address in that place and derive
next link addresses.

Change-Id: I3c2b9f64df3f75799adf8718ee83d157f6dd9097
CRs-Fixed: 3584062
2023-08-10 22:11:09 -07:00
Bing Sun
fb4305e446 qcacld-3.0: add roam trigger bitmap sysfs functionality
Add support to configure roam_trigger_bitmap.

Change-Id: I1a7329910e5276469fa7cf0711d412cc8850d98b
CRs-Fixed: 3563225
2023-08-06 22:46:47 -07:00
Bing Sun
25f5c0058e qcacld-3.0: add wds mode sysfs functionality
Add support to configure wds_mode.

Change-Id: I19b7c797083a75d2aebf53d574484def5a4ec9e1
CRs-Fixed: 3563193
2023-08-06 22:46:42 -07:00
Liangwei Dong
20b3165adb qcacld-3.0: Add link removal flag in link info
At present, the link removal flag is in vdev object, but vdev may
repurpose to other link, the link removal flag has to be in link
info struct.
Add link removal flag in link info data struct and remove
it from vdev struct.

Change-Id: I6116e89f2bb065979f4e405ef0fac386abebcf17
CRs-Fixed: 3572836
2023-08-04 06:53:18 -07:00
abhinav kumar
8d585706ca qcacld-3.0: Update bss rate flags as per BW update
Supplicant sends SET_MAX_BANDWIDTH driver command to update
connected channel width dynamically.

Host should update connected bss rate flags so that host
can send proper cp stats as per updated channel bandwidth.

Change-Id: I676635b108f91f4fd8471fbe66352aa471dd9a9f
CRs-Fixed: 3519930
2023-08-03 19:39:28 -07:00
jingxiang ge
1c1828f5d8 qcacld-3.0: Extract aux device capability
Extract aux device capability and store it in wma/hdd/mlme.

current only 1 aux supported so only save info
for aux0.

Change-Id: Ib19bad6cf3c0bda5a31ea4993a2f7e587b2043e2
CRs-Fixed: 3549751
2023-07-30 22:44:50 -07:00
Deeksha Gupta
bbece0a981 qcacld-3.0: Add support to Dynamic TDLS enable
Add support to dynamic enabling the TDLS.

Vendor subcmd: QCA_NL80211_VENDOR_SUBCMD_TDLS_ENABLE

Change-Id: I3b9164ba04a4d9c23d7f580020966c222f8bd359
CRs-Fixed: 3562148
2023-07-27 22:24:09 -07:00
Deeksha Gupta
167488b437 qcacld-3.0: Add support to send TDLS avail and no. connected peer
Add support to send whether currently TDLS is available or not.

Vendor subcmd: QCA_NL80211_VENDOR_SUBCMD_TDLS_GET_STATUS
Vendor attr: QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_AVAILABLE

Also add support to get the TDLS number of active sessions
using below vendor attr.

Vendor subcmd: QCA_NL80211_VENDOR_SUBCMD_TDLS_GET_STATUS
Vendor attr: QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_NUM_SESSIONS

Change-Id: Ie9ad09de9593559c4d57599a9af58a95af99e60f
CRs-Fixed: 3554429
2023-07-27 22:23:58 -07:00
Vijay Raj
936a1452d8 qcacld-3.0: Add individual TWT support for 11be
During VDEV creation, vdev parameter "DISABLE_2G_TWT"
is populated in accordance to the value of ini
"enable_twt_24ghz" in order to indicate FW
to support TWT for 2.4GHz band.

Change-Id: I610bbaad3c5d12a8303939488ed2d7486dda404f
CRs-Fixed: 3560288
2023-07-25 22:29:24 -07:00
Paul Zhang
39dcbc8810 qcacld-3.0: Add logic to control WIFI standard per vdev
With these APIs, vdev connection is effected by the
WIFI standard version. For example, if wifi_std is
wifi6, then the connection will not use 11be feature.

Change-Id: I8f762f9cf16d876d5cf2847561b61c11a23e97b5
CRs-Fixed: 3554305
2023-07-20 19:18:40 -07:00
Paul Zhang
7f78965c87 qcacld-3.0: Add API to restore or clear user set link num
Add API to restore or clear user set link num when SSR or
interface down happens.

Change-Id: I955937817481740dc3dd75b51d669ed36b5f74d2
CRs-Fixed: 3531260
2023-07-20 01:11:24 -07:00