Commit Graph

3422 次程式碼提交

作者 SHA1 備註 提交日期
Ripan Deuri
94c2c62746 qcacmn: Calculate Tx delay stat in microsecond
Add changes for computing wifi host and hardware Tx delay
in microsecond.

Change-Id: I7a54e9ee9785d878660f9e5226c315cf96064572
CRs-Fixed: 3254259
2022-09-13 19:59:00 -07:00
Amit Mehta
163dd20054 qcacmn: Add API to read tsf time
Add API to read tsf time from scratch registers.

Change-Id: If736c31f9ae522a9f853e7b83b6b8a61cad990da
CRs-Fixed: 3287544
2022-09-13 10:51:38 -07:00
Himanshu Batra
b8f5d7c27a qcacmn: Update ppdu phy tx time irrespective of ACK_BA_STATUS
In case when ACK_BA_STATUS is not received, the ppdu phy tx time is not
getting calculated even though the media is used for the ppdu.
Add fix to ppdu phy tx time irrespective of ACK_BA_STATUS

Change-Id: I23d29b2d282edf6e5d49ce18aecd81e5239a118b
CRs-Fixed: 3288380
2022-09-13 09:23:04 -07:00
Himanshu Batra
f147732272 qcacmn: Add support for link airtime usage telemetry
Add support for link airtime usage telemetry.

Change-Id: I8b796f14d55d56051fb05af255e612e4655db990
CRs-Fixed: 3281355
2022-09-13 09:22:57 -07:00
Himanshu Batra
6a5ab907c1 qcacmn: Update airtime computation to per AC level
Update airtime computation to per AC level.

Change-Id: Ia8cb890d2f1dc167ec3a2610ff5a70238d55262d
CRs-Fixed: 3281256
2022-09-13 09:22:49 -07:00
Devender Kumar
a85ce1152c qcacmn: Debug framework for SMMU buffer tracker for IPA offload
Debug framework for tracking the SMMU mapping and unmapping of
skb buffer when IPA offload is enable and IPA_SMMU_NBUF_TRACKER
is define.

CRs-Fixed: 3255423
change-Id: I8966097945b33cb866f4642b98b3d1a4beabfad7
2022-09-13 03:24:34 -07:00
Harsh Kumar Bijlani
c84505ec7b qcacmn: Change datatype of rx_snr_measured_time to unsigned long
Change datatype of rx_snr_measured_time to unsigned long.

Change-Id: I37db568a876b15eee73f21474883eb42d4f3b18d
CRs-Fixed: 3281574
2022-09-12 20:55:09 -07:00
KARTHIK KUMAR T
8267333021 qcacmn: Add cdp function to get rate/link stats
Add cdp function to get the peer extended rate and link stats.
This change is to support user level command to flush mld/link
peer extended link and rate stats.

cfg80211tool wifiX get_peer_extd_rate_link_stats <mac_addr>

Change-Id: I20cd2b38b242008b95aedc5f9914088a149093dd
CRs-Fixed: 3278042
2022-09-12 15:57:05 -07:00
nobelj
3e3726cc7a qcacmn: Add fix double free in reinject handler
Add fix for double free in Reinject handler. Issue is seen when mesh vap
is present.

Change-Id: I288b1131974c8a3edb83c1b3b2a7a856c4ccbcbf
CRs-Fixed: 3276670
2022-09-12 13:58:43 -07:00
Sushant Butta
b1a6c9543b qcacmn: Optimizations for Tx monitor buffer allocations
Currently 2K Tx buffers are allocated at init time and 6K Tx
buffers are allocated at mon vap creation time.
Changes are done to move Tx buffer allocations to 0+8K model,
where allocations are done when enable cmd is triggered.

CRs-Fixed: 3284106
Change-Id: If0a112b8138f2be1db8f764fd7aa4ef12f274bb7
2022-09-12 11:53:54 -07:00
Chaithanya Garrepalli
cd40aa85ab qcacmn: Add few missing stats
1. Add stats to indicate REO ring size and Rx desc pool size
2. Add low threshold interrupt stats
3. Update SW2RxDMA ring size max to 16K

Change-Id: If84b88bc08e447774ab445df36b9f2f2219356b8
CRs-Fixed: 3286940
2022-09-12 00:28:13 -07:00
Devender Kumar
07327b6ea8 qcacmn: Send client disconnect event to IPA
When AP vap disconnect aburputly or by doing channel switch then for WDS
node, client disconnect event is not sent to IPA driver, hence IPA is
not aware of any new wds client coming behind that peer as the previous
delete event is not handled properly

Fix is to send wds client disconnect event when ast entry are flushed.

CRs-Fixed: 3271481
Change-Id: Id507f543c8f4cb8f69e26ba6ca3a23787af21ed7
2022-09-09 04:09:02 -07:00
nobelj
5f09e5188b qcacmn: Add minor fix specific to tx monitor
Added minor fix,
a) Handle buffer allocation failed and
b) NULL check

Change-Id: Idaeb1d2b1e9bc613bfaf15b3e028e44846345e2f
CRs-Fixed: 3279243
2022-09-08 21:23:53 -07:00
Chaithanya Garrepalli
daed8f2cc5 qcacmn: Changes for Rx fast flag
Change to avoid processing of extended features
based of Fast RX flag

Also add changes to enable or disable this flag
based on feature settings

Change-Id: I8064780a271f8bdcf396bb9e2e2c14998f195535
CRs-Fixed: 3268842
2022-09-08 12:24:27 -07:00
syed touqeer pasha
b88dc98e98 qcacmn: Fetch drop 3 address mcast value
Fetch the drop 3 address mcast value

Change-Id: If4d714e6b418c3030b247e8dd84b948aa6c140d4
CRs-Fixed: 3282708
2022-09-08 10:48:34 -07:00
Rakesh Pillai
d706698dd1 qcacmn: Add support for fragmented history recording
Currently the history recording for any debug purpose
is done using a contiguous memory chunk. For certain
history like tx_hw_ring, tx desc or tx completion desc
history, the amount of contiguous memory required is
very huge (order 7 or 8 allocation), which have a
higher probability of failing.

In order to mitigate the above scenario, introduce the
support for recording debug history into fragmented
chunks of memory, thereby reducing the requirement of
contiguous memory.

Change-Id: Iac4fb38b6d4b095766520899853e68b4c2b83afc
CRs-Fixed: 3282269
2022-09-08 04:38:02 -07:00
Ripan Deuri
04dd6c626a qcacmn: Add support to fetch PER
Add support to fetch PER from peer stats.

Change-Id: Ia7cf8913238ab5b56d5f049cf9d511318ca5d165
CRs-Fixed: 3284395
2022-09-08 02:57:20 -07:00
Amir Patel
8a1be0ce9d qcacmn: Update Noise floor for monitor frames
Update Noise floor for monitor frames

Change-Id: I8fc81b189923130e2c040dea10e04fba92c58c57
CRs-Fixed: 3274706
2022-09-07 16:34:27 -07:00
Amir Patel
0fe7f4446b qcacmn: Optimize monitor mode memory utilization
a. Optimize ppdu_info memory
b. Use kmem cache for ppdu info allocation

CRs-Fixed: 3265620
Change-Id: Ieee040aa703aef8c5eee5e5a34a52ef18300b696
2022-09-06 10:23:43 -07:00
Amir Patel
ed6fc2b352 qcacmn: Add NULL pointer check
Add NULL pointer check at correct place
in monitor filter update

CRs-Fixed: 3279327
Change-Id: I5d9c44cf160de9acd4280774cc999931b8050ec3
2022-09-06 04:23:41 -07:00
Devender Kumar
78b844e995 qcacmn: Fix for calling cdp api from dp layer
cdp api is getting call from dp layer.

Fix is to call correct dp api from datapath file.

CRs-Fixed: 3279426
Change-Id: I142910276d76c600e5d79289270bbfe156bfab1c
2022-09-05 21:33:12 -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
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
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
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
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
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
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
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
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
Pavankumar Nandeshwar
9495c52c2e qcacmn: Update tx_fast callback with dp_tx_drop
Update tx_fast callback with dp_tx_drop in
Umac pre-reset handler to pause the tx.

Change-Id: I39a74179a3deb8fba34acb7149046471e3f4797b
CRs-Fixed: 3267249
2022-08-23 00:49:30 -07:00
Chaithanya Garrepalli
adbb77002a qcacmn: Use different Rx ring mask for ML and non-ML peers
Add framework to use different RX hash values and ring masks
for ML and non-ML peers

Change-Id: I098cb50b8873eb137ce096011d01a5c21aaf854f
CRs-Fixed: 3269916
2022-08-22 14:56:26 -07:00
Sai Rupesh Chevuru
383edf35d0 qcacmn: Map and umap MLO DP peer to partner soc
Maping and unmaping of the MLO DP peer to the partner soc
will be initialized based on architecture.
dp_mlo_partner_chips_map
dp_mlo_partner_chips_unmap

Change-Id: I918f6d552acd9d64086abf4c38f913348e13c381
CRs-Fixed: 3267904
2022-08-22 11:30:40 -07:00
Madhavan Ganesan
af8acc5430 qcacmn: Check peer_monitor is valid before processing
Check peer_monitor is valid before processing.
This is required for new boot flow where vap creation starts
before monitor ko insmod.
This check makes sure that monitor_peer is valid which indirectly
means that monitor ko is insmoded.

Change-Id: Ifd132cd6717e3537dd1aa7b7b37e95012d7fe8fc
CRs-Fixed: 3272747
2022-08-22 11:30:32 -07:00
Tallapragada Kalyan
3203b7bf92 qcacmn: pipeline prefetch of tx comp ring for BE
pipeline prefetch of tx comp ring for BE

CRs-Fixed: 3272534
Change-Id: Ib1091b5163e75b56be08fbbf87c26b1c77638b76
2022-08-22 03:25:41 -07:00
Pavankumar Nandeshwar
38d078b7a0 qcacmn: Restore Umac registers for hard reset
Restore Umac registers in case of hard umac reset

Change-Id: I7718a97d8351558c58e804e9be0b43b09c2a1ca0
CRs-Fixed: 3267247
2022-08-21 00:38:07 -07:00
Pavankumar Nandeshwar
67de6bcbfd qcacmn: Handle Umac post reset at host
Handle Umac post reset and post reset complete
events from firmware.

Change-Id: I76ac1b96f01f026535d31edcbd245b3643ecf6ee
CRs-Fixed: 3267222
2022-08-21 00:37:46 -07:00
Tallapragada Kalyan
1b1b3adbea qcacmn: fast TX API and registration
This is a new FAST TX API which avoids various checks.
This API will be called when SFE tags a pkt as fast_forwarded
and vap's fast_tx flag is set.

avoid additional re-checks in the wifi TX function

CRs-Fixed: 3218650
Change-Id: Iba17ede59652a1ff2af553f57de21dc58946298e
2022-08-19 16:15:21 -07:00
Amir Patel
1885bbbc5e qcacmn: Fix pointer typecast issue
Fix pointer typecast issue in monitor

Change-Id: I45579fce49a7e2afacfc5462f208c01280c677d8
CRs-Fixed: 3257285
2022-08-18 23:08:25 -07:00
Amrit
cbc05e67fe qcacmn: Allocate memory according to num_users in rx path
Allocating memory according to number of users in rx path

Change-Id: I02ced1772ed04e67dfba5beb87737fcd874fd6da
CRs-Fixed: 3264995
2022-08-18 02:11:59 -07:00
Jeevan Kukkalli
b207f0b859 qcacmn: Add space for PPDU id TLV in headroom
Aad additional space for PPDU id TLV in headroom
while forming monitor mpdu.

Change-Id: Ie033ee6dd196838aa63cc456794b55fd9b780531
CRs-Fixed: 3237248
2022-08-17 15:35:35 -07:00
[B
1a321fabfd qcacmn: Error Handling in Event Based Mechanism
Error Handling in Event Based Mechanism to reduce
delay by removing sleep while getting response
from firmware.

Change-Id: I9ee8e03b0d0ebdaae150417fb0fb0531e5bf4a86
CRs-Fixed: 3268808
2022-08-17 15:35:28 -07:00
Ripan Deuri
28f25ca052 qcacmn: Support HW Tx delay stat
Use WLAN_CONFIG_TX_DELAY to enable HW Tx delay for both
SAWF and non-SAWF stats.

Change-Id: I6db7d386c0e3654f53398dcba1db7c5568544b0c
CRs-Fixed: 3262425
2022-08-17 04:58:14 -07:00
Chaithanya Garrepalli
baa9ecbd3c qcacmn: update peer state assert for MLO peer
Update the peer state check for MLO peer as per
MLO state transistion

Change-Id: Ia57ab5fd95f90226f505cba6363a343e5e0b44e1
CRs-Fixed: 3266005
2022-08-16 10:47:17 -07:00
nakul kachhwaha
f9883deaec qcacmn: Add dp support for traffic end indication
Based on traffic end indication marked packet coming
from network stack, send indication packet to fw via
exception path to terminate ongoing SP.

Change-Id: Ia2be60d485be4b05665cf6b1684af9258417ffb1
CRs-Fixed: 3207392
2022-08-16 07:40:41 -07:00