1. In CFR RCC mode, when ucode aborts DMA of CFR data, 2 (or)
more PPDU status TLVs are likely to have same phy_addr+cookie in
RX location TLV, so the host will be flushing out the older PPDU
status TLV events instead of DBR events in LUT table,
since DBR events signify the actual DMA completion.
2. Same fix has been made for LUT entry ageout logic.
Change-Id: Ifc0717e97d21ba3463cc2f5ceb2f22a657177002
Earlier, CFR's LUT was dumped when difference between dbr count
and release count is greater than 1. This might be agrressive.
Modified the condition to reflect the worst case where LUT has
no empty entry.
Change-Id: I010431b446ddb66364505f0c8d9a70dd181eb8b1
PHY may not be able to capture the CFR data in certain cases.
Ucode will update the reason due to which CFR capture did not
happen in PHYRX_PKT_END TLV.
Channel capture status -
0 - CAPTURE_IDLE
1 - CAPTURE_BUSY
2 - CAPTURE_ACTIVE
3 - CAPTURE_NO_BUFFER
Originally, ucode updated channel capture status only for PPDUs,
for which PHY was able to capture CFR data successfully. Ucode is
making a change to report channel capture status in PPDUs for which
PHY was unable to capture CFR data.
Re-positioning the counters in host to handle this new change in
ucode.
Change-Id: I915fe7c4969649754936cab624343e044b397a0c
Framework to accumulate RCC configurations until user issues commit
command. Once commit command is issued, all the gathered configurations
are sent to FW through WMI fixed and variable TLVs.
Change-Id: I84fec42d22a3b4eceb710b72d89a7c3047fed1f6
CRs-Fixed: 2582833
Channel Frequency Response(CFR) captures FFT bins corresponding to a PPDU
received and this is relayed to user space application along with
additional information about the PPDU gathered in the host. Usecases of
this feature include location sensing, motion detection.
Change-Id: If0da492bc1fcc0fc2b6e42339c56f9a54ee813f7
CRs-Fixed: 2541307
Converges EXPORT_SYMBOL() to qdf_export_symbol(),
this ensures easy enabling and disabling of exports
Change-Id: I5724a618c9dff7a30b9d314906fbabca943bded8
There seems to be a case where difference between DBR event count
and release count for CFR events is more than 1, which will dump
CFR's look-up-table. As the exact reason for this is not known yet,
we are reducing the log level for these prints to not be enabled
by default
Change-Id: I503f6423f08e6faa84b45747a28ec1a7de4724fc
Report CFR failed status to application by sending CFR header with
error status.
Change-Id: I67e370bbbd8294a14c32567922861a0b5226b0ea
CRs-Fixed: 2538596
For new CFR captures with AoA data, Meta data version is 2.
Updating meta data version to 2.
CRs-Fixed: 2537866
Change-Id: I4c6cb9775e5a9760630b1f28d61fb4bdfd084c6c
After every wifi up/down or load/unload, it is expected that
cfr enabled entries should be reset. Earlier, associated clients'
entires are cleared by FW. Unassociated entries are maintained by
host and were not cleared. This change clears them properly at
cfr_pdev_open level
Change-Id: I2dd7ce861901ccca72bc987c2f91677a481d401e
CRs-Fixed: 2531961
Signatures of target_if_dbr_buf_release and
target_if_dbr_cookie_lookup got updated as part of multi srng
support per pdev in DBR. Update the same in CFR.
CRs-Fixed: 2528137
Change-Id: If53fd9a1a4e4a30b8d9ba3eda9ade887e2c3322b
As part of FR 56301, phase data is being captured in CFR.
Fill the extracted information in CFR header.
Change-Id: Ia1f6245a1a18d1d11b266328b17e6506bd8439f4
CRs-Fixed: 2501944
As part of FR 56301, add support to capture CFR data for
unassociated clients on its Probe response's ACK
Change-Id: I14a4eead4ceeb3eb21d8f2bdf76007f873db1f4e
CRs-Fixed: 2501938
Replace void * tgt_if_handle of objmgr psoc/pdev with
abstract type handles provided by target interface
Change-Id: I903bbae99ec784fe445dc55f954792542d91f380
CRs-Fixed: 2467129
Move the code dependent on DIRECT_BUF_RX into necessary macros
to avoid compilation failure when WIFI_3_0 configs are disabled.
CRs-Fixed: 2445655
Change-Id: I61001f6d6a1d33bd9bd92b795c50813f1e88f87f
Fix Suspicious dereference of pointer 'payload' before NULL check.
Fix 'status' might be used uninitialized in this function.
Change-Id: Ib799043555faafc655919c1e42d0fbc43c716b2f
Two fields got swapped while polulating csi_cfr_header and
a field was missed. Corret and add missing fields.
CRs-Fixed: 2421237, 2421241, 2421209
Change-Id: Ife8ebc663292af021cc4556985c088092509b339
DBR event handler needs parameters to config number of events to
be packed and timeout until it can wait to pack these events.
Add these parameters in CFR's DBR event registration.
CRs-Fixed: 2415489
Change-Id: Id417221f3bebef40b8f8d75c0365c3c4ec01fec3
we are seeing few error prints while registring
TX events per pdev. Ignore double registration
error during pdev init.
Change-Id: I185b1c9178a4632bd14b65314a623efee0597481
CRs-Fixed: 2414456
Fix cfr stop wmi command and some other fixes checking for
sanity, error handling.
Change-Id: I9f0939fee2301f85e6e7b3338fd26e84676d7d6d
CRs-Fixed: 2407354
Add CFR component support for legacy chipsets including
the implementation of stream filesystem interfacing
Change-Id: Id92a4592425e901cc86061ae5eccefc5438efd45
CRs-Fixed: 2397716
Add Channel Frequency Response component,
This provides dispatcher and core API that can
be used by other modules.
Change-Id: I032b312c6b88494756a21afb5a36179bceb2f214
CRs-Fixed: 2372061