提交線圖

29721 次程式碼提交

作者 SHA1 備註 日期
Rahul Choudhary
35e5e0117e Release 5.2.1.75G
Release 5.2.1.75G

Change-Id: Ia1d3b71132d1af5310ab9ee72e099c1e884d6464
CRs-Fixed: 774533
2023-07-27 04:49:43 -07:00
Gururaj Pandurangi
42c5033011 qcacld-3.0: Do not advertise EMLSR support to draft 2.0 AP
Add a check to distinguish 11BE draft 2.0 AP vs 3.0 AP
based on MSD params received in beacon/probe response rather
than assoc frame and if the params are present (draft 2.0),
then do not advertise EMLSR support in association request
as EMLSR mode will not be supported.

Change-Id: I5f3e9ce76dc634f4fea1422f0d8b9da3edbb0587
CRs-Fixed: 3560902
2023-07-27 04:49:43 -07:00
Jianmin Zhu
9e0d78bf29 qcacld-3.0: Add OUI config to send SMPS frame along with OMN for IoT AP
Add gActionOUISendSMPSFrameWithOMN to send SMPS frame along with OMN for
specified IoT APs.

Change-Id: Ida35779d11f9c6d6340afdbebeb788520fa7afdc
CRs-Fixed: 3568463
2023-07-27 04:49:35 -07:00
Rakesh Pillai
273eee3139 qcacld-3.0: Add support to reset def_link during dynamic mac addr update
Dynamic mac address update is a special case, where the
(sta)connection can change without the vdevs corresponding
to an interface. The tx/rx happens on the def_link of the
dp_intf, which does not get reset in case of dynamic mac
addr update. Due to this, all the tx of packets might be
attempted on an invalid dp_link, leading to drop of all
the packets queued for TX.

Add support to reset the def_link of an interface during
dynamic mac address update.

Change-Id: I1e87c083f39b56525f69c225117bcce538931dbb
CRs-Fixed: 3570440
2023-07-27 04:49:26 -07:00
Rahul Choudhary
5a47621879 Release 5.2.1.75F
Release 5.2.1.75F

Change-Id: Ib7eb179b20aa0a8e15bb92a33da9e12564e25c13
CRs-Fixed: 774533
2023-07-26 21:24:29 -07:00
Rachit Kankane
affd0fc86e Revert "qcacld-3.0: Set max supported BW for STA"
Revert core/mac/src/pe/lim/lim_prop_exts_utils.c done as part of
commit - 29fa4e5ac8.
This change is causing roaming failure and power leaks since VDEV
channel width value is read by FW.

Change-Id: I1712522d11a1ee1262c3a6d35dea3a1238812548
CRs-Fixed: 3556513
2023-07-26 21:24:29 -07:00
Rakesh Pillai
f09727ebc7 qcacld-3.0: Fix incorrect arg passing to stats (ol_txrx_ops)
dp_tx_rx_collect_connectivity_stats_info expects dp_link
handle as an argument. Currently many of the direct callers
of this function is passing dp_intf as an argument to this func.

Fix this by passing dp_link as an argument to the function
dp_tx_rx_collect_connectivity_stats_info.

Change-Id: Icfedc1cc721de4ad0b536967dc32a6af53b86e9e
CRs-Fixed: 3571037
2023-07-26 21:24:24 -07:00
Rahul Choudhary
7548be769c Release 5.2.1.75E
Release 5.2.1.75E

Change-Id: Ic6522d0134ef55f35cede343c7618d9000938514
CRs-Fixed: 774533
2023-07-26 10:52:14 -07:00
Chunquan Luo
babe235645 qcacld-3.0: Fixed BTM roam update to userspace
Since driver support special roaming and common roaming,
support common BTM roaming update to userspace, and we
can fetch the info by vendor_cmd_tool.

Change-Id: I753ded47d650ae4c9c579265485f081c16581c25
CRs-Fixed: 3568450
2023-07-26 10:52:14 -07:00
Aditya Kodukula
2614683a35 qcacld-3.0: Add a sanity check to prevent integer overflow
Currently in the function hdd_send_roam_scan_channel_freq_list_to_sme,
the num_chan variable is declared as uint8_t and is incremented
for each nested attribute PARAM_SCAN_FREQ_LIST.

If the number of attributes sent by userspace is more than max value
of uint8_t, then an integer overflow occurs.

To avoid this issue, add a sanity check to see if num_chan has reached
SIR_MAX_SUPPORTED_CHANNEL_LIST before incrementing variable.

Change-Id: I601a73a118eb65ebb8575f6ed5ed1f29d915f59e
CRs-Fixed: 3568577
2023-07-26 10:52:09 -07:00
Rahul Choudhary
4ce00a946b Release 5.2.1.75D
Release 5.2.1.75D

Change-Id: Ib6c599f2f5d3422e052531582e5ebb27991752ce
CRs-Fixed: 774533
2023-07-26 04:39:45 -07:00
Chunquan Luo
dabad521e8 qcacld-3.0: Avoid NULL pointer dereferenced
Pointer 'driver_sync' returned from call to function
'__osif_driver_sync_trans_start' may be NULL and will be dereferenced.

CRs-Fixed: 3566149
Change-Id: Ibf75390bcdf246f2f96f331cb6123b78aea33203
2023-07-26 04:39:44 -07:00
Rahul Choudhary
7250978556 Release 5.2.1.75C
Release 5.2.1.75C

Change-Id: I80da308c40362a73ff2350f2e4e9e5497d5347da
CRs-Fixed: 774533
2023-07-25 22:29:24 -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
Rakesh Pillai
a074f04323 qcacld-3.0: Select tx_dp_link in datapath component
Currently datapath uses the vdev provided by UMAC for
tx of any packet. With the single-netdev-multi-vdev
model, there are chances that the vdev, in MLO case,
selected for packet TX in UMAC may not be the def_link
which datapath expects to use for tx/rx.

Hence, to mitigate, this issue, datapath will not use
the vdev provided by UMAC, but instead select a dp_link,
inside the dp_component, for tx/rx

Change-Id: I5ff4a79365b3426e1bcc6d4cac31a44058ee18db
CRs-Fixed: 3568989
2023-07-25 22:29:19 -07:00
Aasir Rasheed
f7f54352e6 qcacld-3.0: Update mlo manager mac address
This change is to update mlo manager mac
address when the station adapter is coming up.

Change-Id: Ie80683043922fdac7807c7b4ae2fd3605a41e256
CRs-Fixed: 3570015
2023-07-25 22:29:13 -07:00
Rahul Choudhary
cd952bfd19 Release 5.2.1.75B
Release 5.2.1.75B

Change-Id: I7c877f4668c3e004a8cdae138ac0e42f3374a8cb
CRs-Fixed: 774533
2023-07-25 15:21:40 -07:00
Vijay Raj
b02c135bd7 qcacld-3.0: Add key index check for Multi password SAP
In the api wlan_hdd_add_vlan(), key index value check
is not present which can cause buffer overflow.

Add keyindex check in the api wlan_hdd_vlan_sap()
in order to prevent the buffer overflow.

Change-Id: I87c606eed6b4e169d6e059cd5d06342c2bc0adaf
CRs-Fixed: 3560531
2023-07-25 15:21:40 -07:00
Rakesh Pillai
8f9d742ef5 qcacld-3.0: Cleanup datapath component code
Code cleanup in datapath component.

Change-Id: I03585bd319e835a28de37ae98fb8edafbc1820ee
CRs-Fixed: 3568991
2023-07-25 15:21:35 -07:00
Rakesh Pillai
cd187812d3 qcacld-3.0: Fix incorrect typecast in txrx_ops handlers
Currently the opaque context passed to txrx_ops handlers
is incorrectly typecasted to dp_intf. The context being passed
is dp_link handle. This leads to unwanted memory access.

Fix this by correctly typecasting the context passed to
all the txrx_ops handlers as dp_link handle.

Change-Id: I587b12056625bb68e86ecb54118bb2f6bfa62bd9
CRs-Fixed: 3569531
2023-07-25 15:21:30 -07:00
Rahul Choudhary
570e533669 Release 5.2.1.75A
Release 5.2.1.75A

Change-Id: Ib053335a25a3340cae4027ac1e5b9e941651acbc
CRs-Fixed: 774533
2023-07-25 03:18:37 -07:00
Mohammed Ahmed
a19d20e842 qcacld-3.0: Add unregister netdevice log
Current code does not have logs when a
netdevice is unregistered. Fix this by
adding a log when unregistering a
netdevice

Change-Id: I5f811093e16efcb6e286d9c0839738603eef758a
CRs-Fixed: 3564014
2023-07-25 03:18:37 -07:00
Mohammed Ahmed
d6cc451bfb qcacld-3.0: Enable BMPS power save for emulation
For emulation builds, remove ps timer stop and
reduce timeout to 11ms, allowing BMPS for
emulation.

Change-Id: Ib633f716ce4bd792a12a08652abe0eb1d36a5750
CRs-Fixed: 3526207
2023-07-25 03:18:31 -07:00
Rahul Choudhary
fcae21bf78 Release 5.2.1.75
Release 5.2.1.75

Change-Id: I072ccbe3808a7d7cdb5d7e8911d1c9349e2a5ad0
CRs-Fixed: 774533
2023-07-25 00:18:58 -07:00
Aasir Rasheed
3086b00b54 qcacld-3.0: Add 11be BW 320 in GETSTAINFO
Implement changes to support 11be mode
and bandwidth 320 required for EHT.
Change-Id: I0b5e82e4d5fa0c2f1c8c8921d2b13a111582184c
CRs-Fixed: 3554106
2023-07-25 00:18:57 -07:00
Rahul Choudhary
4739033fd5 Release 5.2.1.74Z
Release 5.2.1.74Z

Change-Id: Iee3d158c16bdce2eeda7c9af241986047427723a
CRs-Fixed: 774533
2023-07-24 15:50:43 -07:00
Rakesh Pillai
854bd8cafb qcacld-3.0: Fix incorrect arg passed in dp_rx_pkt_thread_enqueue_cbk
Currently dp_rx_pkt_thread_enqueue_cbk passed dp_intf to
dp_rx_packet_cbk, though it expects the caller to pass
dp_link context. This leads to an invalid memory access
due to incorrect typecasting.

Fix this by passing the correct dp_link context to
dp_rx_packet_cbk.

Change-Id: If37fd18d49a6d5464e01c07160a1be612e564ffb
CRs-Fixed: 3568233
2023-07-24 15:50:42 -07:00
Rahul Choudhary
b31b97faf7 Release 5.2.1.74Y
Release 5.2.1.74Y

Change-Id: I83afef5c1b0ff72cee8048f9e968b3d68d04ffac
CRs-Fixed: 774533
2023-07-24 05:09:57 -07:00
Jianmin Zhu
dbbd250f26 qcacld-3.0: Fix assert for MLO AP channel switch
When MLO AP start, lim_create_peer_idxpool_legacy isn't called, so
gpLimPeerIdxpool in pe session keeps NULL. When AP do channel switch,
MLO concurrency check failed for current AP not ignored, AP MLO flag is
cleared. When Ref sta disconnect, access gpLimPeerIdxpool to free peer
id, assert happens.

To fix it, when AP restart, ignore current AP when check MLO concurrency.

Change-Id: I3625dcd4f8c1a5020588311706faa1eb70ae8e9d
CRs-Fixed: 3548564
2023-07-24 05:09:56 -07:00
Chaoli Zhou
cc116d9893 qcacld-3.0: Strip WAPI IE from additional IEs
Support to strip WAPI IE from additional IEs for
beacon frame. Otherwise, it will have duplicated
WAPI IE, which mean one is from rsnIE and the other
is from probeRespBCNData_buff.

Change-Id: Id9708c81445fbb88e5ceb79698bff6bd02f931df
CRs-Fixed: 3562798
2023-07-24 05:09:51 -07:00
Rahul Choudhary
ee915da128 Release 5.2.1.74X
Release 5.2.1.74X

Change-Id: I08057fd75f8935ed4efd89a8ac907f8835161167
CRs-Fixed: 774533
2023-07-23 17:08:56 -07:00
Aditya Kodukula
c91ee1f29d qcacld-3.0: Send MLO_LINK_ID only in connected state
Currently in driver, MLO_LINK_ID attribute is sent to
userspace as part of LL interface stats even in disconnected
state. This might cause an issue in userspace. So to avoid it,
send MLO_LINK_ID attribute in connected state only.

Change-Id: Icdf5fdb57b1d52bec7b17a90a57adcee86535ffb
CRs-Fixed: 3567677
2023-07-23 17:08:56 -07:00
Aditya Kodukula
ef0cb63958 qcacld-3.0: Initialize signal field in hdd_sinfo with default value
When aggregated mlo station stats are requested, driver
will get vdev station stats for all the ml links and updates
hdd_sinfo struct, which is then sent to userspace.

But, in the current implementation of the driver, if a vdev
is inactive, we return from the function wlan_hdd_update_mlo_sinfo
without updating the hdd_sinfo struct, and when active vdev tries
to update the signal field it fails because the initial value
for the signal is 0dBm which is very high compared to the link's RSSI.

So to resolve the issue, initialize the signal field with a default
value of -128dBm.

Change-Id: I7b584bf431bda38ed9154f2945c9c81fdfd96902
CRs-Fixed: 3562515
2023-07-23 17:08:51 -07:00
Rahul Choudhary
a753e8f65f Release 5.2.1.74W
Release 5.2.1.74W

Change-Id: I405f26990613816a3bf72d37bae6bd0efd4c9bad
CRs-Fixed: 774533
2023-07-21 16:49:44 -07:00
Amit Mehta
f301f8de06 qcacld-3.0: Move tsf_sync_get_completion_evt create to start during init
Move tsf_sync_get_completion_evt create to start during init to avoid
any issue while handling tsf vendor command as host tries to
reset the event flag in the vendor command handler API.

Change-Id: I9469abe6adcd77291bacb03a4cc79657cc233660
CRs-Fixed: 3565005
2023-07-21 16:49:44 -07:00
Asutosh Mohapatra
44475b7713 qcacld-3.0: Remove 6 GHz channels from ACS if fcc set
Currently, if STA is connected to 6 GHz AP and host receives
SET_FCC_CHANNEL 0/2 command it disables all 6 GHz channel
except for STA connected channel. Now if user turns on
hotspot in case of force SCC SAP tries to come up on STA's
channel depending on the ACS preference score. But host
rejects SAP start on 6 GHz channel as fcc constraint is set.

To address this issue, while computing ACS list remove 6 GHz
channels from ACS list if SET_FCC_CHANNEL 0/2 command is
received before.

Change-Id: I7acd106fe74042cd9333b3eae359675094ea8ffd
CRs-Fixed: 3563415
2023-07-21 16:49:39 -07:00
Paul Zhang
b49fc71fdc qcacld-3.0: Add logic to restore info when SSR happens
Add logic to check whether the context is SSR or not. If
SSR happens, restore the info which is set by vendor command.

Change-Id: I09da91e68f79e8c28f4474fb6ebe3b56dbe41da2
CRs-Fixed: 3554415
2023-07-21 16:49:34 -07:00
Aasir Rasheed
dccc97079b qcacld-3.0: Add pairwise key for all the link
Currently, we are storing all the keys based on vdev
object. However, with n link mlo there is a need to
add all the keys based on psoc level.

This change is to add pairwise key based on psoc level.

Change-Id: Ib2b53f800eeec0694514239a5d87052accadbc33
CRs-Fixed: 3565190
2023-07-21 16:49:29 -07:00
Aditya Kodukula
d37e4a04d4 qcacld-3.0: Enable WLAN_TRACE_HIDE_MAC_ADDRESS feature
As part of minidump privacy feature, enable the feature flag
WLAN_TRACE_HIDE_MAC_ADDRESS to hide 3 bytes of mac address
in wlan driver logs.

Change-Id: I054b83f2adc6c77c085fd4e0db9f0287277e2e74
CRs-Fixed: 3563936
2023-07-21 16:49:24 -07:00
Rahul Choudhary
aa5d404b60 Release 5.2.1.74V
Release 5.2.1.74V

Change-Id: I36f4e9c17e3090efdbd47e94b7f463388c47ae6b
CRs-Fixed: 774533
2023-07-21 10:23:23 -07:00
Mohammed Ahmed
7ee13f112f qcacld-3.0: Add mac_handle null pointer checks
Current code does not have null pointer checks
in functions: hdd_cm_update_rssi_snr_by_bssid,
and hdd_send_mlo_ps_to_fw.
Fix this by adding null pointer checks.

Change-Id: Iee17b8371bebbb158ba188c22a0d04cabdf12f0c
CRs-Fixed: 3562611
2023-07-21 10:23:23 -07:00
Rakesh Pillai
2b1f8b6f81 qcacld-3.0: Avoid dereference of dp_link before NULL check
Fix issue by removing the dereference of dp_link
before NULL check.

Change-Id: I2e5987a2ec5652acabd8402b4c0c65106d37135d
CRs-Fixed: 3566033
2023-07-21 10:23:17 -07:00
Aditya Kodukula
1fd3f29a9e qcacld-3.0: Validate hdd_ctx before dereferencing
Currently in the function wlan_hdd_put_mlo_peer_link_id,
the hdd_ctx is dereferenced before validating it. It can
cause a potential Null pointer dereference. To avoid that,
validate hdd_ctx before using it.

Change-Id: I15dc23c594a48bc8585c3ff0d68ddd131f85706d
CRs-Fixed: 3565152
2023-07-21 10:23:12 -07:00
Rahul Choudhary
4b4b76694a Release 5.2.1.74U
Release 5.2.1.74U

Change-Id: Iac4c0626cc48749f011c95b214c1a1252a2f33ab
CRs-Fixed: 774533
2023-07-21 01:16:28 -07:00
Arun Kumar Khandavalli
3bb027009b qcacld-3.0: Dont allocate reply skb without getting the request
On LL_STATS debugfs request from the userspace driver is allocating
a reply vendor skb and trying to send the vendor command response
to userspace, resulting in kernel warning and rejecting the allocation.

Don't send the response to userspace if the command request is received 
for debugfs.

Change-Id: I9e4374a39785883ed9092a2e7a956e8d8da2a22b
CRs-Fixed: 3555919
2023-07-21 01:16:28 -07:00
Manikanta Pubbisetty
ed37d33b4e qcacld-3.0: Enable HIF CE RX reusable nbufs feature
Enable HIF CE RX reusable nbufs feature for qca6750 (Moselle)
target.

Change-Id: If476e6eb4559b31d45799b1d7f168bd89fafd608
CRs-Fixed: 3554491
2023-07-21 01:16:23 -07:00
Vijay Patil
633a3750af qcacld-3.0: Cleanup current peers upon secondary STA roaming
The secondary STA is non-ML type by default, so driver doesn't
create mld/ml_dev_ctx for the vdev corresponds to secondary
interface which is wlan1.

But in current scenario there is a check in the peer cleanup
API which always expects ml_dev_ctx. when secondary STA(wlan1)
roams from one AP to other AP, driver doesn't cleanup the old
peer due to this check and results a peer leak.

Delete all peers even when secondary STA roaming which avoid
this issue.

Change-Id: Ib759b43949651894e7a2aeef5255e46b7c9fa254
CRs-Fixed: 3562495
2023-07-21 01:16:17 -07:00
Deeksha Gupta
60cbf85341 qcacld-3.0: Remane enum attribute to QCA_WLAN_VENDOR_ATTR_TDLS_STATE_NEW_STATE
Rename enum attribute QCA_WLAN_VENDOR_ATTR_TDLS_NEW_STATE
to QCA_WLAN_VENDOR_ATTR_TDLS_STATE_NEW_STATE.

Change-Id: I744bb438cac284e439eb802be23f9883cfca463f
CRs-Fixed: 3564791
2023-07-21 01:16:12 -07:00
Amit Mehta
2a87c33052 qcacld-3.0: Free dp_txrx_handle in dp_rx_refill_thread_init fail case
Currently in dp_txrx_init during dp_rx_refill_thread_init fail case
dp_txrx_handle is not freed which results in memory leak issue.

To fix the issue free dp_txrx_handle in dp_rx_refill_thread_init
fail case

Change-Id: I0804154519707d5d558940cccaa699f639ae6704
CRs-Fixed: 3563740
2023-07-21 01:16:07 -07:00
Paul Zhang
012efd118b qcacld-3.0: Add logic to set wifi standard for vdev
Add logic to set wifi standard per the vendor
attribute QCA_WLAN_VENDOR_ATTR_CONFIG_PHY_MODE
and QCA_WLAN_VENDOR_ATTR_CONFIG_IFINDEX for vdev.

Change-Id: Ib03d233bf6f290859e2d754b3193ae5020d872d5
CRs-Fixed: 3554395
2023-07-21 01:16:02 -07:00