Commit Graph

30347 Commits

Author SHA1 Message Date
Asutosh Mohapatra
15db85d31d qcacld-3.0: Don't set ml caps for pre CAC SAP adapter
Currently pre CAC command is failing as host is trying
to start an ML SAP as part of pre CAC. As ML SAP + ML
SAP concurrency is not supported and the first SAP is
an ML SAP, it's not possible to start another ML SAP
for pre CAC.

To address this issue create a non-ml SAP as part of
pre CAC.
Also take RTNL lock for hdd_open_adapter and
hdd_close_adapter because vendor command tool doesn't
take RTNL lock but cfg80211_register_netdevice
and cfg80211_unregister_netdevice API's expect RTNL lock.

CRs-Fixed: 3627785
Change-Id: I84ac7674cbb0911258736b2aa7886b74bc9c8714
2023-10-05 01:01:54 -07:00
Rahul Choudhary
2cf9f1bda2 Release 5.2.1.81H
Release 5.2.1.81H

Change-Id: Ia09ed838fe14037f02eb665e15f1f1bbf5aaf763
CRs-Fixed: 774533
2023-10-04 22:02:38 -07:00
Vinod Kumar Myadam
5db1e4740c qcacld-3.0: Add support for INI twt_disable_info
Add support for INI twt_disable_info to disable FW initiated
information frame for TWT

Change-Id: I06fe9be364d9def0ccfffc196ae31dcc2ab9a500
CRs-Fixed: 3621241
2023-10-04 22:02:37 -07:00
Shailendra Singh
f72feda4a1 qcacld-3.0: Configure Traffic shaping mode for coex scenario
Change to parse wpa_cli command to set wifi configuration for attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_COEX_TRAFFIC_SHAPING_MODE and send traffic
shaping mode to FW with WMI WMI_COEX_SET_TRAFFIC_SHAPING_MODE.

Change-Id: I3965dfc6b63f55e568aed34e0091b95a21fae88f
CRs-Fixed: 3625180
2023-10-04 22:02:31 -07:00
Dundi Raviteja
5c47d971df qcacld-3.0: Fix compilation error caused due to typo
Used "defines()" instead of "defined()", which causes
compilation error when corresponding compilation is enabled.

Fix the same by correcting it to "defined()".

Change-Id: Ifd43bc06c6ddf72bacd3b1fbbf2186d233a03a6c
CRs-Fixed: 3625040
2023-10-04 22:02:25 -07:00
Rahul Choudhary
95c99f5be8 Release 5.2.1.81G
Release 5.2.1.81G

Change-Id: Iae918fcdc673696ec9139cc75b0ca47cf9910ed1
CRs-Fixed: 774533
2023-10-04 11:16:28 -07:00
Sheenam Monga
f4d6ebf2ec qcacld-3.0: Update Group Tx success from vdev stats
Currently group tx success is sent by FW via CP stats
but FW doesn't have success/failure status, so stat
doesn't get incremented in FW.

To avoid the issue update group tx success from vdev stats
updated by DP.

Change-Id: I3062b3c1b43da4adf457b7ff82c776837ed684e1
CRs-Fixed: 3628124
2023-10-04 11:16:27 -07:00
Deeksha Gupta
8de8c22dab qcacld-3.0: Don't check the partner link security before ML probe response
Currently, before ML probe rsp in cm_get_ml_partner_info()
API, driver tries to get the partner link scan entry
and validate below cases:

1. Whether partner link scan_entry is found or not.
2. And based on the security, reject the particular partner
   link.

But in the ML connection, during scan, driver may not receive
the beacon/probe response frame for the partner link. But
later, will generate it from ML probe response.

Due to scan_entry not found, driver may connect with only
1 or 2 link connection.

To fix it, driver should check the partner link security
only after getting the complete partner link info in ML
probe response frame and added in the scan db.

CRs-Fixed: 3615946
Change-Id: Icb7f4e9e41d0da4a34799f535a2a0a1fe3b99f58
2023-10-04 11:16:20 -07:00
Rahul Choudhary
a50ca73bfc Release 5.2.1.81F
Release 5.2.1.81F

Change-Id: I4af23cf6453fda43e0824a7d23b53d97f660ecce
CRs-Fixed: 774533
2023-10-04 08:13:00 -07:00
Srinivas Dasari
27073364a4 qcacld-3.0: Don't process the beacon in non-connected state
Beacon/probe resp needs to be processed only if it's received
as part of join(eLIM_MLM_WT_JOIN_BEACON_STATE). But beacons are
processed after join phase and before connect completion also.
This delays actual connection if there are any critical
updates(e.g. VHT IE update) in beacon. These beacons need not
be honored before connect completion.
So, drop the beacon frames if received during connect.
Also, reduce the log level for error cases while processing beacon
in lim_update_sta_run_time_ht_switch_chnl_params().

Change-Id: If2f4ee05eeb27d26964daf8dfc6e7c9b4fb3144c
CRs-Fixed: 3624753
2023-10-04 08:12:59 -07:00
Ashish Kumar Dhanotiya
44ac03a6ee qcacld-3.0: Add bearer switch infra
When there are more than one audio transport mediums
are available, there is a possibility to switch the
audio transport medium from one medium to another
medium.
To provide this support to switch the audio transport
medium, add a bearer switch infra in host driver.

Change-Id: I9d828d52a2c03e8e4e2c0a284ff0dd7510798dbe
CRs-Fixed: 3609864
2023-10-04 08:12:53 -07:00
Rahul Choudhary
e7b1f57b67 Release 5.2.1.81E
Release 5.2.1.81E

Change-Id: I58c214ddc18f15e127a470ef75cba6ab22c6e85e
CRs-Fixed: 774533
2023-10-03 12:00:42 -07:00
Srinivas Dasari
ab67083be0 qcacld-3.0: Drop CSA if any of the ML links is disconnecting
Currently, host driver sends RSO stop request to firmware when a
disconnect request is received. It waits for the RSO stop response
by running a timer and continue disconnect operation after
getting response/timeout happens.
But if host driver receives CSA event from firmware(via scheduler
thread) and disconnect from userspace(via wpa_supplicant thread)
in parallel, these two get processed in different threads. CSA may
send RSO stop request to firmware but it doesn't have any
wait-for RSO_STOP mechanism.
Disconnect also tries to send RSO_STOP request to firmware but
doesn't send as the RSO state is already moved by CSA.
Disconnect would continue and gets handled in vdev state machine.

When disconnect request is received from userspace, non-assoc
link connection manager state machine is moved to DISCONNECTING
first and then assoc link connection manager SM is moved.
VDEV state machine is not yet aware of the disconnection.
VDEV SM cannot handle this disconnect if VDEV_RESTART(CSA) is
posted to it before posting EV_DOWN(disconnect).
So, avoid posting VDEV_RESTART to VDEV SM if any of the VDEV
is in disconnecting state. Check for the status just before
posting, i.e. after sending RSO_STOP req to firmware to avoid
possible race conditions due to WMI delays.

Change-Id: I7bc876847a8dbc9ccb38128b1fa4dde6af6358d2
CRs-Fixed: 3623360
2023-10-03 12:00:42 -07:00
Abhishek Singh
2b204b4330 qcacld-3.0: Optimize policy manager logging
Optimize policy manager logging to handle hw mode change event
and freq dump for all mode.

Remove freq dump for all mode as its fixed and decided during
init. Also remove the hw mode offload logs as its also hw specific
and can be easily known other ways.

Change-Id: Ib4f2dceb56d5a82aa3e6c42d0e7b56768abc270b
CRs-Fixed: 3626728
2023-10-03 12:00:33 -07:00
Arun Kumar Khandavalli
2ea2d30798 qcacld-3.0: Send vdev delete to firmware incase of mlme component failure
Incase of MLME component failure post vdev create the vdev_id
is freed up without sending the vdev delete to the firmware,
in this specific case of the issue post vdev create to firmware
a dp vdev attach failed because of memory allocation failure.

Send vdev delete to firmware incase of mlme component failure
post vdev create.

Change-Id: Ib5bf2a2a7f77a44a80b76bd7a243f2c286a19f8b
CRs-Fixed: 3623511
2023-10-03 12:00:22 -07:00
Rahul Choudhary
90ccb561d3 Release 5.2.1.81D
Release 5.2.1.81D

Change-Id: I98eb55fbbbd42796d8d8abfd2c5911e893775a2e
CRs-Fixed: 774533
2023-10-02 09:24:39 -07:00
Pragaspathi Thilagaraj
d812fcf428 qcacld-3.0: Don't generate assoc rsp for standby vdev during roam
While processing roam sync indication for link vdev, the assoc
response frame is generated and parsed to fill new pe_session.
But its parsing for the standby vdev also. This causes parsing
failure and RSO stop is sent to firmware leading to HO failure
disconnect.

so don't generate assoc rsp for standby vdev during roam

Change-Id: I2a728fbd0d1c9dd19b480ae95df83c680aacb191
CRs-Fixed: 3629750
2023-10-02 09:24:39 -07:00
Amruta Kulkarni
06c7860fe1 qcacld-3.0: Fix RSO state machine issues
For MLO connection, when disconnect is started as part of
link switch, host will send RSO STOP to FW.
Post disconnect complete host tries to enable RSO again on
the other connected STA. This is protected by link switch in
progress check to avoid sending RSO start on link vdev during
link switch. But when NB or SB disconnect is queued during link
switch, then link switch in progress flag is reset and RSO start
might go on the assoc vdev.

Do not enable RSO if disconnect is ongoing on same MLD.
Also while processing RSO stop response fw might send RSO stop
response on link vdev. Add handling to process RSO stop response
on other vdev belonging to same MLD

During roam sync if assoc rsp is received from unexpected peer
then abort roaming and send rso stop to FW,HO fail will clean
host CM state machine.

Change-Id: Ibd1f424c3dea80e50e70ebdf112ee2cf44868ebe
CRs-Fixed: 3626015
2023-10-02 09:24:32 -07:00
Rahul Choudhary
c0099b3505 Release 5.2.1.81C
Release 5.2.1.81C

Change-Id: I2cd547ac12d0abcdf4bd4b0a1aaeb8a8c57a3614
CRs-Fixed: 774533
2023-10-02 06:28:12 -07:00
Abhinav Kumar
453fb17648 qcacld-3.0: Update chan load for chan load req of 320 MHz
In case of wide band scan, FW sends cca_busy_subband_info
tlvs via WMI_CHAN_INFO_EVENTID, which contains value of
rx_clear_count for each 20 MHz freq space.

Fix is to updates rx_clear_count per channel to cp stats
component.

Change-Id: Iff26087da4ffa3e1147c5ffe4127e5aa078f406f
CRs-Fixed: 3626725
2023-10-02 06:28:11 -07:00
Rahul Choudhary
c1f0eebf5d Release 5.2.1.81B
Release 5.2.1.81B

Change-Id: Ia325d1054fbc95ae0a736087337bc94afdac6e5a
CRs-Fixed: 774533
2023-10-02 00:38:41 -07:00
Ke Huang
4cea4a979d qcacld-3.0: Fix wrong reason code for RSN/WPA in Association Response
The status code is set to 0(SUCCESS) in Association Response but
there is not RSN IE or WPA IE presented in the Association Request
of STA.

Change to send the Association Response with status code 0x0D(
Responding STA does not support the specified authentication
algorithm) to deny this Association Request.

Change-Id: If2a0a59c6b4986b54a12d4bdc7372c38317b6ce2
CRs-Fixed: 3625499
2023-10-02 00:38:40 -07:00
Rahul Choudhary
7b8653926e Release 5.2.1.81A
Release 5.2.1.81A

Change-Id: I11a3bc064ad2b39c81a4ee8169dff82eb5be8d7a
CRs-Fixed: 774533
2023-10-01 18:12:03 -07:00
Aasir Rasheed
ec2ac22c08 qcacld-3.0: Fetch max num of active links
Fetch max num of active links recommended by AP
from beacon ie in case of ML connection.

CRs-Fixed: 3599428
Change-Id: I82581cbf7b3f6c6ac7f1b31040dad178a3fad27d
2023-10-01 18:12:03 -07:00
Rahul Choudhary
1602c40aa7 Release 5.2.1.81
Release 5.2.1.81

Change-Id: Id418bf2c597016949cf72291f5423a788a1c62b8
CRs-Fixed: 774533
2023-10-01 12:35:51 -07:00
Vinod Kumar Pirla
b6b28c271a qcacld-3.0: Update VDEV's legacy OSIF pointer on MAC update
Legacy OSIF pointer in VDEV points to the link info element
that the VDEV is currently assigned to in adapter. As part of
link switch the VDEV will be reassigned to the link info structure
that corresponds to the new IEEE link id and here the OSIF
pointer is properly updated in the VDEV.

However post disconnect all the VDEVs will be reordered with the
link info structure on which it is initially created and in this
reset logic of the legacy OSIF pointer is updated for only one
VDEV and leaving the next VDEV to point to different link info
than where it is currently assigned.

In the reset logic, update all the valid VDEV's OSIF pointer to
reflect the link info it is currently mapped to.

Change-Id: Iba541ee99c008fb610abdd086ae40164dde0e74f
CRs-Fixed: 3626410
2023-10-01 12:35:51 -07:00
Arun Kumar Khandavalli
cf5b19c1f0 qcacld-3.0: Remove the assert and add the proper logging
Whenever the link switch notification is received at hdd, the
vdev id is compared with what is send and the adapters vdev.

So log the error values and remove the assert which will not
help in debugging the issue.

CRs-Fixed: 3618094
Change-Id: I549096b8e594241cde5b185e5e1ab00cf9dc33e8
2023-10-01 12:35:44 -07:00
Rahul Choudhary
e67956a39d Release 5.2.1.80Z
Release 5.2.1.80Z

Change-Id: I419890e52b0c769ca0bc8fae7161c5f71af42de7
CRs-Fixed: 774533
2023-10-01 09:35:07 -07:00
Rahul Gusain
a190ba3065 qcacld-3.0: Send ARP pattern for SAP mode also
Currently, host driver sends ARP pattern to FW for wow mode for
STA interface only. Thus, in case of SAP interface, firmware drops
ARP packets during wow mode as driver does not sent the ARP
response for SAP for wow mode.

So, to fix this, send ARP pattern for wow for SAP interface also.

Change-Id: I8efd895a1c03900245048b2da2a8012ec36dbf71
CRs-Fixed: 3626249
2023-10-01 09:35:07 -07:00
Jianmin Zhu
87e9ec38f5 qcacld-3.0: Fix IMPS disable issue
Fix IMPS disable issue caused by
Change-Id: I0e9f83df2cfc144738bf02e7d25e30c82b5da693

Change-Id: I5a42d2af1ab70a43c57f7af3a3f5fd80e43e2807
CRs-Fixed: 3628619
2023-10-01 09:35:00 -07:00
Rahul Choudhary
9ca8b74dfb Release 5.2.1.80Y
Release 5.2.1.80Y

Change-Id: Iaf97b93cbfb7aee1db0e12fa054d995d29000c82
CRs-Fixed: 774533
2023-10-01 03:49:54 -07:00
Ashish Kumar Dhanotiya
f8f361dbc9 qcacld-3.0: Return success if chan width is not set for set wifi config
Currently wifi set configuration vendor command returns error
in case if chan width attribute is not in the vendor command,
this results in complete failure of the vendor command and does
not give chance to parse and execute other attributes and also
this command always returns failure for all the attributes
if chan width is not present.

To address this issue, return success if chan width is not
present in the set wifi configuration vendor command.

Change-Id: Ifd8a857ae6aadd1aa2f8227507e1e27b477e1200
CRs-Fixed: 3628393
2023-10-01 03:49:54 -07:00
Vijay Raj
840f22c998 qcacld-3.0: Add support to convert link id bitmap to band bitmap
In API wlan_connectivity_mld_link_status_event(), link id
bitmap is passed to userspace instead of band bitmap.

Introduce wlan_convert_link_id_to_diag_band() to convert
link id bitmap to band bitmap which is required by userspace

Change-Id: Idf398d5d326aecc4db03ec70cab0e20f18dfbd3b
CRs-Fixed: 3624522
2023-10-01 03:49:48 -07:00
Rahul Choudhary
750eec4f64 Release 5.2.1.80X
Release 5.2.1.80X

Change-Id: I18b97c1656b9937eee75f219b33d98a2718e8da6
CRs-Fixed: 774533
2023-09-30 22:10:04 -07:00
Deeksha Gupta
e22f9adc77 qcacld-3.0: Add retry with delay in TWT DEL dialog cmd
Currently, when disabling the power save mode, driver sends
the TWT teardown command 10 times to the firmware. These 10
commands being received by the firmware within 200 ms.
However, this time doesn't enough time for the scanning
process to complete.

To address this issue, added a delay of 500ms between each
TWT teardown command sent by the driver to allow for the
successful completion of scanning before further commands
are issued.

CRs-Fixed: 3626036
Change-Id: I214e5dc94e94eb48f41436f9e5f1a6b9714f4bc1
2023-09-30 22:10:04 -07:00
Pragaspathi Thilagaraj
2a208d988f qcacld-3.0: Fill mobility domain IE from lim
When multiple APs in the environment have same BSSID but
different SSID, MDIE configurations then BSS descriptor filled
by fetching the scan result with only BSSID as filter can cause
wrong BSSID data to be filled. This causes wrong MDIE to be
sent to firmware after roaming.

So filter the scan entry based on SSID and BSSID.
Fill the mobility domain to RSO config in LIM after roaming.
For initial connection, fill MDIE from assoc request.

Change-Id: Ica5c46d6fe07799f16a1a26d66aa6f8452e4c8d1
CRs-Fixed: 3615256
2023-09-30 22:09:58 -07:00
Rahul Choudhary
0162b6be31 Release 5.2.1.80W
Release 5.2.1.80W

Change-Id: I0ce231e708d36f9bdf3f83a3969fa7c13aad76fd
CRs-Fixed: 774533
2023-09-30 19:06:56 -07:00
Gururaj Pandurangi
186386e192 qcacld-3.0: Rate limit error log in defer msg decision API
In certain cases where the deferred queue size exceeds the
threshold, defer message decision API drops the frames but
also logs the failure to defer the message and this can
cause excessive logging. Thus, rate limit the error log.

CRs-Fixed: 3627463
Change-Id: I5a1020639e2c63d9ce9ca4178a747183e3964cc0
2023-09-30 19:06:56 -07:00
David Oladunjoye
c1656e576c qcacld-3.0: Set Reliable Scan Flag for ACS Scan
ACS Scan requires reliable scan policy for valid results.
Set the flag to trigger reliable scan for ACS.

CRs-Fixed: 3627456
Change-Id: I269058f567f923396a67d7c36bdb839607d26c5c
2023-09-30 19:06:50 -07:00
Surya Prakash Sivaraj
30e70b1631 qcacld-3.0: Choose proper TID for deauth frames
FW asserts if the host sends deauth frames before
peer assoc with MLO MGMT TID. The host needs to
send all the management frames before peer assoc
without link agnostic bit in the WMI_MGMT_TX_CMD.

For MLO vdevs, send management frames with link
agnostic flag only if VDEV is in UP state.

CRs-Fixed: 3485708
Change-Id: I9fdee53e0f902a089ad3c5c8c99e720423cf9d6e
2023-09-30 19:06:44 -07:00
Pragaspathi Thilagaraj
3b584aa20d qcacld-3.0: Reset HDD sta_ctx link info params after roam
Reset HDD sta_ctx link info parameters after roaming to
reset the values in case of roaming from 3/2 link AP
to 1 link ML AP

Change-Id: I5e8165e50b92eed476d16696c14d4db82192c4ed
CRs-Fixed: 3627330
2023-09-30 19:06:37 -07:00
Rahul Choudhary
aef93e0414 Release 5.2.1.80V
Release 5.2.1.80V

Change-Id: I21712dbe88107792e8ab52d1f30a9af3b6509e59
CRs-Fixed: 774533
2023-09-30 16:01:15 -07:00
Deeksha Gupta
ea342cce9d qcacld-3.0: Optimize policy_mgr logs
Optimize policy_mgr API related log prints.

CRs-Fixed: 3625816
Change-Id: I6c0325220547b8cdd4509043d7596ca2aed2b9ea
2023-09-30 16:01:15 -07:00
Rahul Choudhary
0462f2ef86 Release 5.2.1.80U
Release 5.2.1.80U

Change-Id: I15b3871f60121ba95ddc4940bd933a253f692c08
CRs-Fixed: 774533
2023-09-29 16:29:41 -07:00
Gururaj Pandurangi
3844e356f7 qcacld-3.0: Update 320 MHz flag in 6 GHz properly
Update 320 MHz flag in 6 GHz properly per BW support.

Change-Id: I13840fcabeb7604e9a038e98f59972f34e420cc4
CRs-Fixed: 3601669
2023-09-29 16:29:40 -07:00
Gururaj Pandurangi
3eb228c3b9 qcacld-3.0: Add support to configure T2LM support
Add vendor command support to configure T2LM
negotiation support.

Change-Id: I492e07b7ebaf38c8afe182ec9c53bb5fc062b906
CRs-Fixed: 3590779
2023-09-29 16:29:34 -07:00
Liangwei Dong
cbd69b42cb qcacld-3.0: Fix P2P Client powersave disabled
The third party framework sets p2p0 with powersave enabled, our driver
saves the powersave enable flag to vdev.
Then framework creates p2p0 as GC by changing p2p Device type to p2p
Client type. Our driver will delete vdev and create the vdev again.
The powersave enable flag will be lost in this case.

Fix by cache the user powersave flag to adapter and restore it after
vdev created.

Change-Id: I5be2d2df0583b6c1bf6b7cdd31a1a0b89ceb1901
CRs-Fixed: 3625403
2023-09-29 16:29:28 -07:00
Mohammed Ahmed
53fa22317e qcacld-3.0: Enable peach building on pineapple
Current code does not enable peach building on pineapple
target. Fix this by adding peach to supported chipsets.

Change-Id: I69d982fcfdb1b9f7d5a211b0987a7444135aed71
CRs-Fixed: 3619852
2023-09-29 16:29:22 -07:00
Mohammed Ahmed
3abd735e6e qcacld-3.0: Peach config compilation fixes
Current code has config deltas between kiwi_v2
and peach. Resulting in compilation errors.
Fix this by adding missing configs to peach target.

Change-Id: If392002dc6859855fac8b6dcf66a2b6b8237eeda
CRs-Fixed: 3626096
2023-09-29 16:29:16 -07:00
Jyoti Kumari
f8a4637aa8 qcacld-3.0: Rename ETSI13's api to ETSI
As ETSI18 and ETSI20 also added to check SRD channels.
Rename the api of ETSI13 with ETSI.

Change-Id: Ib04e809ba53a55101a6254e0c1ef9f9b37b93fb8
CRs-Fixed: 3616398
2023-09-29 16:29:10 -07:00