Commit graph

22,897 commits

Author SHA1 Message Date
Madan Koyyalamudi
9ee68be93a Release 2.0.8.30F
Release 2.0.8.30F

Change-Id: Ia8038a15ac82447bf0df196ae581f95550c51ca3
CRs-Fixed: 774533
2022-06-16 10:15:36 -07:00
Jia Ding
1b540569b5 qcacld-3.0: Enable uplink delay feature for Vordonisi
Enable uplink delay feature for Vordonisi platform.

Change-Id: Ie38f7f1ee25bd880bfd628c0a0e11eeb3732dedf
CRs-Fixed: 3218090
2022-06-16 10:15:36 -07:00
Srinivas Dasari
3dfcb40486 qcacld-3.0: Peer may not be present if NDP confirm fails
NDP peer gets created as part of NDP indication in case of NDP
initiator. But NDP may fail to form due to various reasons and
firmware may send NDP confirm with reject status in such cases
instead of NDP indication event.
Below is the detailed scenario,
1. On initiator side, it has sent an NDP request and is waiting
   for NDP response.
2. On responder side, application/framework is preparing to send
   NDP response with reject due to some config mismatch. At the
   same time, NDP termination is also issued. So NDP termination
   frame is sent successfully.
3. Initiator firmware receives this NDP end and it sends an NDP
   confirm with REJECT to the host and it shall clean-up the
   session.

Currrently, there is a check for the peer existence while
indicating this NDP confirm status to framework. There is no need
of this check in such failure cases as peer is not yet created.

Change-Id: Ibe94a5b67df1ce3d65eaf2ef37b11b08155752c9
CRs-Fixed: 3086975
2022-06-16 10:15:30 -07:00
VIJAY RAJ
7bd1115b69 qcacld-3.0: Return success from dynamic nss chain support check for 1x1
In api hdd_update_nss(), when unit test command 'iwpriv wlan0 nss 1'
is used in 1x1 mode, the fail status is returned resulting in test
case failure.

Return a success status in api hdd_update_nss() for 1x1 mode resulting
successful execution of test case.

Change-Id: Id482c2686b48a0b6cdd41980c4eb4424da775ad0
CRs-Fixed: 3195517
2022-06-16 10:15:24 -07:00
Vinod Kumar Myadam
6ad52e5a38 qcacld-3.0: Sanity check for session_id in roam
For session_id is not have sanity check, an OOB would happen
leads to crash.

Added Sanity checks for session_id in roam functions and
return failure if session_id is equals to NULL or MAX value.

Change-Id: I033c6567f53ead2a721882e9b44f3d0bcb58084d
CRs-Fixed: 3149880
2022-06-09 09:58:46 +05:30
Madan Koyyalamudi
c0bcc19aff Release 2.0.8.30E
Release 2.0.8.30E

Change-Id: I052d211fda31a792ad06a3f74d8641c094e4eec0
CRs-Fixed: 774533
2022-06-06 05:35:16 -07:00
Srikanth Marepalli
028e3d7da0 qcacld-3.0: Send the trigger reason as part of roam scan stats
Notif_param of Roam event ID carries the trigger reason as part
of roam scan start notif. Currently host doesn't read this param.
This commit reads the trigger reason and sends it to user-space
via vendor attribute whenever the roam event vendor command is
enabled.

Change-Id: If9fdbc31df149f4f1c9ca196ee74e2fcb3709a1c
CRs-Fixed: 3161803
2022-06-02 23:53:54 -07:00
Madan Koyyalamudi
1e4bd1c400 Release 2.0.8.30D
Release 2.0.8.30D

Change-Id: Ib5f00af3a09fb8d3525e7882ae535e12c529439d
CRs-Fixed: 774533
2022-05-30 05:51:18 -07:00
Surabhi Vishnoi
ea9208e299 qcacld-3.0: Acquire wakelock during roaming if key installation is pending
Currently, wakelock is only taken during initial connection if
pairwise key installation is pending and not during roaming. This
may lead to EAPOL delay/timeout during roaming as runtime pm and
suspend is allowed during roaming. To fix this issue, acquire
wakelock if key installation is pending during roaming.

This change also refactors the code and release the wakelock in
wma_remove_peer if EAPOL fails during initial connection or roaming.

Change-Id: Id4cac30b3c383ca3d3e963571846f8a30eaa1006
CRs-Fixed: 3189799
2022-05-30 05:51:17 -07:00
Madan Koyyalamudi
4fd813b1e3 Release 2.0.8.30C
Release 2.0.8.30C

Change-Id: I58e608d916217dca059f7359b38cb91529d24b91
CRs-Fixed: 774533
2022-05-28 11:15:11 -07:00
Vijay Patil
83f49ec2d0 qcacld-3.0: Don't proceed with NDP peer handling if NDI is not UP
Firmware might send NDP peer indication/NDP responder response
while NDI deletion is in progress. Currently, NDP peer entry
gets added though vdev is moved to DOWN state and cleanup is
in progress. This leads to stale peer entry on that NDI vdev
and doesn't allow vdev delete when IFF_DOWN comes, as a peer
is present.
Check the vdev state before creating peer for NDP and skip
peer creation if NDI vdev is not in UP state(which indicates
that the vdev down is happening).
Also, don't process the NDP confirm if NDP peer is not created.

Change-Id: I73e79cc33b1a294e3f4a4a6e2f371033862c5709
CRs-Fixed: 3061756
2022-05-28 11:15:11 -07:00
Madan Koyyalamudi
7a81e44044 Release 2.0.8.30B
Release 2.0.8.30B

Change-Id: Idb8b25cb092afed38e02871220d97a6b2677783e
CRs-Fixed: 774533
2022-05-26 06:13:36 -07:00
Vulupala Shashank Reddy
772875a23c qcacld-3.0: Add check to avoid null pointer dereference
Add null check while calling wlan_psoc_get_qdf_dev to
avoid dereference of null pointer.

Change-Id: Ia3717238d6d81c805aef28337bb633a0f7e383dd
CRs-Fixed: 3203257
2022-05-26 06:13:35 -07:00
Madan Koyyalamudi
d9ba7017eb Release 2.0.8.30A
Release 2.0.8.30A

Change-Id: I86f8e01c670b7119652fca9f5ae248117317c6c3
CRs-Fixed: 774533
2022-05-26 01:15:28 -07:00
Utkarsh Bhatnagar
6a4677d533 qcacld-3.0: Update MLME Cfg num_ppe_th
With Kernel 5.13.2 onwards, if
ppe_present is present in HE capabilities
then ppe_threshold fields are also required
to be sent such as length has to be non zero
and the data can be all zeros as part of
TDLS Discovery and Setup frame.

While sending setup frames, ies are packed using
dor11f apis such as dot11f_pack_ie_he_cap().
Even if ppet_present is set,
dot11f_pack_ie_he_cap() will only send
ppe_threshold if num_ppe_th is present.
The HE capabilties which are sent in these
are filled using MLME Cfg HE capabilities.
So, calculate and set num_ppe_th using cfg
ppe fields based on the operating band.
Also to cover a corner scenario where ppe_present
is set but calculated num_ppe_th is 0, set
num_ppe_th to 1 so that atleast 1 byte should be
sent to prevent framework from throwing
exception during add_sta.

Change-Id: Ibe4fd3fdacce24573c09b3609babf04ef4423fb1
CRs-Fixed: 3183531
2022-05-26 01:15:27 -07:00
Madan Koyyalamudi
6e7c595356 Release 2.0.8.30
Release 2.0.8.30

Change-Id: Id1f4910b470c25a865c85ad72d45949ad9e5d89b
CRs-Fixed: 774533
2022-05-25 15:17:42 -07:00
Jyoti Kumari
4b643656bd qcacld-3.0: Skip STA connect on 6 GHz or 5 GHz indoor chan if SAP is up
Currently STA can scan and come up on 6 GHz or 5 GHz indoor channel
if hardware is non-dbs and SAP is present

As part of this change, do not allow STA to connect on 6 GHz and
5 GHz indoor channel for non-dbs hardware if SAP is present

Change-Id: I48ed8483225e35d8b898b0325eee398f74e41c97
CRs-Fixed: 3196247
2022-05-25 11:16:53 +05:30
Madan Koyyalamudi
abfe5f5730 Release 2.0.8.29Z
Release 2.0.8.29Z

Change-Id: I7673bca4c2cf695f1e457b5897f1d6c3d1e2d3d8
CRs-Fixed: 774533
2022-05-24 13:04:50 -07:00
Pragaspathi Thilagaraj
ccaa68da91 qcacld-3.0: Fetch the SSID offset based on frame subtype
While processing roam synch event, host driver reads the
reassoc request frame IEs after the SSID offset. SSID offset
is different for reassociation and association frames.
Currently SSID offset is populated as association frame ssid
offset only if ft_im_roaming flag is set. But FW can send
association request in roam invoke to self cases also and
host reads the ssid offset as reassoc frame offset since
ft_im_roaming flag wont be set here.
This causes association frames passed to upper layers be
truncated.

Read the assoc frame IE based on the frame subtype.

Change-Id: If927e294e9809b6640e4de23d97a7637b16db70c
CRs-Fixed: 3195902
2022-05-24 13:04:49 -07:00
Madan Koyyalamudi
5f98b7e492 Release 2.0.8.29Y
Release 2.0.8.29Y

Change-Id: Id55569c386429d6b4420ee8b4e71f54cbb7d7f6e
CRs-Fixed: 774533
2022-05-24 06:14:48 -07:00
Vulupala Shashank Reddy
ad7d2bf1dc qcacld-3.0: Fix early roam scan stop threshold values
Read early raom scan stop threshold min and max values
correctly and send correct value to FW.

Change-Id: I2e96b3c3e9fb48352d8075a4e7a96eae41dacedc
CRs-Fixed: 3191076
2022-05-24 06:14:47 -07:00
Madan Koyyalamudi
aef06d3c2b Release 2.0.8.29X
Release 2.0.8.29X

Change-Id: Ie40ab95a1fcfce7fadab8adf018400c99983e9d5
CRs-Fixed: 774533
2022-05-22 17:33:15 -07:00
Surabhi Vishnoi
e8b9f78d07 qcacld-3.0: Update auth_status and mac addr of roamed peer to dp
This change updates the auth_status and mac address of roaming
peer received in roam_sync_indication from FW to dp.

Change-Id: I27744017c87a956927108c5b3b0f9220d7e42965
CRs-Fixed: 3185110
2022-05-22 17:33:15 -07:00
Madan Koyyalamudi
585077c30e Release 2.0.8.29W
Release 2.0.8.29W

Change-Id: I5b3345ca75a0612d1068bb47f866386e6ef1e0f7
CRs-Fixed: 774533
2022-05-18 03:52:44 -07:00
Sheenam Monga
552762f7e7 qcacld-3.0: Provide correct status code in case of no ack
Currently, LIM_ACK_NOT_RCD is not handled while filling
status code due to which STATUS_UNSPECIFIED_FAILURE is
updated as part of default handling instead of
STATUS_AUTH_NO_ACK_RECEIVED. Don't overwrite previous
status code in case no ack received from peer.

Fix is to Handle LIM_ACK_NOT_RCD case while filling status
code and consider previous status code when no ack received
from peer.

Change-Id: I366d63ee3ff6abf8a36300451e7f0c46fcf47e39
CRs-Fixed: 3151992
2022-05-18 03:52:44 -07:00
Madan Koyyalamudi
cf33d73108 Release 2.0.8.29V
Release 2.0.8.29V

Change-Id: I2a51e088103a7fd9926f78cd3a2c506903435622
CRs-Fixed: 774533
2022-05-18 01:09:22 -07:00
abhinav kumar
645af8b3c7 qcacld-3.0: Move 6ghz check in band bitmap conversion API
Move the 6GHz support check so that the logic is invoked
regardless of the input band bitmap.

Change-Id: I45db2d2be8966ac073a8ede721d52bd689a98a88
CRs-Fixed: 3069557
2022-05-18 01:09:19 -07:00
abhinav kumar
0aebd5554e qcacld-3.0: Set correct roam band mask
Currently, the driver sets roam band mask to
REG_BAND_MASK_ALL(2.4G + 5G + 6G) when it receives
the value of vendor bitmap as QCA_SETBAND_AUTO(0)
regardless of whether the driver supports 6G or not.

In case if the driver does not support 6G and userspace
sends vendor bitmap as auto, the driver should convert
roam band mask to REG_BAND_MASK_2G_AND_5G(2.4G + 5G).

Change-Id: I45c2083aa18de8216ebdc8a9dbd22388d07c679a
CRs-Fixed: 3068729
2022-05-18 01:09:14 -07:00
Madan Koyyalamudi
50bca68807 Release 2.0.8.29U
Release 2.0.8.29U

Change-Id: I1b173834056dd1892457053bff61489cdbee1640
CRs-Fixed: 774533
2022-05-17 15:15:00 -07:00
abhinav kumar
4c0464d9ea qcacld-3.0: Do not set the BSS color disabled in HE op IE
If the BSS color is not set in userspace config then BSS
color disabled is set in userspace HE OP IE data. Driver
fills the random BSS color value if the BSS color is not
set in userspace HE OP IE data hence the BSS color disabled
bit should be set to 0. So do not set the BSS color disabled
bit from user space HE OP IE data.

Change-Id: I781206c67671752275b810e34a63fb76fe6c4f73
CRs-Fixed: 3068944
2022-05-17 21:38:27 +05:30
Madan Koyyalamudi
6935590e20 Release 2.0.8.29T
Release 2.0.8.29T

Change-Id: I0de7d0ae801e217c3fc43d274fef7e841e7f966a
CRs-Fixed: 774533
2022-05-17 05:45:02 -07:00
Amit Mehta
94962f3d04 qcacld-3.0: Add NULL check for tx_rx_hist
Currently, we are updating tx_rx_hist without performing a NULL check.
There can be the case where the tx_rx_hist is freed and we are trying to
de-reference the tx_rx_hist, which will cause the NULL pointer dereference
issue.

Fix is to add NULL check for tx_rx_hist before dereferencing it.

Change-Id: I0c298f1c86dd86b6ac987c005ed19b20933ffba8
CRs-Fixed: 3196312
2022-05-16 14:19:55 +05:30
Madan Koyyalamudi
110644cec7 Release 2.0.8.29S
Release 2.0.8.29S

Change-Id: I93b14abcd2a2b8bce3e754cc7bf082da82b142d2
CRs-Fixed: 774533
2022-05-13 17:01:03 -07:00
Aravind Kishore Sukla
557d1042fa qcacld-3.0: Replace kmsg logs to debug logs
Change kernel log level to debug level

Change-Id: I1efa9a0498acd81f2a9a12d5712299609eb5bd06
CRs-Fixed: 3182121
2022-05-13 17:01:02 -07:00
Madan Koyyalamudi
75a616e429 Release 2.0.8.29R
Release 2.0.8.29R

Change-Id: I4a4fa50412adb73e8d0a0b68672b1c99242ad66d
CRs-Fixed: 774533
2022-05-13 12:04:45 -07:00
Gururaj Pandurangi
8574cbad00 qcacld-3.0: Reduce logging level in pmf cap API
Reduce logging level to debug in get peer pmf
capability API to avoid excessive logging.

Change-Id: Ia8f339f880429d478f68300eb6ace3b1a8c87ea2
CRs-Fixed: 3073012
2022-05-13 12:04:44 -07:00
Gururaj Pandurangi
90fe84b4f9 qcacld-3.0: Update caller APIs of get power type for 6G API
Update the caller functions of wlan_reg_get_6g_power_type_for_ctry
to include AP's power type as a factor along with existing ctry
codes to determine STA's power type for 6G.

Change-Id: I8e1c54a5e760b173532fc001790fb76c70120c54
CRs-Fixed: 3087093
2022-05-13 12:04:39 -07:00
Gururaj Pandurangi
cf85121cc9 qcacld-3.0: Add psoc ptr arg in get 6G power type for ctry API
Pass psoc ptr as argument in addition to existing args in
wlan_reg_get_6g_power_type_for_ctry API to support new APIs
like wlan_cm_get_check_6ghz_security that are invoked within.

Change-Id: I9615c5d2cb509a0c9f8e10073c0928ab38f179f8
CRs-Fixed: 3080203
2022-05-13 12:04:34 -07:00
Vinod Kumar Pirla
5f5fb691fa qcacld-3.0: Reduce log level of certain error logs
Reduce log level of a few error logs to reduce
excessive logging.

Change-Id: I3e93d033bc29a7dfee5c5ef18d52cded54fc1cbb
CRs-Fixed: 3035970
2022-05-13 16:03:55 +05:30
Madan Koyyalamudi
c240bb046b Release 2.0.8.29Q
Release 2.0.8.29Q

Change-Id: I98f71a720017a8cb593c23ea250539fba25cf4fe
CRs-Fixed: 774533
2022-05-10 17:42:00 -07:00
Srinivas Dasari
d8a5c68039 qcacld-3.0: Fix ref leak for temp sta info node
hdd_is_connection_in_progress_iterator loops through all adapters
and the sta_info present in each adapter to find out
if any connection is in progress. In SAP case, there could be
multiple sta_info present and need to traverse through them by
avoiding running into loop on the same sta_info/released
sta_info. The hdd_for_each_sta_ref_safe helps for the same but
takes two references, one for sta_info and one for a
temporary entry. Release both after checking the
connection status.

Change-Id: I58a49e12b6d581dbaf1c129ce5a5196b31fb432f
CRs-Fixed: 3188412
2022-05-10 09:12:36 -07:00
Madan Koyyalamudi
c1a09ef66e Release 2.0.8.29P
Release 2.0.8.29P

Change-Id: I5e9f0525790b10ac9544ce1e1aa202047dcb7afd
CRs-Fixed: 774533
2022-05-06 05:28:30 -07:00
Rahul Gusain
29f0d9734d qcacld-3.0: Check for NAN state only if NAN SM is in host
A check is added recently to avoid creating NDI if NAN is not in
enabled state. This is to avoid wastage of resources(vdev, peers,..)
in firmware.But this check is valid only for the platforms where NAN
statemachine is in host driver. This check is not valid for legacy
platforms where NAN state machine is in firmware. Bypass the same
for legacy targets.

CRs-Fixed: 3178939
Change-Id: I1475b4313d1e7ac2c05d5edd215e929f3eb6335e
2022-05-06 14:04:54 +05:30
Madan Koyyalamudi
922ce620ae Release 2.0.8.29O
Release 2.0.8.29O

Change-Id: I8dc25bd2d15d504e01d2530cea965ad046e6c930
CRs-Fixed: 774533
2022-05-05 12:12:30 -07:00
Srinivas Dasari
6d7810c7a9 qcacld-3.0: Pick a valid channel for NDI start
Currently, NAN 5GHz social channel 44(5220) is picked to start
the BSS for NDI if 5GHz band is supported. But the channel
might get disabled due to regulatory constraints or
user/applications might also disable based on the usecase.
NDI fails to start in such cases.
Pick a valid channel to start the BSS and give preference to
NAN social channels.
Also, don't allow NDI start when NAN discovery is not enabled
to avoid issues due to DBS incase if NDI to be started in
a 2.4GHz channel.

Change-Id: I562d0f4f6a425ad7fb4cd043e696d3d573854b3b
CRs-Fixed: 3068545
2022-05-05 12:12:29 -07:00
Madan Koyyalamudi
2a7ce249b1 Release 2.0.8.29N
Release 2.0.8.29N

Change-Id: Iff2528b0301592abe15e009b2c76b0085dc50e3c
CRs-Fixed: 774533
2022-05-05 03:04:28 -07:00
Srikanth Marepalli
12fcde6918 qcacld-3.0: Use WLAN_WEAR_CHIPSET to modify INI path
On Wear HL based target with keystone kernel, it generates
WLAN driver with name "qca_cld3_wlan.ko" based on macro
definition WLAN_WEAR_CHIPSET. But the driver was not loading
because of the old INI path and /dev path.
This commit modifies the INI path and /dev path based on
macro defined i.e. WLAN_WEAR_CHIPSET.

Change-Id: I6d457a3bb708de3175c40b0f2b3ba0ebde915838
CRs-Fixed: 3168115
2022-05-05 03:04:28 -07:00
Madan Koyyalamudi
86ea5202e2 Release 2.0.8.29M
Release 2.0.8.29M

Change-Id: I40733b9d3fbf40a9c15f08f3eda9779dda8a9d70
CRs-Fixed: 774533
2022-05-04 15:25:22 -07:00
Ashish
4d3c4bced3 qcacld-3.0: Update ccfs2 in ht operation
Currently driver does not update ccfs2 correctly in ht operation
when it caches the connetion info, because of this userspace
is not able to get correct bw info for sta big data.

To address above issue, update ccfs2 corrrectly in ht operation.

Change-Id: I13dc8b674d24be7435a85b91a1ecc43e0c37900b
CRs-Fixed: 3183162
2022-05-04 15:25:21 -07:00
Mohit Khanna
40f3168fd1 qcacld-3.0: Force "IDLE" level on BW timer stop
Bus bandwidth timer tweaks certain aspects of the system during
throughput transitions. For example, when throughput goes high, system
parameters are tweaked in favor of system performance. Hence, when high
performance is not needed, the timer relies on throughput transitioning
to low to reset the parameters in favor of power.

During a corner case, its possible that while througput is high, wlan
adapter is immediately brought down. This stops the bus bandwidth timer
abruptly without letting the the timer detect a throughput transition to
low. This may result in higher power consumption even when there is no
data activity or throughput is low.

Explicilty force a transition to "IDLE" state when bus bandwidth timer
is stopped.

Change-Id: I0a0a64a855714b1a8b5a52a048604fef54a0ee41
CRs-Fixed: 3087118
2022-05-04 15:25:15 -07:00