提交图

18013 次代码提交

作者 SHA1 备注 提交日期
Nandha Kishore Easwaran
bb7ee725be qcacmn: Add txmon HP TP values in stats command
Add txmon buf and destination ring in HPTP dump command

Change-Id: Ic32d1b355d5fc309225dfc5649ee7f9568a8dca6
CRs-Fixed: 3331176
2022-11-21 00:03:26 -08:00
Karthik Kantamneni
6ef5d59bee qcacmn: Add Runtime PM last busy history support
Add support to record last busy events on RX CEs,
this helps to check how frequent CEs are marking busy.

Add support to display last busy history and runtimepm stats.

Change-Id: I856ce54a2f1c6b26722d27623343fc0a2c202c6f
CRs-Fixed: 3337902
2022-11-20 22:03:28 -08:00
Nidhi Jain
92cfe5ce89 qcacmn: Changes to enable CFR in monitor filter 2.0
This change enables CFR through dp_mon_filter_2_0 path.

Change-Id: Ic83d071dbc7c3dec28f025388753f07b7dba2fa5
CRs-Fixed: 3337540
2022-11-20 22:03:19 -08:00
Linux Build Service Account
aba8eb07d0 Merge "qcacmn: Avoid read access to IPA TX doorbell address" 2022-11-20 06:53:45 -08:00
Linux Build Service Account
b32b979e35 Merge "qcacmn: Add changes to support link_id param in cfg80211_disconnected" 2022-11-20 06:53:45 -08:00
Linux Build Service Account
9345e3e5b3 Merge "qcacmn: Array Indexing after validating 'ce_id'" 2022-11-20 06:53:44 -08:00
Jia Ding
a606a71b1e qcacmn: Avoid read access to IPA TX doorbell address
Below signature is seen on sdxpinn when HOST reads IPA TX
doorbell address, which leads to HLOS crash.

Internal error: synchronous external abort: 96000010

Indeed IPA TX doorbell address is write-only. Behaviors
on such read access violation is arch-dependent. On
certains platforms, such violation is ignored but read
returns 0.

Hence remove the read access to IPA TX doorbell address
in hal_srng_dst_init_hp() to avoid arch-dependent
behavior.

Change-Id: I3486cd81741922e697e2b3d307db3209b710aa6a
CRs-Fixed: 3339302
2022-11-19 21:55:01 -08:00
Himanshu Batra
80db72a890 qcacmn: Add changes to support link_id param in cfg80211_disconnected
As part of MLO dynamic link deletion handling, cfg80211_disconnected is
taking link_id as an argument.
Add changes to support link_id param in cfg80211_disconnected.

Change-Id: Ia312b5e5768ba9abb11675839e912d4819a2fa86
CRs-Fixed: 3315102
2022-11-19 20:11:05 -08:00
Yeshwanth Sriram Guntuka
1d310855fa qcacmn: Add QMI module id
Add module id for QMI.

Change-Id: I44f363b45a6e43ebdf9a43ca266694e6e832f87b
CRs-Fixed: 3338288
2022-11-19 05:48:08 -08:00
Pavankumar Nandeshwar
a7ec0b569c qcacmn: Enable ppe ds by default through ini
Enable ppe direct switch feature by default
through ini, and rename the ppe_enable parameter
to ppe_ds_enable

Change-Id: I574838394ab9edd0445f65f81f05566967208276
CRs-Fixed: 3339167
2022-11-19 03:54:54 -08:00
David Oladunjoye
3ccef6c0a6 qcacmn: Fix list iterators to match upstream discussion
List iterators should conform to upstream discussion. List iterators that
reach end of list do not point to NULL but rather they point to list_head.
Dereferencing the iterator in this case would break the list. The scope of
the list iterator should be confined to the loop. Solution is to use assign
ptr to iterator when condition is met, this ptr can be used outside of the
loop.

Change-Id: I896b85bbd24b63e6b1562d35ffec8abc920f1b6d
CRs-Fixed: 3331681
2022-11-19 01:03:24 -08:00
Liangwei Dong
e3496e0420 qcacmn: Do not process MLO ie if no EHT ie
Some AP/GO includes MLO IE but no EHT IE, do not process
MLO IE if no EHT IE

Change-Id: Ia79fda0093f16acd0eff1f526c45e6cfd1d454dc
CRs-Fixed: 3323054
2022-11-18 17:25:44 -08:00
Krunalsinh Padhar
97ea3b37d1 qcacmn: Add QCA vendor subcommand to notify about primary netdev
Add a new vendor subcommand
QCA_NL80211_VENDOR_SUBCMD_MLO_PEER_PRIM_NETDEV_EVENT to send notification
to application layer about primary netdev of an MLO peer association.

Also define the attributes present in this subcommand.

Change-Id: I84ba177c5d7155f627d4d3fa86c64c4f9b24951c
CRs-Fixed: 3280634
2022-11-18 13:38:22 -08:00
Divyajyothi Goparaju
7a737732fe qcacmn: Define set params for no host to target conversion
Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined,
host pdev/vdev set params can be translated to
target pdev/vdev set params through APIs
convert_host_pdev_param_tlv,convert_host_vdev_param_tlv.
If ENABLE_HOST_TO_TARGET_CONVERSION is not defined,
host pdev/vdev set params in
common code is sent to firmware directly, which is incorrect.

Define pdev/vdev set params in such away they represents
host params on ENABLE_HOST_TO_TARGET_CONVERSION enabled and
target params on ENABLE_HOST_TO_TARGET_CONVERSION disabled.

Change-Id: I5718c76c351b2d7904d8bf8b603073ffcb0a039d
CRs-Fixed: 3321556
2022-11-18 11:52:27 -08:00
Basamma Yakkanahalli
c1bece57dd qcacmn: Handle CU and BPCC for probe and assoc response
Add changes to indicate ongoing critical update CU flags and
BPCC values in probe and assoc/reassoc response.

For beacon FW update the CU flags and BPCC values in impacted
and partner links and keeps the latest copy of BPCC for ML VDEV.
The similar CU indication needs to be considered for probe,
assoc/reassoc response.

FW indicate to host the ongoing CU flag within DTIM interval for
impacted, and latest BPCC values of AP MLDs in impacted
and partner link VDEVs as part of mgmt_rx_event.
Extract cu_vdev_bitmap and bpcc values CU information from
wmi_prb_tmpl_ml_info TLV for probe and assoc / reassoc request.

Pass these values to umac, mgmt and ol layer as part of rx status.
Refer these values to update CU flag in capability information,
and BPCC values to update BSS Parameter Change Count in RNR,
MLIE and per sta profile.

CRs-Fixed: 3301916
Change-Id: I92ededb6598f85f3ea21b9d5e69d182c6180e30d
2022-11-18 00:31:48 -08:00
Vinod Kumar Pirla
f6a2b48634 qcacmn: Add per VDEV dot11 mode in VDEV MLME proto struct
To check the allowed dot11 mode of the VDEV, add new member to
struct vdev_mlme_proto hold this value.

Change-Id: I5bfbff0ab3056013a997744b8e9ce0b4d0a3d43b
CRs-Fixed: 3314403
2022-11-18 00:31:40 -08:00
Vinod Kumar Myadam
238df32c0b qcacmn: Optimize log prints
Current log format has redundant info in wmi_log_cmd_id.
Ex: wmi_log_cmd_id: Send WMI command:WMI_INIT_CMDID command_id:1 htc_tag:0
Optimize the same by removing "Send WMI command" and "command_id"

Change-Id: I394a42033cdef2b5fb51343a1f6f9690a5a41fba
CRs-Fixed: 3328230
2022-11-17 20:22:33 -08:00
Alan Z. Chen
b589f319f9 qcacmn: Add void keyword to function definitions
Add void keyword to function definitions for
ce_service_srng() and target_if_get_ctx().

Change-Id: I4d74600da82a9f13285a496a2136589b698da017
CRs-Fixed: 3336700
2022-11-17 20:22:25 -08:00
Ripan Deuri
9fbd2188d6 qcacmn: Support SAWF uplink QoS
Add CDP and OL interface op to set uplink QoS parameters for SAWF.

Change-Id: Idc53f47ddf2bf78bc9c2a22cbb13de5c900cb289
CRs-Fixed: 3331087
2022-11-17 15:35:52 -08:00
Will Huang
f8f0b97ffa qcacmn: Add APIs to configure target AFC flags
Add common code to configure target AFC flags:
enable_6ghz_sp_pwrmode_supp, afc_disable_timer_check,
afc_disable_request_id_check.

Remove cfg_get set is_afc_reg_noaction code, add it to psoc regulatory
private data.

Add APIs to set and get these AFC configures.

Change-Id: Idf74b245113eee18b071a7fbb92bb151cd535ce8
CRs-Fixed: 3154185
2022-11-17 15:35:45 -08:00
Divyajyothi Goparaju
ac613788de qcacmn: Optimize log for pdev/vdev set params
Currently logs having multiple pdev/vdev set params
with same API name which is redundant, optimize the
log by removing API name from logs with
wmi_nofl_debug.

Change-Id: Ib26f21d8ba9f6b0ba5cd57c9516a1611011c0439
CRs-Fixed: 3329645
2022-11-17 11:45:23 -08:00
Venkateswara Naralasetty
26b3d560fe qcacmn: add near full logic for Tx completion ring
Reap mode desc from the Tx completion ring in case the number of
available entries are less than the half of the ring entries.

Change-Id: I3635b88c3e98cc8a5f30fc58cf5e353f6301d4ad
CRs-Fixed: 3325826
2022-11-17 11:45:15 -08:00
Kai Chen
9cb6199f70 qcacmn: Add EHT debug counter on PPDU
Add debug count to count PPDU based on UL/DL and type compression
mode

Change-Id: I2b320e6562d309cc0a178a137162ab0499c81e58
CRs-Fixed: 3326278
2022-11-17 08:09:23 -08:00
Jeff Johnson
21ba9eb74b qcacmn: Fix wmi_unified_twt_tlv.c documentation
The kernel-doc script identified several documentation issues in
wmi_unified_twt_tlv.c, so fix them.

Change-Id: I205b507b482281787b85019580e6ea5b7f6ccac3
CRs-Fixed: 3335510
2022-11-17 06:15:50 -08:00
Jeff Johnson
f28ada898a qcacmn: Fix wlan_scan_manager.[ch] documentation
The kernel-doc script identified several documentation issues in
wlan_scan_manager.c and wlan_scan_manager.h, so fix them.

Change-Id: I372a336fdddc59256519b987aa2422ad077229e4
CRs-Fixed: 3335514
2022-11-17 06:15:41 -08:00
Jianmin Zhu
79c7463a3b qcacmn: Avoid deadlock for SM lock and MLO lock
When disconnect/connect from os_if and target_if happen at same time, wpa
supplicant holds CM lock and tries to get MLO lock, while scheduler thread
holds MLO lock and tries to get CM lock, dead lock will happen.

To avoid it, when MLO connect or disconnect, before get CM lock, release
MLO lock, get ref count for each vdev to avoid vdev deleted.

Change-Id: I2007c5b446c67ef142265c6ae0bba87a1980a55c
CRs-Fixed: 3313674
2022-11-17 00:33:35 -08:00
Chaithanya Garrepalli
16e9e30d49 qcacmn: Disable DP interrupts in force MLO teardown
In force teardown case disable the interrupts before
going down. As target may be still active, we may
still continue to receive traffic. Disabling
interrupts to nsure we dont process interrupts while
cleaning up partner SOC

Change-Id: I7092d398c039302234206cb72f7453b6dc0cbcb7
CRs-Fixed: 3332961
2022-11-17 00:33:26 -08:00
Ananya Gupta
f1f6845bfb qcacmn: Export API to change delay for RTPM timeout
Store ini config delay value and current delay value in RTPM
context
Export API to update delay and get current delay in ms for RTPM
timeout.
Export API to restore delay to default value.

Change-Id: I53e9e17d983c2cc6fe317159c8c46d792e56c04e
CRs-Fixed: 3332132
2022-11-16 15:37:05 -08:00
David Oladunjoye
a361d76cff qcacmn: QCA vendor attribute to configure periodic sounding
Add a new QCA vendor attribute to configure the periodic sounding for Tx
beamformer functionality.

Change-Id: I2f36f98b6665d448c07d676ff9a5fa907a980c5c
CRs-Fixed: 3328364
2022-11-16 15:36:58 -08:00
Sreeramya Soratkal
97b9620964 qcacmn: Add stats to indicate drop in EAPOL frames
Add the stats to indicate the packet drop for EAPOL packets.
This will be useful for the debug of EAPOL packet drop.

CRs-Fixed: 3329895
Change-Id: I5e0abb4e574116a55de124c0012c17154c7c63da
2022-11-16 13:39:20 -08:00
David Oladunjoye
ea42cfb863 qcacmn: init: Remove WLAN_TWT_CONV_SUPPORTED flag
TWT componentization code is converged. Remove WLAN_TWT_CONV_SUPPORTED,
leaving just WLAN_SUPPORT_TWT to enable the feature code.

Change-Id: Ic7f7b1dac43e78b454bab0267dd4a58a56ab2c48
CRs-Fixed: 3285181
2022-11-16 13:39:11 -08:00
Vinod Kumar Pirla
10892b0f48 qcacmn: Introduce new macros to interface ML SAP changes
Introduce new macros to interface ML SAP capable
host driver with cfg80211.
SAP needs to provide additional information
about the clients when beaconing as ML SAP.

Change-Id: Ie673927d1f8617da38170d41e6aaedae13f4f5c8
CRs-Fixed: 3331264
2022-11-16 13:39:03 -08:00
Yu Tian
efd6e156da qcacmn: Force invalid check for every pkt
Normally TID is obtained from MPDU start pkt and is performed
invalid check. There is a chance that DUT receives an
aggregated MPDU with invalid TID, TID value is not updated for
the second MSDU, then it will lead to OOB access.
Change is aimed to perform the check for every MSDU.

Change-Id: Ie261ddbc0e9dcd10459c68d3c78e13faa70286ac
CRs-Fixed: 3333265
2022-11-16 11:51:08 -08:00
Pavankumar Nandeshwar
d1ff8e1e65 qcacmn: Enable tx descpool clean up logic for ppe ds
Enable tx descpool clean up involving buffers cleanup
for ppe ds feature.

Change-Id: Iedefd312b58266e7a21978931838264518bc3d1e
CRs-Fixed: 3313738
2022-11-16 11:51:00 -08:00
Santosh Anbu
c6fd7ded28 qcacmn: Enable monitor mac filter for special vap
Add change to enable mac based filter for monitor special vap.

Change-Id: Ib189071443d5a98a84d160e7043e9bc4faf189c5
CRs-Fixed: 3317599
2022-11-16 07:55:33 -08:00
Priyadarshnee Srinivasan
99baf5de6d qcacmn: Validate the input puncture pattern
The default puncturing input set for any channel is
ALL_SCHANS_PUNC (0xFFFFFFFF) and regulatory considers this as a
valid puncturing pattern. Hence the SP PSD power is set as 0
and the best power mode chosen becomes LPI though AFC is completed
on all SP channels.
Hence validate the input puncture pattern in the regulatory and if
the puncturing pattern is invalid, do not compute SP PSD power values
for the given puncture pattern.

Change-Id: Ib4366eb2de5a0440c649f7beb91f4eca097e82e6
CRs-Fixed: 3331572
2022-11-15 19:44:56 -08:00
Uraj Sasan
363968251f qcacmn: ML probe resp for MBSSID
Implement ML probe response based on draft 2.1 for MBSSID MLO

Case1:  Requesnt for Non-Tx Vap in MBSSID case
If either the Address 1 field or the Address 3 field of the Multi-Link
probe request is set to the MAC address of the AP affiliated with an AP
MLD that corresponds to the nontransmitted BSSID, then the MLD ID
subfield shall not be present in the Probe Request Multi-Link element
of the Multi-Link probe request and the AP MLD is the targeted AP MLD.

The Non-AP MLD will send either a per-STA profile for link specific
request or it can send the ML probe request without link-info in which
case we will respond witll per-STA profile of all the links affilated
with the AP-MLD

Case 2: Request for Tx and Non-TX vap identified by MLDID
If either the Address 1 field or the Address 3 field of the Multi-Link
probe request is set to the MAC address of the responding AP that
operates on the same link where the Multi-Link probe request is sent,
then the AP MLD ID subfield shall be present in the Probe Request
Multi-Link element of the Multi-Link probe request and the targeted AP
MLD is identified by the AP MLD ID subfield.

In this case Non-AP MLD can request of a specific MLD which can be an
MLD of the Tx-vap or it could be MLD of the Non-Tx vap.

Case 3:An AP corresponding to the transmitted BSSID in a multiple BSSID
set shall transmit a Multi-Link probe response in response to a
Multi-Link probe request that is soliciting information of an MLD with
which an AP corresponding to the nontransmitted BSSID in the same
multiple BSSID set is affiliated. Such a Multi-Link probe response
shall carry a Basic Multi-Link element containing information of the
solicited AP MLD and one or more APs affiliated with it. The Basic
Multi-Link element shall be carried in the frame body of the Multi-Link
probe response, whose location is outside of the Multiple BSSID element
carried in the frame. The MLD ID Present subfield of the Presence
Bitmap subfield of the Basic Multi-Link element shall be set to 1.
The MLD ID subfield of the Common Info field of the Basic Multi-Link
element shall be present, and shall be set to the same value as the
BSSID Index subfield of the Multiple-BSSID Index element carried in
the Nontransmitted BSSID Profile subelement of the Multiple BSSID
element, which carries the information of the AP corresponding to the
nontransmitted BSSID

CRs-Fixed: 3306961
Change-Id: I24b2b6a50f57fcc07b060d3e3561246aa44b1b29
2022-11-15 17:49:54 -08:00
Yeshwanth Sriram Guntuka
93c0c09c50 qcacmn: Add CE config tables for Direct Link on Kiwi
Add separate CE host, target, and service map config
tables for Direct Link use case on Kiwi.

Change-Id: I84c1af09da401ab739905b96c85417f907b36743
CRs-Fixed: 3335330
2022-11-15 16:02:11 -08:00
Jeff Johnson
af0661492d qcacmn: Fix convert_gpio_direction() documentation
Fix the documentation of convert_gpio_direction() to match the code.

Change-Id: I0c595e346aa734759b4d7668d5ab9ead5501f00c
CRs-Fixed: 3330739
2022-11-15 11:56:49 -08:00
Kai Chen
83521665e6 qcacmn: Add debug counter for monitor mode
Add debug count for count MPDU received based on preamble type,
reception type, UL/DL and user for max 4 user for MU monitor
mode

Change-Id: I87f1553e1f2f8276501366a825d629cf051d8a80
CRs-Fixed: 3326272
2022-11-14 16:20:25 -08:00
Jianmin Zhu
604581a51d qcacmn: Fix race condition of mlo disconnect/connect
Steps:
1. wpa_supplicant started connect, scheduler thread was connecting vdev0.
2. Wifico disconnect cmd came, found vdev1 not connected, drop cmd for
vdev1.
3. scheduler thread connected vdev0, started to connect vdev1.
4. Wifico started to disconnect vdev0.
5. scheduler thread created bss peer of vdev1, connected vdev1.
6. scheduler thread deleted bss peer of vdev0 as part of disconnect vdev0.
7. F/W assert for deleting assoc peer before link peer.

To fix it, when partner link connect complete, if found assoc link not
connected, trigger mlo disconnect.

Change-Id: I8bb06992c7a0976cdab7a6470180b5faa1f386ab
CRs-Fixed: 3330583
2022-11-14 16:20:18 -08:00
Bing Sun
062186ff39 qcacmn: Add API to set channel parameters for 802.11be station
Extract new channel parameter generating including puncture from
wlan_cm_sta_update_bw_puncture as a new API, so that other module
can use the new API.

Change-Id: I20190168c9228fa97e32583bc8db79c98b3b7918
CRs-Fixed: 3326723
2022-11-14 13:14:13 -08:00
Basamma Yakkanahalli
23001226b9 qcacmn: Critical update signaling for 20TU Probe Response
Critical update is the explicit signaling for STA to notify
any change in BSS param.

Present support is there for beacon, host notify to FW by
updating current link CU param in wmi_bcn_tmpl_ml_info TLV
of BCN TMPL CMD by setting the corresponding cu_vdev_map
for category 1 / category 2 based on change in critical
update params of ML VDEV.

The same Critical update signaling is extended to 20TU
unsolicited broadcast probe response.
In 6 GHz link host notify the same category 1 / category 2
cu_vdev_map critical update params of ML VDEVs in 20TU
enabled group wmi_prb_tmpl_ml_info TLV of WMI_PRB_TMPL_CMD.

CRs-Fixed: 3314429
Change-Id: I84dbd1901c5a3f2ef28f981c581fd7350d147829
2022-11-14 11:11:46 -08:00
Nanda Krishnan
776f11b082 qcacmn: Updating the PPE2TCL ring max size as 32k
Added changes in wifi module to update the ring size as 32k

Change-Id: I0e81c8b2b2d037f30bcb570e85d97f8ffd14a268
CRs-Fixed: 3326869
2022-11-14 05:42:36 -08:00
Manish Verma
50819e81b2 qcacmn: Add per peer PPE routing support
Add the per peer routing support for PPE-DS feature

Change-Id: I71666fc2f29b9497fd4ec9f5d50af1cb05d91fe2
CRs-Fixed: 3306766
2022-11-14 05:42:28 -08:00
Amith A
779e407465 qcacmn: Reorder pdev init and reg rules saving API calls
Move the call to reg_save_reg_rules_to_pdev after
reg_init_pdev_mas_chan_list. Since initialization is being called after
saving the reg rules, wlan_regulatory_pdev_priv_obj structure members
are not getting updated.

Since reg_set_ap_pwr_type requires reg rules to be saved in pdev, call
this API after saving the reg rules to pdev.

Change-Id: I24e98edec45114ad76490d4e3776edaa0fce66e2
CRs-Fixed: 3327492
2022-11-14 00:14:38 -08:00
Pavankumar Nandeshwar
da32e55eb0 qcacmn: Add a new enum for WBM2SW_RELEASE used for DS
Add a new enum for WBM2SW_RELEASE ring used
specifically for handling tx completions from
ppe2tcl ring in DS

Change-Id: I88f033e87f2a40e6f730728da3168b18b5e39f5c
CRs-Fixed: 3303259
2022-11-13 20:41:52 -08:00
Chaithanya Garrepalli
720568a65d qcacmn: For fast recycle case invalidate TLV header
In case of fast_recycled is set we can avoid invalidating
the complete buffer as it would have been invalidated
by tx driver before giving to recycler.

But we need to still invalidate rx_pkt_tlv_size as this
area will not be invalidated in TX path

Change-Id: I9e5202d8b251a5d59117609a705a311e499d05b0
CRs-Fixed: 3332713
2022-11-13 12:13:44 -08:00
Asutosh Mohapatra
1ca035fa80 qcacmn: Add missing hardware info
Define and update missing Helium based target
mappings in qwlan_hw_list.

Change-Id: I9c1aa3d7ce492397e555e59b361f6855bc431183
CRs-Fixed: 3317892
2022-11-12 09:34:20 -08:00
Sheenam Monga
d57a764281 qcacmn: Change value of domain ETSI18_WORLD from 0x6E to 0x3D
Currently, value of domain ETSI18_WORLD is 0x3D which is not
correct.

Fix is to map ETSI18_WORLD to correct hex value to avoid any
issue.

Change-Id: I064896a089fd512bc350ff4401c03822dd78fa96
CRs-Fixed: 3331649
2022-11-12 05:01:12 -08:00