Currently there is no support to update tx stats for
non-qos frame. Update tx stats for non-qos data frames
Change-Id: Ib61dd6e3b0c676b5af806c4b1e5cca22ea6ffaa5
CRs-Fixed: 2421925
Currently we are upadting sojourn stats for all tid.
but rate stats maintains stats for only data tids 0-7.
updating stats for tid value exceeding 7 is leading it to
assert.
Update correct tx rate, rx rate and sojourn stats.
Change-Id: Ib2f5791aa7b8e85aac6283c46f58ce7e821a559b
CRs-Fixed: 2428648 2429575 2429575
The datatype of average and round up tx rate was uint32_t which truncates
the upper byte of the average and round up tx rate value.
changing the datatype of average and round up tx rate from uint32_t to
uint64_t.
Change-Id: I3809ba7cfc73ec0b4609981e70d57112ac958f33
CRs-Fixed: 2409751
Count of MSDUs Tx with AMPDU aggregation and
MSDUs without AMPDU aggregation is maintained. This
count is obtained from per ppdu stats.
Change-Id: I7c38846534bbe5f2fd0a9b3602a9d453e1c1f449
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within dp replace any such comparisons with logical
operations performed on the pointer itself.
Change-Id: I61f3adab1208682d36235421f44a048e35df346d
CRs-Fixed: 2418258
On low memory platform rx_pkt_header tlv is not subscribed to get a
savings of 128bytes in skb. This is required to reduce the skb size from
4K to 2K on 32-bit platforms. Use HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG
message to unsubscribe rx_pkt_header tlv for rxdma ring.
Change-Id: Ie684f1ca1de9c824a869b4e13fd0ee1d068004e7
CRs-Fixed: 2408424
Check for completion status of the ppdu based on
HTT_PPDU_STATS_USR_COMMON_TLV and
HTT_PPDU_STATS_USR_COMPLTN_ACK_BA_STATUS_TLV.
Update the stats only when completion status is ok else
update retry and failed frames count.
Change-Id: Iac7730715f853746d77873488b7886e7beed467d
CRs-Fixed: 2390383
It is easy to be misled when unmapping message is traced as map
message. Correct this wrong message.
CRs-Fixed: 2376470
Change-Id: I5577ae8e0f787925452c3ecf91ce0e2ff8a2ae9f
Change API signature for dp_getrateindex to populate rate index
and add additional stats required for RDK.
Add QDF abstraction for EWMA average rssi
CRs-Fixed: 2397918
Change-Id: Id878971799c5df2ae60057a86b2769724ee0dcc5
Sometimes we receive num_msdu as 0 with ru_tones and ru_start
which cause OFDMA counter to get increament
Change-Id: Ib099a2143799551266e94bc9b8d281237092a46e
Currently there is not STA inactive time support for lithium.
Read inactive_time from htt_peer_stats_cmn_tlv by sending
HTT_DBG_EXT_STATS_PEER_INFO to firmware.
After sending command, wait on completion variable till
firmware to response, trigger completion upon firmware response.
CRs-Fixed: 2319219
Change-Id: I93e6343641ae5c72610a57dd6ba551cca0b010c1
Fix implicit conversion from enum type QDF_STATUS to
different enum type A_STATUS.
Change-Id: I549c9284e18d73685e879c2f0bb8c54330a35bda
CRs-Fixed: 2389838
transmit type is incremented twice on update status.
RU tone need to get increment for MIMO_OFDMA and OFDMA
Change-Id: I4e83a91b7653b7452cf5605b7f8aad956c355350
populate TX OFDMA and TX MU MIMO information from
user rate tlv and display the same in fc_peer_stats.
Change-Id: If1dab15bbdf391fba00a701abd6024c420d1d8f7
Fix the assert in HTT PPDU TLV processing to account for
member additions at the end of htt_ppdu_stats structures by FW
This ensures Host-FW compatibility without placing hard constraints
on timelines for fwcmn header files to be synchronized with host.
Change-Id: I9f730e5896bec916c8e4e3f0eaa06b183c62f393
Change the CDP abstraction APIs for ast entry find, add and delete
to avoid external references for ast entry in upper layers
Process the HTT v2 peer map messages which will be enabled for
nexthop ast entries and use these messages instead of WMI event
for HKv1 WAR where we have to wait for delete confirmation from
target event which is processed in control path
Change-Id: Ifa91a259c0762344deb8ab89e868fc5554d75543
CRs-fixed: 2354951
1. Reduce the log level for every buffer received
from firmware
2. Set the default pktlog buffer size to 10MB.
Change-Id: Iad8827084579592fcfa69056dcfc9d57095151e7
CRs-Fixed: 2364380
Because of reference counter decrement is not triggered for every
condition path, it is possible that peer reference counter leaking
happens under some perticular circumstance. Make sure the peer ref
count unreference is called for each possible path.
CRs-Fixed: 2352433
Change-Id: I60bc5a5210519c26c57cdc563d0d1b02d799e090
Assign dp_ath_rate_lpf return value to avg_tx_rate,
which is further used to compute ppdu_tx_rate
Change-Id: Ib51be85c2436bef8feffeb611982314720399a69
CRs-Fixed: 2356831
MCL DP initialization path is running into issues due to change
I5732453f617bdc16995fda916b645c41845c3ecb. Fix the same.
Move flow control lock variables to re-use region. This is needed since
flow control deinit happens in dp_soc_detach, while in dp_soc_deinit, the
soc memory is being partially reset.
De-init HTT memory in dp_soc_deinit and free HTT handle
in dp_soc_detach. The existing code was not freeing HTT
packets for MCL case and freeing the HTT handle twice.
CRs-Fixed: 2359409
Change-Id: I52dcccc0444d4ce139a29ffcb884598bbacda88f
Avoid memory fragmentation that happens during
attach-detach flow.
- Reuse transmit allocated static pool memory across soc up/down.
These memories are allocated during soc attach.
- Reuse DP source ring memory, DP soc context, DP pdev context
across soc up/down.
- Reorganise structure members of DP soc and DP pdev so that
we can zero out structure members across soc up/down
- Add cdp soc init/deinit and cdp pdev init/deinit that
will be active across soc up/down
Change-Id: I5732453f617bdc16995fda916b645c41845c3ecb
The ack_rssi_valid flag to set to 1 only when completion_status
value is 0 which shows that the TX was successful.
Change-Id: I9e520422995e374d7d35b9db0c060d1fce2f9067
Calculate last_per based on unicast packets and success packets
in last one second
Change-Id: I8b469e5d9c1e40498b3267bf7bdf3149159bdc31
CRs-Fixed: 2343479
Replace ol_if interface with WDI for dp stats updation to upper layer.
Define a new CDP API to get radiostats.
CRs-Fixed: 2326789
Change-Id: Ieaee2fe18fc9a0ad0e259e36f59529fe9bc4e208
Avoid processing tx rate stats if STATS_USR_RATE_TLV is not processed
in htt_ppdu_stats
Change-Id: Icce8ca0b351ae1ae784ba605d1d984dcdd033715
CRs-Fixed: 2316130
Support Monitor Mode for QCA6390 as RXDMA1 block is
now removed.
1. Monitor buffers are now received on rxdma_err_dst_ring
2. RXDMA1 monitor status ring is moved to RXDMA0 monitor
status ring
3. Msdu link descriptors are now returned to WBM descriptor
release ring.
4. Reap the Monitor buffers and return it to SW Refill ring.
5. Use the same rx descriptor pool for regular and monitor data.
Change-Id: If41e5d13f942da2b97e5aab72b88ae344925ba67
CRs-Fixed: 2297300
- Support to pass IPA enabled(disabled) flag from ini to DP layer
- Use ioremap call to translate tx_comp_doorbell_paddr obtained from
calling ipa_setup api to tx_comp_doorbell_vaddr. This is needed to
write the initial value of HP at the doorbell address.
- Change REO_DST_RING_SIZE and WLAN_CFG_TX_RING_SIZE to 1023
for napier/hastings if IPA is enabled. This is needed because,
ipa_setup API can handle only 16-bit values for the size param(bytes)
of the ring.
- Disable hash based flow steering for SAP peers in case IPA is enabled
and set default reo_dest_ring_4 as default RX ring. Since IPA will be
reaping RX packets from reo_dest_ring_4 only, flow steering is not
needed for SAP peers.
- Unmap pre-allocated TX buffers for IPA in the TX completion ring.
- Donot execute IPA functionality if IPA is disabled from ini.
Change-Id: I6855bfe293a457ccc0abd1ad5567f5c95232a9d2
CRs-Fixed: 2183519
1. Address out of bounds array access while
populating mcs rates.
2. Use cdp_sec_type enum inplace of htt_sec_type
for common code.
Change-Id: I0ae1e0acaf7422e73dc26befc9f066f3f424ec6b
CRs-Fixed: 2327153
In dp_get_vdev_from_soc_vdev_id_wifi3 add vdev list lock
while traversing through pdev->vdev_list
Change-Id: I24652a7a65247625b3a6da092476287bf8560e1b
CRs-fixed: 2323655
Currently peer reference is used with out taking any ref count.
In parallel context execution on different core peer reference may
be cleaned up in peer unmap event. So take ref count while using
the peer reference and decrement after done with it.
Change-Id: I02ca172cbdc4309fabd3bbbad00940826662bbd3
CRs-Fixed: 2301963
Host changes to enable HTT version 2 messaging for
PEER map and unmap in FW and changes to handle these
messages in host
Change-Id: Ifbe478212bbbc9c9ea1c1e4791c7a78407c376cc
Set monitor direct filter when smart monitor is
enabled. Deliver header from NAC if md bit is set
and smart mesh feature is used.
Change-Id: If1ef865e013c21bbb58bcb89a87856b12d6c7278
Crs-fixed: 2246660
Currently gi value was not considered for ratekbps calculation
if sgi is enabled, include gi parameter for ratekbps calculation
Change-Id: Idd8b36375493c26f22f2f4f0c7ae922df37e65a1
Peerid 0xffff is for scan peer and rate information needs to
be delivered using valid user index from API dp_get_ppdu_info_user_index
Change-Id: If200467755c4b18002db221413976624ca66a9c9
Clean up datapath component prints by correcting trace levels for
regularly occurring prints and removing newlines from converged
print APIs since qdf_trace_msh appends them by default.
Change-Id: Ie8fe319fcb737720f7400a165e134b6a18bd15b5
CRs-Fixed: 2243843
Disable m_copy/enhanced_stats feature causes the bpr feature disable.
Hence add check for bpr feature status during enable/disable of m_copy
and enhanced_stats.
CRs-Fixed: 2275686
Change-Id: I5592b422823446374ce560fe3653990be4c796b0
macros and fw cmn headers included in hal_internal.h is moved
to a new hal_hw_headers.h to avoid these getting included in hif
layer. Include the new hal_hw_headers.h file
Change-Id: I3390ae9e71ca561d94a265e1fdf4d9354e7b2474
Reverting the change where mgmt ctrl frame buffer was assinged NULL for
NONTLV payload case as this check is handled later in the same path.
Change-Id: Icccfb401fe34da593198bac27650139654021636
CRs-Fixed: 2276923