提交图

31134 次代码提交

作者 SHA1 备注 提交日期
Krupali Dhanvijay
727a1ebf9a qcacld-3.0: Pack TPE IE manually to avoid beacon malform
As part of 802.11be_D4.1 new param Ext Max Tx power is added
in TPE for 320 MHz and while packing the TPE IE in beacon frame
max tx power will be calculated based on max_tx_pwr_interpret.
And max_tx_pwr_interpret is filled irrespective of channel bandwidth
which leads to TPE IE length more than 9 for legacy case also.

Pack tpe ie manually to consider max_tx_pwr_interpret to calculate
tx power only for 320 MHz and legacy method for less than 320 MHz.

CRs-Fixed: 3750566
Change-Id: Ibacb634c24d08886ccf2848a8dc8e2ecdf6b247a
2024-06-12 15:30:38 -07:00
Ravindra Konda
32db3c49f4 Release 5.2.1.91I
Release 5.2.1.91I

Change-Id: Id47ed14d946b37672cfb458208306d018afb20ba
CRs-Fixed: 774533
2024-06-10 02:10:06 -07:00
Jianmin Zhu
9a5f598d02 qcacld-3.0: Fix SAP start delay issue
When driver mode is changed from other mode to mission mode, regulatory
update will happen, flag is_regulatory_update_in_progress is set.
country_change_work thread is used to clear the flag, if other threads
holding OP lock, the work thread exits without clearing flag
is_regulatory_update_in_progress. SAP start is
blocked until timeout later.

To fix it, if failed to update regulatory, country_change_work thread
clears flag is_regulatory_update_in_progress too.

Change-Id: I97440ec14e5153f44a6a1b6028eb8dd9e75ccb5d
CRs-Fixed: 3831855
2024-06-10 02:10:05 -07:00
Ravindra Konda
9114d54947 Release 5.2.1.91H
Release 5.2.1.91H

Change-Id: I8c0049c4b07bd072bb16c08cacefc6b78f443689
CRs-Fixed: 774533
2024-06-07 00:40:35 -07:00
Abhinav Kumar
f1b52bf46a qcacld-3.0: Handle ROAM_SYNC in RSO_STOPPED state
Currently if Host receives ROAM SYNC event in
RSO STOPPED state, Host drops ROAM_SYNC event and
fails to send ROAM COMPLETE response to FW. This
results assert in fw with reason ROAM COMPLETE
response timeout.

If ROAM SYNC come to host in below scenario:
1. HOST sends RSO stop command with scan mode 4,
   in order to process supplicant disabled roaming
   request
2. FW already queued the roam sync event before
   RSO STOP command receive from host
In this case host should send RSO STOP with
scan mode = 0 to FW. So that FW can stop roam sync
timer and change roam state to RSO STOP state
along with other internal cleanup in FW.

Change-Id: I8b25be98b30d7f8185d5f8dcd67a4b52f502fd37
CRs-Fixed: 3810436
2024-06-07 00:40:34 -07:00
Ravindra Konda
200d4d359b Release 5.2.1.91G
Release 5.2.1.91G

Change-Id: I4bd4cf0453a76271b98066f27bee67d0fdefc90d
CRs-Fixed: 774533
2024-06-05 03:26:42 -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
Liangwei Dong
953d21b3e1 qcacld-3.0: Fix peer mac address invalid when delete peer
wma_self_peer_remove call wma_remove_peer with
del_vdev_req->self_mac_addr as peer mac address.
But wma_remove_peer still uses the pointer of self_mac_addr
to reference it after call wmi_unified_peer_delete_send.
Potentially the peer deleate event wma_peer_delete_handler
may come first and free the del_vdev_req memory.
In that case wma_remove_peer may access invalid memory,
wma_remove_objmgr_peer may fail to release the ref count on peer.

Fix by save del_vdev_req->self_mac_addr to local stack to
use it after send wmi_unified_peer_delete_send.

Change-Id: Idd9d765a13287144917d4774287da8b7ec4ea7ed
CRs-Fixed: 3815077
2024-06-05 03:26:32 -07:00
Ravindra Konda
48a53af6e6 Release 5.2.1.91F
Release 5.2.1.91F

Change-Id: I1ae62cfb6ebbf7552fa629ffa2c8ec026bbd34a4
CRs-Fixed: 774533
2024-06-03 10:20:26 -07:00
Asutosh Mohapatra
e31eec92a7 qcacld-3.0: Change max value for SET_KEEP_ALIVE_INTERVAL_LEGACY command
Change maximum value for SET_KEEP_ALIVE_INTERVAL_LEGACY command
to 255 as per new requirement.

Change-Id: Icfb7ec4700131685eb17feba4bf68e82bb2b6316
CRs-Fixed: 3830310
2024-06-03 10:20:26 -07:00
Ravindra Konda
c240ba5f6b Release 5.2.1.91E
Release 5.2.1.91E

Change-Id: I517987cc5d719bc19ba0549a6a6b54ff449f7fdc
CRs-Fixed: 774533
2024-06-03 02:20:49 -07:00
Krupali Dhanvijay
dd1a568e13 qcacld-3.0: Fix potential OOB read in lim_cu_info_from_rnr_per_link_id
Currently while fetching the cu info from rnr, data length is checked only
for max rnr element which leads to possible out-of-bound reads with
invalid information elements.

Add fix to update the data length checks in the while loop to ensure
sufficient bytes are there.

CRs-Fixed: 3754687
Change-Id: I93f2fbc21fc5adfd848ebb27264cc18f7f553438
2024-06-03 02:20:48 -07:00
Ravindra Konda
b10bc753f3 Release 5.2.1.91D
Release 5.2.1.91D

Change-Id: I1020ac67fabf51a63f2cb1d3af748821d7eac730
CRs-Fixed: 774533
2024-06-02 20:20:02 -07:00
Jianmin Zhu
dcb8aef352 qcacld-3.0: Add go_ignore_non_p2p_probe_req in probe rsp template
Add config to enable go ignore non-p2p probe req feature. If set,
don't need to send probe rsp to STA, hence save power.

Change-Id: I8b4776e4ffd1315bf30e210797b22a673cf2a6c2
CRs-Fixed: 3812361
2024-06-02 20:20:02 -07:00
Ravindra Konda
ab7e52fd17 Release 5.2.1.91C
Release 5.2.1.91C

Change-Id: Id6d20e3c1bd5ecf86a157c4cb2a5ea48f2677908
CRs-Fixed: 774533
2024-05-31 00:49:01 -07:00
Asutosh Mohapatra
33d2fdb523 qcacld-3.0: Handle self roam for legacy with caution
Currently while processing roam synch legacy case
is not handled properly for self-roaming case and
host is sending roam as it finds peer is
already attached to a vdev.

To address this issue don't send roam stop if peer
is attached to same vdev.

Change-Id: I75bbeb23e2b94458e0709b8b27178549c7104ea1
CRs-Fixed: 3690348
2024-05-31 00:49:00 -07:00
Ravindra Konda
498498c0f6 Release 5.2.1.91B
Release 5.2.1.91B

Change-Id: I2ab9a3df216c2e0e430744374488317048d5037b
CRs-Fixed: 774533
2024-05-30 23:53:41 -07:00
Surya Prakash Sivaraj
8cf3cbfcd7 qcacld-3.0: Fix set_mac_address failure
Host driver opens adapter with ML-support having 2 vdevs and
1 MLD self peer. Now, during runtime, the country changes to
a non-11be supported region. This is followed by a set mac
address request from userspace, but since the EHT support
is disabled due to country change, the driver tries to
lookup the self peer using link mac address. But, since the
peer is created using MLD mac, the set mac address fails
leading to issues with DP-peer creation during connection.

To fix this, remove the EHT capability check from the adapter
routine and look up the peers and mac address only based on
the ML adapter configuration.

Change-Id: Iaabdf6c6b59d3b168c719b6dc0afd272a5725912
CRs-Fixed: 3800291
2024-05-30 23:53:40 -07:00
Surya Prakash Sivaraj
3b8ce6fa19 qcacld-3.0: Populate proper channel width for HT40 STA
Currently, get_channel call doesn't consider the secondary
channel to compute the ccfs1. Therefore, in 2.4 GHz
HT40+/HT40- cases, get_channel returns wrong ccfs1.

To fix this, if STA connection is in HE/HT/EHT40 in 2.4 GHz,
then use secondary channel frequency for channel parameter
computation.

Change-Id: I44310192f8dcb5e02003f60b22fdae95d76a1870
CRs-Fixed: 3815126
2024-05-30 23:53:35 -07:00
Ravindra Konda
f26faf733d Release 5.2.1.91A
Release 5.2.1.91A

Change-Id: I258389da8e10cd3a71afed7350d15307de64ceeb
CRs-Fixed: 774533
2024-05-30 10:33:36 -07:00
Prasanna JS
ffdffc8735 qcacld-3.0: Add chipset stats for CSA event
Add chipset stats for CSA event

Change-Id: I933975c7cfe9cab8c75df77878f74ee47baeb75b
CRs-Fixed: 3804997
2024-05-30 10:33:35 -07:00
Ravindra Konda
60968cb9e2 Release 5.2.1.91
Release 5.2.1.91

Change-Id: I36f0fc12b5242080d4574784f868aa1eb9c38c5f
CRs-Fixed: 774533
2024-05-30 09:24:35 -07:00
Prasanna JS
d1e852ef32 qcacld-3.0: Fix missing NAN discovery enable chipset stats
os_if_cstats_log_nan_disc_enable_req_evt is defined but not
called when there is a NAN discovery enable event, this resulted
in missing of NAN discovery enable stats in the chipset stats

Fix this by calling os_if_cstats_log_nan_disc_enable_req_evt
when there is a NAN discovery enable event

Change-Id: Ic9610e01fb0449c5233d6e651c42d395cb1f21c5
CRs-Fixed: 3804972
2024-05-30 09:24:34 -07:00
Prasanna JS
59ec37bb05 qcacld-3.0: Fix missing time_tick val of TDLS chipset stats evt
Fix missing time_tick val of TDLS chipset stats events

Change-Id: Ie0050638979249936aade6d49aba86fd2c5efaf5
CRs-Fixed: 3804998
2024-05-30 09:24:29 -07:00
Prasanna JS
5a4b009a56 qcacld-3.0: Add chipset stats for deauth evt
Add chipset stats for deauth event when roam
is trgiggered due to deauth frame from AP

Change-Id: I21125d1fde5805a3893ff8d0f9ec2be49082f994
CRs-Fixed: 3804975
2024-05-30 09:24:24 -07:00
Prasanna JS
5e55c17777 qcacld-3.0: Add kernel ver check for pld_pcie_register_qmi_ind
Add kernel version check for pld_pcie_register_qmi_ind func

Change-Id: I2b12c2c614a16576578780a90aec244d4868f4ca
CRs-Fixed: 3804973
2024-05-30 09:24:18 -07:00
Ravindra Konda
e38aededab Release 5.2.1.90Z
Release 5.2.1.90Z

Change-Id: Id49627d9456665726de637dc60123b4e0182195c
CRs-Fixed: 774533
2024-05-29 10:29:43 -07:00
Arun Kumar Khandavalli
8a2760bbc5 qcacld-3.0: get the hif handle directly rather than with spinlock
Currently nack status is read using the pmo lock with bottom half
disabled, but if the wow wakeup irq is triggered at the sametime
it is waiting for the same psoc lock resulting in the dead lock.

Hence get the hif handle directly rather than with spinlock api.

CRs-Fixed: 3798619
Change-Id: Ic2d5cd07c2dafb525003ec7e9e02bc17d0876dd0
2024-05-29 10:29:42 -07:00
Ravindra Konda
ddd31e98e1 Release 5.2.1.90Y
Release 5.2.1.90Y

Change-Id: I3df06bfd654de71ca5a30194c3115fa11f15190a
CRs-Fixed: 774533
2024-05-29 04:22:41 -07:00
Abhinav Kumar
99708500c0 qcacld-3.0: Update correct chan info to kernel
Scenario here is:
1. AP configured in 320 MHz
2. Set country code = KR in DUT, It means DUT does not
   support connection in 320 MHz.
3. Trigger connection with AP, while processing driver
   founds, country code is KR, so downgraded connected
   channel with to next max supported channel width as
   per regulatory rule (which is 160 MHz here) and
   successfully associated with AP in 160 MHz.
4. After connection Host receives “get_channel” request
   from kernel.
5. Host gets currently connected BSSID and fetch
   corresponding channel information from scan cache.
6. As scan cache gets updated via beacon/probe response
   from AP and here advertise beacon/probe response in
   320 MHz. This results value of channel width for
   connected BSSID is 320 MHz and same host fill in
   get_channel response.
7. By this time driver connected in 160 MHz and
   connected channel width indicated to kernel is 320 MHz.
   Due to mismatch in channel width, kernel triggered
   disconnection.

Fix is to update connected channel width in response to
“get_channel” request.

Change-Id: I7c4a262d337f9deb8cb4436cae537d0069a98de1
CRs-Fixed: 3810073
2024-05-29 04:22:40 -07:00
Ravindra Konda
b6d1057c2a Release 5.2.1.90X
Release 5.2.1.90X

Change-Id: I268a2e711094d48a1be38dee39efed1b4c4039ba
CRs-Fixed: 774533
2024-05-28 01:23:01 -07:00
Shashank Reddy Vulupala
ff2309615f qcacld-3.0: Add NULL check for vdev
Pointer returned from tdls_process_mlo_choice_tdls_vdev can be
NULL. Add NULL check to avoid dereference.

Change-Id: Ibd7f8914a721517d7b959b864c033686b1160648
CRs-Fixed: 3757772
2024-05-28 01:23:00 -07:00
Shashank Reddy Vulupala
7be3bd7509 qcacld-3.0: Add check for station count
This change is to check for station count with maximum
number of concurrent connections.

Change-Id: I539ae0b78deadf5e514f00d57542b4dd871e0e4e
CRs-Fixed: 3776536
2024-05-28 01:22:55 -07:00
Ravindra Konda
1b9e39c748 Release 5.2.1.90W
Release 5.2.1.90W

Change-Id: I7479d850c5d33d52e6dd8e43fb2c6ebf741eabd6
CRs-Fixed: 774533
2024-05-28 00:20:26 -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
Ravindra Konda
dffce2a619 Release 5.2.1.90V
Release 5.2.1.90V

Change-Id: Ief119f6e69c7233f07a60b0c0bc32f64b42246ce
CRs-Fixed: 774533
2024-05-26 10:19:27 -07:00
Jianmin Zhu
318a43a7b3 qcacld-3.0: Fix 11ax SAP stop issue after radar received
For 11ax SAP, when received radar, sap_is_chan_change_needed for 11BE
return false sometimes, target freq and bw is same as current, after
CSA, vdev restart failed in lim_process_sme_channel_change_request,
vdev becomes hung in SUSPEND-SP-CSA_RESTART. After 1 min, Kernel trigger
disconnect.

To fix it, if SAP isn't 11BE mode, sap_is_chan_change_needed return
true directly as legacy code.

Change-Id: I6db94c3117890d0ee924975af8b3c9efd9fb08ba
CRs-Fixed: 3789066
2024-05-26 10:19:27 -07:00
Ravindra Konda
5bdbaca521 Release 5.2.1.90U
Release 5.2.1.90U

Change-Id: Ic80301b4fa0f9ee096b222961ca932ba28baad97
CRs-Fixed: 774533
2024-05-26 06:19:37 -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
Ravindra Konda
a3def36f0b Release 5.2.1.90T
Release 5.2.1.90T

Change-Id: Ifc8c56b4103cda076c5dadcedcadc24f86b280b2
CRs-Fixed: 774533
2024-05-25 00:29:10 -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
Ravindra Konda
5f25ad55af Release 5.2.1.90S
Release 5.2.1.90S

Change-Id: I57e94cae3b39e195ca8540591319b847d2936e0c
CRs-Fixed: 774533
2024-05-24 06:21:01 -07:00
Pragaspathi Thilagaraj
289683be04 qcacld-3.0: Don't allow RSO init in non-connected state
Below is the sequence of events causing RSO init command to
be sent to firmware while disconnect is happening:
1. Roam Start received from firmware in scheduler thread.
2. Connect request for reassoc received in supplicant thread.
3. This connect request triggers disconnect, but before RSO stop
& deinit is sent to firmware, roam synch event is received. This
roam synch is getting processed in the scheduler thread. But RSO
stop & deinit are sent in wpa_supplicant thread.
4. As part of roam synch host is posting RSO_ENABLE to RSO state
machine which triggers roam init to firmware.
5. Since disconnect sequence is already in progress, the RSO is
in init state before vdev stop. Disconnect sequence got executed
cleanly except for the RSO sequence.

This results in abnormal firmware behavior.

Check if the vdev is in connected state before sending roam init
to firmware.

CRs-Fixed: 3769766
Change-Id: I709c165bd9b11b323666e0e27cece76e6a4641dd
2024-05-24 06:21:00 -07:00
Ravindra Konda
1f9f716076 Release 5.2.1.90R
Release 5.2.1.90R

Change-Id: I4e75cb0fcdcaf89ac38d01364cad2f0437f875ce
CRs-Fixed: 774533
2024-05-22 23:21:04 -07:00
Ananya Gupta
028bd45cbd qcacld-3.0: Free skb if fisa flow vdev not matches dp_vdev
Currently, there is a rcu stall when dp vdev obtained from
dp_soc does not match vdev present in fisa flow which has
same vdev_id.
To fix this, if vdev id matches for both the vdev, drop the
skb.

Change-Id: I8be4ea77bd0bdd3096ebbad627674f7b8a9801cf
CRs-Fixed: 3817471
2024-05-22 23:21:03 -07:00
Ravindra Konda
e39d3920c1 Release 5.2.1.90Q
Release 5.2.1.90Q

Change-Id: I4f40a032121a221b3686e6f5e688858f7320fec0
CRs-Fixed: 774533
2024-05-22 22:19:45 -07:00
Yu Tian
fa5001a4b5 qcacld-3.0: Give correct initial value of dp_link
When dp_link is allocated, the member variable is
not initialized correctly. Change is to give initial
value to avoid of crash.

Change-Id: I0d032b4a25f31768f2aa5e7161cc625abe867df5
CRs-Fixed: 3797243
2024-05-22 22:19:44 -07:00
Ravindra Konda
3317823c27 Release 5.2.1.90P
Release 5.2.1.90P

Change-Id: If9fba63585764c21eb0905b2f9aa2832f6589144
CRs-Fixed: 774533
2024-05-21 22:51:12 -07:00
Deeksha Gupta
70cb8d3540 qcacld-3.0: Drop P2P Negotiation req on non-Social 2.4 GHz channel
P2P GO negotiation request is supposed to come only on
DUT listen channel.
But there may be chance of leakage on 2.4 GHz because
the ADC sampling rate is 60 MHz, DUT would receive the
attenuated (Rx BBF filter) signal 60 MHz away. So, the
req may get received in non-social channel.

fix is, add new logic to drop the P2P Go Negotiation
request if it is received on non-social channel.

Change-Id: I12ddddd47cd9b494f618b1ba9b383118221ff9d2
CRs-Fixed: 3808813
2024-05-21 22:51:12 -07:00
Ravindra Konda
22b1413787 Release 5.2.1.90O
Release 5.2.1.90O

Change-Id: I903d0b3bbe0d92bd25abd46e66a3c761aaa11816
CRs-Fixed: 774533
2024-05-21 09:30:00 -07:00