Grafik Komit

18258 Melakukan

Penulis SHA1 Pesan Tanggal
KARTHIK KUMAR T
70e9286f37 qcacmn: mcast_mlo handling in intrabss fwd
mcast mlo handling for the intra bss fwd

Change-Id: I23c1a9759ac3ac59f2f46fdb456c616c77823e8c
CRs-Fixed: 3353501
2023-01-05 18:01:34 -08:00
Amit Mehta
851e62a653 qcacmn: Changes assert level and add log if peer entry already present
Currently in dp_peer_find_id_to_obj_add while adding peer to soc
peer_id_to_obj_map list, if peer entry is already present for the
peer_id due to no umap event for older peer, driver calls QDF_ASSERT
and returns, As QDF_ASSERT is NOP it results in older entry still present
in the table. which results in peer leak issue as while doing peer unamp
driver gets peer from soc peer_id_to_obj_map table based on peer id,
Since older entry is still there older peer will be freed and new peer
unamp will not happen.

To fix the issue call qdf_assert_always if peer entry is already present
for peer id which will always assert and add additional logs to print
peer information.

Change-Id: Ic777e9c7881fcbc67f54002bd619a8e6d52de126
CRs-Fixed: 3369736
2023-01-05 18:01:25 -08:00
Srinivas Dasari
f5aa4b6700 qcacmn: Validate available buffer before adding ML IE to link frame
Non-assoc link might be superior in features compared to assoc
link and the per-STA profile info may carry corresponding IEs.
These IEs are extracted and added to IE list of link probe
response while generating it. So, the link probe response
generated from assoc link probe response might be of more size
than assoc link probe rsp. It's caller responsibility to allocate
buffer for the derived scan entry considering the copied IEs from
ML per STA profile.
Add a check to validate the available buffer while copying the
ML IE (as it's copied after deriving IEs from per STA profile) as
this is missing currently.

Change-Id: Ieafc9730ad098abb80fb1f3c14eb22b6b590ff20
CRs-Fixed: 3364159
2023-01-05 14:31:30 -08:00
Edayilliam Jayadev
629e231541 qcacmn: Initialize detector id to mode table for QCA5332
Initialize Spectral Scan detector ID to Spectral mode table for
QCA5332. Detector ID 1 and 2 are not supported for QCA5332.

CRs-Fixed: 3366784
Change-Id: I7fe9b53819c649455a67957827e4f900e39257e0
2023-01-05 14:31:01 -08:00
Pooventhiran G
e69557093d qcacmn: Fix Rx PN error stats for broadcast mgmt frames
Rx PN error stats for broadcast management frames is being tracked
as a ucast stats. Fix it to be tracked as part of mcast stats.

Change-Id: If76c512107728b792ed6d92d56036325592f0fd1
CRs-Fixed: 3361840
2023-01-05 14:30:52 -08:00
Tallapragada Kalyan
6774796947 qcacmn: Add soc count for multi-chip mlo
Add soc count for multi-chip mlo

CRs-Fixed: 3370858
Change-Id: I128a378cdf29f03eb4356cd8049aea47e0af7c18
2023-01-04 22:02:10 -08:00
Tallapragada Kalyan
328ea67a32 qcacmn: enable FSE with MLO support
from Beryllium onwards a single Flow Search Table
will be used across multiple radios. to ensure this
a single FST attach is called for the first SOC's
pdev and FST detach is called only during last pdev
of last SOC. the same FST instance is saved in all
pdevs of all the SOCs

CRs-Fixed: 3366409
Change-Id: I42fbdc6f09fb902021877e100a2831a1a24bc975
2023-01-04 18:30:46 -08:00
Sushant Butta
6bab9eec62 qcacmn: Fix for memory leak
In error conditions(packet truncation or flush detected)
packet buffers are not freed, changes are done to
iterate over all the packet buffers and free them.

Change-Id: I48ef0022c7a9c8c6fd067d78d6b46daf84855cc8
CRs-Fixed: 3363841
2023-01-03 21:51:56 -08:00
Surabhi Vishnoi
c912d8c2e6 qcacmn: Fix 6 GHz bss HE capable beamformee score
Currently, BSS beamformee score is calculated from vht_cap or
eht caps, so for 6 GHz HE capable BSS it will calculated to zero.
Due to this 5 GHz will always get selected compared to 6 GHz BSS with
all other capabilities and conditions same in both BSS as 5 GHz
will have more total candidate score.
Fix this issue by correct calculation of AP beamformer capability
in case of 6 GHz HE BSS.

Change-Id: I0f3285ce1c5c1aeeba624c5371ff0f884ae78c58
CRs-Fixed: 3351991
2023-01-03 11:48:49 -08:00
Arun Kumar Khandavalli
c3fd408a86 qcacmn: Deinitialize t2lm context correctly
Deinitialize the t2lm context so that locks/timer will get
freed correctly.

Change-Id: I392f5c89f5c144413ed6144f499fadf054c547c5
CRs-Fixed: 3359134
2023-01-03 09:40:24 -08:00
Asutosh Mohapatra
1ade380fc3 qcacmn: Use mac_addr pointer as constant
Use mac_addr pointer as constant in wlan_hdd_ml_sap_get_peer,
hdd_set_mld_address and use the same for consecutive APIs.

Change-Id: I3ab7b0f3c03e9175c62179029efb53fb9fe75277
CRs-Fixed: 3342115
2023-01-02 15:01:22 -08:00
Amit Mehta
877eaf11ea qcacmn: Fix HTT HAL Tx status mapping
Currently HTT_TX_FW2WBM_TX_STATUS_DROP and HTT_TX_FW2WBM_TX_STATUS_TTL
are mapped to HAL_TX_TQM_RR_REM_CMD_REM which results in the wrong Tx
status print in case HTT_TX_FW2WBM_TX_STATUS_TTL where No ack is received.

So to fix the status log issue map HTT_TX_FW2WBM_TX_STATUS_DROP to
HAL_TX_TQM_RR_REM_CMD_REM and HTT_TX_FW2WBM_TX_STATUS_TTL to
HAL_TX_TQM_RR_REM_CMD_TX to log correct Tx Fail Status.

Change-Id: If125313f6b831ce5ca0f7eec9e8e3f1a03229f16
CRs-Fixed: 3362679
2023-01-02 10:53:33 -08:00
Santosh Anbu
001bc02d42 qcacmn: Avoid deadlock in back to back connect for MLO
When mlo_connect is posted, mlo_dev_ctx lock is acquired.
As part of which is CM is not in init state, disconnection is posted
before processing of connect request.

In disconnect, mlo_sta_vdev_list is fetched which internally takes the
same mlo_dev_ctx lock leading to deadlock

Add fix to avoid deadlock in back to back connect handling.

Change-Id: Ic88229a7709e11edc790fb66401bb0336d8a1e27
CRs-Fixed: 3365031
2023-01-02 07:29:53 -08:00
Himanshu Batra
fcba5ea249 qcacmn: Add API with flag to validate disconnect request
In case of ml_activate_pend_disconn_req_cb, mlo_disconnect is called
which validates disconnect request. If the disconnect was deferred due
to race in mlo connect notify event and disconnect received by mlo
manager, then ml_activate_pend_disconn_req_cb will end up in a deadloop
where it will always defer any disconnect due to above race.
Hence, add API with flag to validate disconnect request.

Change-Id: Ifa434a2f2f5e7a4d17d25349cb7ab86fa50ce043
CRs-Fixed: 3361387
2022-12-29 22:06:03 -08:00
Deeksha Gupta
61aaf2474b qcacmn: Add MLD Address and no of link print in scan entry
Print MLD address and number of links info in scan entry
in case of ML AP.

Change-Id: I3ed5d1d311a9f498fae0881e3de8720d907199e1
CRs-Fixed: 3355435
2022-12-29 18:34:24 -08:00
Amrit
1833aa0e7f qcacmn: Add support for stats in IPA Architecture
Add support for stats in IPA Architecture.

Change-Id: I38706503719f6236fa1081342e9eb1f0bd0ba1c2
CRs-Fixed: 3345292
2022-12-29 18:34:12 -08:00
Sreeramya Soratkal
266f87715e qcacmn: Validate status of spectral control request processed
Validate the result of spectral specific ucfg control operation
after processing the control request to get the spectral system
capability information.
Throw error if it is an invalid operation.

CRs-Fixed: 3308464
Change-Id: I11bbd3a9a9ffc8462e420946d54f06a11fad558e
2022-12-29 15:41:00 -08:00
Venkateswara Swamy Bandaru
935663d03b qcacmn: Fix typo in eht debug print
Fix typo in wmi debug print of peer assoc.

Change-Id: I0b58fbd6a6a153374b3695b82710dfe017678883
CRs-Fixed: 3366004
2022-12-29 13:41:45 -08:00
Nitin Shetty
07a80655a8 qcacmn: update error code for cdp_ppesds_entry_attach
if ppeds ops is not set then return not supported
error code.

Change-Id: Ib34018e97fef4f189e60c6349cab370a77a0b939
CRs-Fixed: 3362408
2022-12-29 13:41:36 -08:00
Sreeramya Soratkal
6eba2a4482 qcacmn: ini config to allocate special TX descriptors of SOC
An INI dp_tx_spl_device_limit is defined and can be used to configure the
limit of TX descriptors that can reserved on the SOC to handle
special frames like EAPOL.

CRs-Fixed: 3343207
Change-Id: Ic84a11249880a3541749a72ac6d60df548f2bc5c
2022-12-29 13:41:27 -08:00
Sreeramya Soratkal
88124ec9b4 qcacmn: ini config to allocate special TX descriptors of pdev
An INI dp_tx_spl_desc is defined and can be used to configure the
limit of TX descriptors that can reserved on the pdev to handle
special frames like EAPOL.

CRs-Fixed: 3343209
Change-Id: I6578bddd1f4ea07528c9f66f778b113ec6fb9e61
2022-12-29 13:41:17 -08:00
Amrit
f5eca8f1a9 qcacmn: Add NULL check for delay stats
Add NULL check for delay stats in txrx_peer

Change-Id: I3852be1b112a9a105af57890d1636d86a747b2ab
CRs-Fixed: 3365940
2022-12-29 07:17:07 -08:00
Pavankumar Nandeshwar
4e0ae9b556 qcacmn: Set search idx and cache mapping for ppeds
Set search idx and cache mapping for ppeds in
sta mode

Change-Id: I1f892d329878e093d19324a178566b87715e1736
CRs-Fixed: 3367824
2022-12-29 05:19:41 -08:00
Sai Rupesh Chevuru
166a30648f qcacmn: sanity checks in hal_attach
In case of memory allocation failures,
return appropriate failure to the caller in hal attach.

Change-Id: Ifc319bbc274d8a13836968d460eb8067857363b8
CRs-Fixed: 3357203
2022-12-29 05:19:31 -08:00
Yu Tian
70c9b142e8 qcacmn: Fix invalid rate info. in monitor mode
Fix NSS value is not filled in VHT monitor mode.

Change-Id: I9a3edd48d677b61c14503a5a55d8d177b5c92629
CRs-Fixed: 3368014
2022-12-29 02:46:25 -08:00
Varsha Mishra
e04f6dd5b8 qcacmn: Add get params for features
Add get parameters for features. These flags are
set in datapath vdev object and need to be extracted
outside datapath.

Change-Id: I4b4d8adcc523fc030bca699e0f0f9eb10475920c
CRs-Fixed: 3367490
2022-12-29 02:46:15 -08:00
Yu Tian
b05959171c qcacmn: Check system suspend status before REO CMD ring access
REO module may hang when REO commands are queued after WoW enable WMI
sent to FW. Change is used to check WoW progress before accessing REO
CMD ring. If WoW is in progress, then defer REO commands.

Change-Id: I9cd8390e77ef33f98f84cb604f152e3f9a0e4203
CRs-Fixed: 3362608
2022-12-28 19:19:25 -08:00
Neha Bisht
0ec15d3777 qcacmn: Move TDLS feature code under mcc macro
Create a wrapper API and move TDLS feature code under mcc macro

Change-Id: I98a8faf96dc23c6c5486cf30656bcf7facd0ba58
CRs-Fixed: 3360587
2022-12-28 15:33:37 -08:00
Divyajyothi Goparaju
b823977572 qcacmn: map pdev_param_default_6ghz_rate param
Currently there is no mapping for
wmi_pdev_param_default_6ghz_rate host param
with target param when TARGET_TO_HOST_CONVERSION
is enabled.This change will map the same.

Change-Id: I91a0af726ab787c93b3ed86bf975878a1919c7ed
CRs-Fixed: 3363930
2022-12-28 11:44:18 -08:00
Santosh Anbu
31a73b18df qcacmn: Avoid ml_ap_ctx access on STA vap
In scenario where mbssid is enabled (is_mbssid_enabled) on STA ML VAP,
if ML STA is trying to assoc to Non-ML AP, on freeing AID at the STA
ml_ap_ctx is referred which is not set for STA vap leading to null
pointer access.

Check for validity of ml_ap_ctx before access.

Change-Id: Ib8b924cfc035c1e3aeeb5154ef6d736aee6ba077
CRs-Fixed: 3357392
2022-12-28 11:44:09 -08:00
Himanshu Batra
fccca888fc qcacmn: Fix to avoid invalid mlo dev lock release
Fix to avoid invalid mlo dev lock release

Change-Id: I09da203114dcf8832c2e464b09f58691f52c0458
CRs-Fixed: 3368215
2022-12-28 08:12:02 -08:00
chunquan
58455ec078 qcacmn: Realloc memory for wmi_service_ext_bitmap
Realloc memory for wmi_service_ext_bitmap when
WMI_SERVICE_AVAILABLE_EVENTID event come, and
the num of wmi_service_ext_bitmap large then
previous num.

Change-Id: I2800fe3274e5516369486ef065ce03ba121bd5b3
CRs-Fixed: 3346739
2022-12-28 08:11:52 -08:00
jinbaoliu
5a1cd48520 qcacmn: Fix TX stastics failed to take TSO segment into account
Currently, we record TX musdu number and packet length, which falls into
three categories: from stack, from host and successfully transmitted. In
TSO mode, the msdu from stack will be divided into several fragments and
each of the fragment will be transmitted as an individual msdu. This change
will take TSO into account when it comes to the 3 forms of TX statstics.

Change-Id: Ie11cb7541b4e109609bf3104739a5e19f51dcc13
CRs-Fixed: 3361412
2022-12-28 06:15:15 -08:00
Chaithanya Garrepalli
e7b9b355df qcacmn: Handle peer Rx TID allocation failure
In case where memory alloction failure for RX TID return
appropriate status for CP

Change-Id: I96a3694b05f84034ebacd15d87e58cd1f59207de
CRs-Fixed: 3365642
2022-12-28 04:24:47 -08:00
Surya Prakash Sivaraj
f8f148db6a qcacmn: Fix unwanted vdev ref release
In reg_compute_indoor_list_on_cc_change(), vdev
release is not needed if the vdev is not found.
Therefore, proceed with the loop instead of release
of the vdev reference.

Change-Id: I92c909d0f7e6e262e64e5d1dc01481dc452da194
CRs-Fixed: 3363892
2022-12-28 00:47:54 -08:00
Surya Prakash Sivaraj
06469b874f qcacmn: Allocate TLV for KCK based on KCK length
For roam auth vendor event to userspace, currently
16bytes of static memory is allocated for KCK. However,
latest security AKMs have higher KCK length.

Allocate the TLV based on the KCK length received from
firmware.

Change-Id: I2a869989a263f141a9b24a1fb9a97eb34889ac19
CRs-Fixed: 3346092
2022-12-28 00:47:44 -08:00
nobelj
f1dd81866f qcacmn: Add support for firmware to software tlv
Added support for parsing firmware to software tlv. which is mainly used
for populating frequency of the current packet.

Change-Id: I67c552e6d6b5caf9c12c34e553bad70b89b30c40
CRs-Fixed: 3270364
2022-12-27 17:07:35 -08:00
Sreeramya Soratkal
d148f093d2 qcacmn: Handle allocation of descriptors to special packets
Special frames like EAPOL should not be dropped as it would cause
failure in connection. To prevent the dropping of higher priority
special frames, reserve a set of descriptors from the tx descriptor
pool.

Check the regular soc or pdev limit for the allocating tx descriptors
for the regular packets and use the reserved set of descriptors
only for the special packets.

CRs-Fixed: 3331359
Change-Id: I15532fb5e325ba6ad997090008bda8c52707a05b
2022-12-27 17:07:26 -08:00
KARTHIK KUMAR T
a2625b18ab qcacmn: Get ast_idx from dp peer structure
Get the ast_idx from dp peer structure to
set search index in HW tx descriptor

Change-Id: Icc7e70d8bb739348403663a1fe647849c57d277a
CRs-Fixed: 3346449
2022-12-27 14:27:45 -08:00
Deeksha Gupta
f1acd4d6d6 qcacmn: Add support to get Link info from reconfig ML IE
In the driver, add support to get the Link information from a given
reconfig variant Multi-link element.

Change-Id: Ia23b26ddb4195da21c071ee5f3c198e0492ef952
CRs-Fixed: 3348524
2022-12-27 11:09:13 -08:00
Himanshu Batra
b23b9551cc qcacmn: Changes to handle dynamic link add for non-AP MLD
Changes to handle dynamic link add for non-AP MLD.
Also add change to clear mlo cap for link removal of vdev.

Change-Id: I47e0bb77b7f32296e5745ffd53ce3a34ec35a63a
CRs-Fixed: 3346538
2022-12-27 11:09:04 -08:00
Himanshu Batra
5ea3ebf775 qcacmn: Change to handle ML reconfig link delete
Change to handle ML reconfig link delete

Change-Id: Iaf743a1a61534f2f4bb12be7fccad48e67b81c12
CRs-Fixed: 3346537
2022-12-27 11:08:54 -08:00
Deeksha Gupta
3c3a62b04b qcacmn: Add support to get MLD mac address from reconfig ML IE
In the driver, add support to get the MLD mac address from a given
reconfig variant Multi-link element.

Change-Id: I8c54f58f05a89cd5624ea5dc34b6630c06777013
CRs-Fixed: 3348125
2022-12-27 11:08:44 -08:00
Deeksha Gupta
de6b627426 qcacmn: Add support to parse reconfig ML IE
Add support to parse Reconifg ML IE and fill ml info in the scan
cache entry.

Change-Id: Ieb7ba1731d82474fbead1d6edbe1584fbdb42e0d
CRs-Fixed: 3347362
2022-12-27 11:08:35 -08:00
Harsh Kumar Bijlani
299c4870e5 qcacmn: Add new attributes in SCS rule config QCA vendor subcommand
Add new attributes for the destination MAC address and netdev index in
SCS rule config subcommand.

Change-Id: I8298d9e0080440fce7401fb931e1af42672711cf
CRs-Fixed: 3359591
2022-12-27 07:12:38 -08:00
Harsh Kumar Bijlani
32e703fd57 qcacmn: Remove duplicate APIs used for peer stats fetch
Remove duplicate APIs used for peer stats fetch

Change-Id: I960b80cf0b1269cfcdff9a53a5990f822037e837
CRs-Fixed: 3360114
2022-12-27 07:12:28 -08:00
Pavankumar Nandeshwar
4c86eb5e8a qcacmn: Use flag RX_PEER_INVALID_ENH for invalid peer handling
Use the flag RX_PEER_INVALID_ENH for invalid peer
event instead of FEATURE_NAC_RSSI

Change-Id: I87e301a48b1ccdcd28f8e2eb0ba80b215efa384c
CRs-Fixed: 2969193
2022-12-27 07:12:18 -08:00
Jhalak Naik
602db0a0df qcacmn: Mark SRNG initialized when mem allocation is done
Mark srng_initialized to true when the DBR ring memory
allocation is completed.

Change-Id: Iacb4d5ac884bb575ad4b98201280527521906e63
CRs-Fixed: 3355169
2022-12-27 05:17:20 -08:00
Jyoti Kumari
384147888a qcacmn: Fix kernel doc format in edca_pifs_vparam structure
Fix kernel doc format in edca_pifs_vparam structure

Change-Id: Id947aa350be513506a023c511ff647335e88037e
CRs-Fixed: 3363574
2022-12-27 05:17:10 -08:00
Tallapragada Kalyan
36ed11fcdd qcacmn: save flow related fields from TLV to SKB CB
flow related fields like flow_idx_invalid and
flow_idx_timeout are needed to send the packet
to PPE_VP hence need to be saved in SKB CB

CRs-Fixed: 3359237
Change-Id: I2166566c53641f6569f69ff316d1bafb67a828d0
2022-12-26 22:50:09 -08:00