提交图

17693 次代码提交

作者 SHA1 备注 提交日期
Venkateswara Swamy Bandaru
8a0afca1e2 qcacmn: Add Support for setting puncture bitmap peer param
Add Support for setting puncture bitmap peer param

Change-Id: I819ef2b56fbc5d0240cbb1702fe5b2da2c4f5ec0
CRs-Fixed: 3278857
2022-09-03 06:21:52 -07:00
Ming Jiang
482d936ce0 qcacmn: Add 64K page id mask for hardware link descriptor
DP_HW_LINK_DESC_TYPE use non-cacheable memory and page id and
mask were calculated based on 4096 size. This change add 64K
size support for page id mask of hardware link descriptor.

Change-Id: I6bf1bb95573d964872c6dde7ea41e5823fe940d2
CRs-Fixed: 3267724
2022-09-03 04:44:58 -07:00
Ruben Columbus
ced4c17614 qcacmn: add reo bit to enable reo qref in fw
set register WCSS_UMAC_REO_R0_MISC_CTL 6th bit to 1
to enable reo wref from fw side.

Change-Id: Ib8d4a2f6e7f598d45ba2b2c628ed6f3929fc3337
CRs-Fixed: 3273558
2022-09-03 04:44:51 -07:00
Ruben Columbus
734657149e qcacmn: bkpressure control time event
add debug prints and a custom timer for how long to wait to receive next
bk pressure event message.

Change-Id: I5a736b0f134cd179990de536da02967db3e39774
CRs-Fixed: 3273427
2022-09-03 03:20:02 -07:00
Namita Nair
0602fba425 qcacmn: Display CV_QUERY stats for sounding stats
CV_QUERY stats are sent by FW as part of HTT_TX_CMN_SOUNDING_MODE
and not as part of individual AC, AX, and BE modes. This change
will hence correctly display the stats.

Change-Id: Ie499499137be4f542973a44829caa71f7b559f2f
CRs-Fixed: 3270132
2022-09-03 00:14:25 -07:00
Harsh Kumar Bijlani
d12768c4c4 qcacmn: Change order of conditions for peer stats update
Change order of conditions for peer stats update for KPI optimization.

Change-Id: If764ecaf575f9fc60f5c6d3332a7716b6a50be65
CRs-Fixed: 3281386
2022-09-03 00:14:19 -07:00
Gururaj Pandurangi
9fa8fc8b46 qcacmn: Add API to extract MSD caps from cmn info field
Add API to extract MLD AP MSD capabilities from MLO IE
common info field if present. This will be shared with FW
via peer assoc cmd.

Change-Id: I0ebcd5408a40f3314932d4a2a7e586c208af2ee5
CRs-Fixed: 3271118
2022-09-02 21:00:31 -07:00
Gururaj Pandurangi
534715624f qcacmn: Update is_psd_power logic in reg get client pwr API
Currently, the reg_get_client_power_for_connecting_ap() API
populates is_psd_power flag within the function and uses it
as a check to further populate EIRP power. The is_psd_power
flag is derived from current channel list chan flag which
returns true if corresponding channel supports PSD power.
Normally, all 6 GHz channels support PSD, so this flag is
usually set to 1. But, AP can transmit EIRP power in TPE IE
for 6 GHz channels, thus for MCC specific cases, derive this
flag based on tx_power interpretation field in TPE IE for
accurate value. WIN Host can still use reg_is_6g_psd_power()
to retrieve the flag in the caller APIs.
Hence, derive is_psd_power flag from TPE IE interpretation
value beforehand and pass it as an argument to
reg_get_client_power_for_connecting_ap() API.

Change-Id: Iabbcbd003f441151643a087ad4908bcdaed753a5
CRs-Fixed: 3268118
2022-09-02 19:14:42 -07:00
Jianmin Zhu
ea0eca7d21 qcacmn: Fix link probe response generation failure
As 11be 2.1 spec 35.3.3.3 Fields and elements not carried in a per-STA
profile, an AP affiliated with an AP MLD shall not include a Timestamp
field, a Beacon Interval field. Change ML probe rsp per-STA profile decode
logic accordingly. Copy Timestamp from the starting of the probe response
frame.

Change-Id: I0fe5682c170dc3dcd6e5a93c68473cd4cb6999b8
CRs-Fixed: 3280227
2022-09-02 17:42:47 -07:00
Amith A
9eefe85e1d qcacmn: Add rxops to display super channel list for all modes
Add rxops reg_display_super_chan_list, its core and dispatcher functions to
display super channel list for all modes.

Change-Id: I2b094d407d318ad84ac79ea3a4bc1127606c0fa2
CRs-Fixed: 3212642
2022-09-02 14:32:39 -07:00
Jianmin Zhu
d012f9e86f qcacmn: Fix OOB when add 6 GHz channels for pno scan
If there are more than 1 preferred network list in schedule scan, after
6 GHz channels added to pno channel list of 1st network list, channel
num is updated and set for 2nd network list wrongly, then OOB happens when
6 GHz channels are added to 2nd network list.

Change-Id: I2658620ce4e6e8dcf93e810c7bc10364e4de7a73
CRs-Fixed: 3280705
2022-09-02 14:32:32 -07:00
Jianmin Zhu
b67ab65175 qcacmn: Enhance QCA vendor roam event to indicate MLO links after reassociation
Enhance QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_ROAM_AUTH event for the
driver to indicate the information of the associated links of MLO
roaming.

Change-Id: I5cede840ec42bb45ec13e35a1f5caa0c0674047a
CRs-Fixed: 3278009
2022-08-31 21:10:24 -07:00
jinbaoliu
195e4c7d1b qcacmn: Fix the nss geting from tlv being invalid in 11b mode
Only in 11b mode, exclusive of other legacy modes(11ag) will
the NSS obtained from the TLV header be invalid, which is 0
and cannot be resolved. This change will set nss to 1 in 11b.

Change-Id: I93e8bdb125764fb0247265da328929ecc837fb84
CRs-Fixed: 3275793
2022-08-31 16:04:33 -07:00
aloksing
c31daef130 qcacmn: fix compilation issue without monitor support
Compilation is failing when Monitor support is disabled
Moved monitor related API and structure to monitor header files.

CRs-Fixed: 3257872
Change-Id: Ie1b3dc16b38c88bfd73fc89aaa395d4b57a61e5c
2022-08-31 16:04:27 -07:00
aloksing
c06d7b8d27 qcacmn: Fix compilation issue without CFR
Build failure when CFR is disabled.
Remove including unnecessary header file.

CRs-Fixed: 3257872
Change-Id: If93116d132f209b0deda55492879d4facdd2be70
2022-08-31 16:04:19 -07:00
Srinivas Pitla
4466787729 qcacmn: Return failure on partner link peer creation failure
This change adds protection, if partner link peer creation failure
leads to MLO peer free. It also returns failure.

Change-Id: I4f2097c3a2942cecf01f77c7e4899595bbce0dff
CRs-Fixed: 3277770
2022-08-31 12:50:57 -07:00
Srinivas Dasari
57edb1e7e9 qcacmn: Add short SSID and BSSID in hints in scan request for 6 GHz
Currently, short SSID is not added to the hints in scan request
if BSSID hint is present. But there can be cases where both need
to be advertised and expected to be present in the probe request.
So, send short SSID hints also to firmware in scan request.

Change-Id: Ie66e6677185c106817f4d24c2f07730c53ae243a
CRs-Fixed: 3259555
2022-08-30 05:41:54 -07:00
Mohammed Ahmed
fa6e07082f qcacmn: add psoc null pointer check to wlan_objmgr_get_peer_by_mac
Current code directly passes the result of wlan_vdev_get_psoc(vdev) to
wlan_objmgr_get_peer_by_mac, without null pointer checking, which can
result in null pointer dereferencing.
To fix this issue, add checking of the psoc pointer before passing,
and add verification inside wlan_objmgr_get_peer_by_mac.

Change-Id: Iaf0e2535c3a584db788ddc621745c66c296fe08f
CRs-Fixed: 3277651
2022-08-29 22:19:33 -07:00
Shashikala Prabhu
aec62be3c7 qcacmn: Fix the inconsistencies observed in MLO AID allocation
For T2LM capable MLO STAs the AID is allocated from the second pool.
There is an inconsistency in allocating these AID pools.

Please check the example below.
Let's say the max_aid in ML AID manager is 12 and the start_aid is 3.
As per the current implementation,
   aid_end1 = (ml_aid_mgr->max_aid - start_aid)/AID_NUM_BUCKET
            = ( 12 - 3)/3 = 3
Only 3 AIDs are available in pool_1. But, all these 3 AID are reserved due
to start_aid = 3. Hence, we will not be able to allocate any AID from
pool_1.

With the fix,
   pool_1_max_aid = (ml_aid_mgr->max_aid - start_aid)/AID_NUM_BUCKET
	              = 3
   aid_end1 = pool_1_max_aid + start_aid
            = 6
So for pool 1, AID 4,5 and 6 are available now.

Change-Id: Ia96966b542e68511acbf46de32448f0d95d31c69
CRs-Fixed: 3276564
2022-08-29 17:43:42 -07:00
Amit Mehta
68b9b355b5 qcacmn: Fix monitor status buffer double free issue
currently rx_mon_ring and REO are part of the same
interrupt group, due to which in case of mission
mode when IRQ is received from REO, even the lmac
rings are processed in the same context.
This results in dp_mon_reap_timer_handler and
dp_process_lmac_rings calling dp_rx_mon_status_process_tlv()
in different context and access global list at the same time,
which may lead to skb double free issue.

To fix the issue if current mode is not monitor mode
do not set rx_mon_ring_mask MSI interrupt mask.

Change-Id: Icc64455824f919e17d3daa741be1cbdafd6fe88f
CRs-Fixed: 3274531
2022-08-29 10:00:54 -07:00
Sheenam Monga
46644d2926 qcacmn: cleanup key_rsc_counter pointer from set key param
Remove unused param key_rsc_counter of set_key_param
structure, as key_rsc_ctr is used to send key rx sc
counter to fw and rename key_rsc_ctr to key_rsc_counter
as win is using key_rsc_counter.

Change-Id: Id58aabb30d772f8f620ac9f96890fcac0193777b
CRs-Fixed: 3256574
2022-08-29 10:00:47 -07:00
Edayilliam Jayadev
89fbda97fc qcacmn: Handle error scenarios in mgmt Rx REO module
Handle the following error scenarios in management Rx REO module.

    1. Pdev corresponding to a HW link is deleted.
    2. Pdev corresponding to a HW link not yet initialized completely.

CRs-Fixed: 3272812
Change-Id: I34fbb19e24649371ff0ddb591e2ec14bfdfee58a
2022-08-29 10:00:40 -07:00
Vinod Kumar Myadam
d93887d03f qcacmn: Optimize log prints in reg_copy_ch_params
In reg_copy_ch_params, logging all bandwidth except 320 MHz,
leads to excessive logging.

Change-Id: If9d9f8e65c4c0d58fb570d8e6cccc7a7ebd5ec26
CRs-Fixed: 3277099
2022-08-28 23:16:18 -07:00
Srinivas Pitla
5aab8590be qcacmn: Fix issue with is_primary flag in splitphy mode
Currently, for all link peers of ML peer, is_primary set as
true, since all link peers are attached to same PSOC.

But, FW and DP needs only one peer to be set primary.
So far, FW and DP are considering last peer created or last peer
assoc received as primary peer.

This method causing issue since the order is not guaranteed
between FW and DP layer.

So, added a change to set is_primary to one of the link peers
only

Change-Id: I1c1aa87056baf86091fefc780180b5fc6a16af0d
CRs-Fixed: 3274360
2022-08-28 23:16:12 -07:00
Jeff Johnson
88c15dadbb qcacmn: Fix misspelling "recevied"
Multiple instances of the misspelling "recevied" are present, so
replace them with the correct spelling "received."

Change-Id: Ibd7f4a136541be8aa98f5bee4db7f75af0271f53
CRs-Fixed: 3273526
2022-08-28 19:08:26 -07:00
Rakesh Pillai
3a7048480c qcacmn: Add reo_mismatch stats for FISA path
Add reo_mismatch stats for FISA path.

Change-Id: I954c9604b98cfb0b08be09ef0bf3e2235f47a3db
CRs-Fixed: 3277338
2022-08-27 22:57:48 -07:00
Rahul Gusain
7af5b194e4 qcacmn: Bypass the peer check for NAN in crypto set keys
Currently, host driver installs keys for STA, SAP and P2P
iface. A peer validation is present to do so in these modes
in crpto API(target_if_crypto_set_key). NAN vdev also needs
same support for NAN pairing protocol but doesn't have a peer
as such.
So, bypass peer validation for NAN vdev.

Change-Id: Ief003d096da6f241ff13329c49a32cd896dec9db
CRs-Fixed: 3257754
2022-08-27 19:54:38 -07:00
Nandha Kishore Easwaran
68ef6e5dff qcacmn: Fix ref leak when monitor peer is null
Free the reference when peer is not null and monitor peer
is null.

Change-Id: I81875fbdf3918346b8c4f297f61fc241e7888fd4
CRs-Fixed: 3277552
2022-08-27 13:48:42 -07:00
Jianmin Zhu
640ab03114 qcacmn: Don't treat assoc req as reassoc req
Add a flag to indicate assoc req is used for this roaming,
don't treat assoc req as reassoc req.

Change-Id: I58f357b5581ca71e97841f1d7e0f3daad5d60970
CRs-Fixed: 3273877
2022-08-27 12:09:14 -07:00
Sreeramya Soratkal
057bd5f570 qcacmn: Remove unused local variables in spectral module
Remove unused local variables in the Spectral module to
address the compiler warnings.

CRs-Fixed: 3272706
Change-Id: I91c806a9bd6413eb559992a0b184d8bd9c4ea4d0
2022-08-26 14:21:26 -07:00
Rakesh Pillai
b1869bda53 qcacmn: Add handler to get 802.11 header from packet
Add handler to get the start of 802.11 header when
NO_PKT_HDR_TLV feature is enabled.

Change-Id: I8d0cb453221ccb56996212c616e629256422a337
CRs-Fixed: 3273441
2022-08-26 14:21:19 -07:00
Deeksha Gupta
fc9e906e6d qcacmn: Add osif api to get assoc link net device
As per single netdev design, after roaming is completed on link
vdev retrieve assoc link net device and use that for roamed indication
Add osif callback api to hdd to get assoc link net device

Change-Id: I9c8fcd4b095580548b8251818d0f6823df7a52aa
CRs-Fixed: 3274570
2022-08-26 14:21:12 -07:00
Sreeramya Soratkal
17794aa9d6 qcacmn: Remove unused variables in qdf memory component
Remove unused local variables in the qdf memory component
to address the compiler warnings.

CRs-Fixed: 3272720
Change-Id: I9b784a43897003f374239ed2f27e0bb8e0ce4c93
2022-08-26 09:10:39 -07:00
Nidhi Jain
1340f268c1 qcacmn: Remove puncture pattern from CFR
Removing additional puncture pattern parameter from CFR.

Change-Id: I2ed5a64d793946d3d96df847631c0fa0f8ac3274
CRs-Fixed: 3260286
2022-08-26 09:10:32 -07:00
Srinivas Dasari
77026d4a4d qcacmn: Avoid CH_WIDTH_320MHZ dependency on 11BE define
CH_WIDTH_320MHZ definition is in 11BE define currently and it's
causing duplicate code in 11BE supported/unsupported cases.
Definition need not be in 11BE define as it doesn't cause any
impact on memory.

Change-Id: I996aad941bef33eef6527c4c34c5b9efd75d9b84
CRs-Fixed: 3246577
2022-08-26 09:10:26 -07:00
Sreeramya Soratkal
351edebeae qcacmn: Resolve difference in pointer signedness
The control buffer element of socket buffer structure (sk_buff)
is of the data type char and the virtual address element of network
buffer control block structure is of the type unsigned char. The
current prototypes cause this pointer assignment with different
signedness.
Fix this by using appropriate type in the API definition.

Change-Id: Ic20ca29ce5d26a134ef295663632a5b7fd420954
CRs-Fixed: 3269690
2022-08-26 09:10:19 -07:00
Pavankumar Nandeshwar
6eebf44a9a qcacmn: Fix reo_remap_config call in umac reset case
Fix reo_remap_config call in umac reset case by
using arch specific callback

Change-Id: I3edeb2f1ec5cdbc7e9cba6f624d699df30d347ba
CRs-Fixed: 3275169
2022-08-26 07:32:01 -07:00
Pavankumar Nandeshwar
2f3e28c33c qcacmn: Configure registers for reo2ppe
Configure REO destination remap register and REO DST_INFO
register fot REO2PPE ring

Change-Id: I81cce807cde3babcfb265675ec758d33fc10214f
CRs-Fixed: 3274303
2022-08-26 07:31:54 -07:00
Liangwei Dong
6809114926 qcacmn: Fix vdev detach failed from mlo dev ctx
During dynamic mac address change process, some link vdev mld
address will be changed successfully and some link vdev mld
address will be failed to be changed from target in failure case.
In vdev deleting, if no result to find mlo dev ctx by mld mac
address, try to use vdev->mlo_dev_ctx to detach vdev from mlo
dev ctx. This will avoid memory leak in above failure case of
dynamic mac address change.

Change-Id: I11304c92f9258e2390cfe2d03f29ada0db80e6af
CRs-Fixed: 3271092
2022-08-26 05:49:52 -07:00
Jia Ding
e2701283b3 qcacmn: Update frag_header and ipa_header for KIWI family
Size of struct frag_header and struct ipa_header are passed to IPA
driver as destination mac address offset. Hence properly update
the definitions for KIWI family chipset so that correct offset can
be updated to IPA driver.

Change-Id: I3efdb8f4a7b4d79cf71fa5f82f3dfd356cb2b970
CRs-Fixed: 3275933
2022-08-26 00:36:01 -07:00
Yu Wang
aec06bc9b7 qcacmn: register va based minidump entry with module name
Current code registers va-md entry with static name
'qdf_va_md' when loading wlan driver, with no unregister
upon failure or driver unloading, this has a problem when
multiple wlan drivers are present, in which case it will
try to load all one by one during system bootup, but only
one driver will be loaded successfully at last. The
notifier_block for the unexpected wlan drivers will be left
in the notifier chain, which will result in kernel panic
when collecting minidump.

We can improve this by registering va-md entry with module
name, and unregistering the entry during de-init with the
newly added API qcom_va_md_unregister(), then different
wlan driver will register va-md entry with different module
name, and the entry will be unregistered on loading failure
or unloading, then there will be no stale notifier_block.

Change-Id: Ic08136f3f2ce1c202cab1ee68d8d376f2bd2fa57
CRs-Fixed: 3265807
2022-08-25 17:40:58 -07:00
Chaithanya Garrepalli
eb8d16e0c7 qcacmn: Indicate MLO teardown to DP
When MLO teardown for links is received call
DP MLO teardown for all SOCs

Change-Id: Ie5608dc3c97344c4d951dd006e49bdb52bf00a60
CRs-Fixed: 3273650
2022-08-25 12:13:24 -07:00
Himanshu Batra
31864b63ee qcacmn: Add timestamp in serialisation history for debuggability
Add timestamp in serialisation history for debuggability

Change-Id: I6ea5019f9c4501512877a67bc01caf7c428cc893
CRs-Fixed: 3275070
2022-08-25 12:13:15 -07:00
Devender Kumar
13c6048f72 qcacmn: Fix for Unicast packet flow from WDS node in Intrabss
When EasyMesh feature is enabled, ARP replies from WDS node are
getting dropped by the AP, as there is no proper way to find the
DA_PEER with given WDS mac address.
Fix is to get the peer mac address for wds node based on ast entry.

CRs-Fixed: 3265158
Change-Id: I5ea890ce37dfde89d067b471417ba7aeb8c5d6f5
2022-08-24 17:22:30 -07:00
Sajini R
5d150285fd qcacmn: Initial changes in hif for ipq5332 target compilation
Added device ID and target type checks in hif for ipq5332 traget
compilation.

CRs-Fixed: 3273827
Change-Id: I771d741c204695a678bf22bccd039047b9dc8356
2022-08-24 09:01:21 -07:00
Sajini R
51cde26ad5 qcacmn: Initial changes in dp for ipq5332 target compilation
Added device ID and target type checks in dp for ipq5332 traget
compilation.

CRs-Fixed: 3273820
Change-Id: I03a9bc8f9a885587d7324f7907d26bfc77cfeba7
2022-08-24 07:26:03 -07:00
Jianmin Zhu
1dde62833a qcacmn: Fix reassoc rsp per-sta profile parse failure
For fixed field of per-sta profile for mlo, only assoc rsp is parsed,
need include reassoc rsp.

Change-Id: I8be3ab2d2f7719bda0190b59c6d24c07d12f21e8
CRs-Fixed: 3273819
2022-08-24 04:11:17 -07:00
Vinod Kumar Myadam
2afbe37a20 qcacmn: Fix for scan passive dwell time
Prensently for initial scan and roam passive scan dwell time,
the same ini CFG_PASSIVE_MAX_CHANNEL_TIME is used. This will
cause initial scan to have the roam passive scan value.

Decouple passive scan and roam passive scan ini parameter by
adding new ini param for roaming

Change-Id: I7bffb24a1e45548ed57492abc35e80958e9955ee
CRs-Fixed: 3272817
2022-08-24 04:11:10 -07:00
Jianmin Zhu
fa9ac21bbd qcacmn: Fix assert for deauth sent on inactive link
Set WMI_MLO_MGMT_TID for mlo link agnostic mgmt frames

Change-Id: I385c1e9b50bc9ef6fe5f8875e0408bb2afca8945
CRs-Fixed: 3269920
2022-08-23 21:02:56 -07:00
Divyajyothi Goparaju
3ec79c4856 qcacmn: Optimize vdev and pdev set param command frequency
Currently host sends many vdev or pdev set param commands
separately to firmware.

Combine all vdev or pdev set params together where ever
possible, send to WMI.Based on service capability
WMI_SERVICE_COMBINED_SET_PARAM_SUPPORT, host decides whether
to send all set params to firmware at once to reduce number of
transactions or need to follow legacy way i.e send params
separately one after the other.

Change-Id: I0a36dd66a7ccb27f2ecd437cf7b9d08667e27472
CRs-Fixed: 3151418
2022-08-23 15:17:07 -07:00