Commit Graph

108 Commits

Author SHA1 Message Date
nobelj
debe2b3b9c qcacmn: support enhance TX capture
support TX capture mode to deliver msdu along with meta data.

Change-Id: Ic84416cc4892e37bfb831dada136a4ff6b615a61
2019-05-10 12:39:30 -07:00
Surya Prakash
07c81e7d77 qcacmn: Update rssi only when its valid
Peer stats struct members initial value 0, so when other functions call
to update peer stats have 0 rssi value which updates mininum
rssi since its the least value. So initialize the rssi with invalid
value initially

Change-Id: Ife033598c7ac47a9a26595f97bff058570d3e91f
CRs-Fixed: 2403735
2019-05-02 05:24:04 -07:00
Manoj Ekbote
99d0783cec qcacmn: Add support to send wifi down notification
Add command to send wifi down indication when MBSS
feature is enabled.

Change-Id: Ife842dcf8704a97aba848234ddf7b4ddb2a0cc3c
2019-05-01 20:15:56 -07:00
Karunakar Dasineni
d8c7ad2228 qcacmn: Support per-ring CCE protocol tag stats
CCE stats are reported across rings today. Since HKv2 is a SMP, it
creates the possibility of missing stats when two or more CPUs are
updating the counters for the same protocol type. In order to avoid
this, we can either use locks or store stats on a per-CPU basis.
Since tagging happens on the core data path, locks are not preferred.
Instead, we use a per-ring counter, since each CPU operates on a REO
ring. Exception packets today go to Ring-0 (also normal rx Reo-0
go to Ring-0). Hence tags are maintained separately for exception
ring as well.

Change-Id: Ib01934619fb026bf64a8ac998eaec2d4df7f5a6e
CRs-Fixed: 2438143
2019-05-01 10:18:35 -07:00
Karunakar Dasineni
142f9baf47 qcacmn: Add new feature to support protocol tags
With this feature, using appropriate commands, link layer, network layer,
transport layer and some of the application protocols can be tagged with
the user provided tag values for easier identification of protocols. The
supported protocols today are as follows.

ARP, DHCPv4, DHCPv6, DNS over TCP (v4), DNS over TCP (v6), DNS over UDP
(v4), DNS over UDP (v6), ICMPv4, ICMPv6, TCPv4, TCPv6, UDPv4,
UDPv6, IPv4, IPv6, EAP.

Receive packets are tagged by hardware. Tags are applied after the first
matching rule. Hence it is recommended that the rules are
programmed in such a way that tags are configured from application layer
to data link layer to get expected results.

Change-Id: Ibdc2bd2b78234f482074955e89fb93f05988eaca
2019-04-26 15:31:10 -07:00
Amir Patel
ac7d9465f9 qcacmn: Update correct tx rate, rx rate and sojourn stats
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
2019-04-24 09:30:02 -07:00
Kai Chen
52ef33fca3 qcacmn: Support enhanced Rx capture
Support Rx capture mode to deliver first 128 bytes of
each MSDU, along with some meta data.

Change-Id: I1ffa8b1a029d46f68aa78520bacc019de8af7a82
2019-04-19 04:08:56 -07:00
Shashikala Prabhu
f7786d3822 qcacmn: Change the data type of average/roundup tx rate
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
2019-04-16 09:09:38 -07:00
sumedh baikady
c2fa7c99c0 qcacmn: Deliver STP pkts from wbm exception path
Vlan tagged STP pkts are received in host from
wbm exception path with wifi parse error code.
This is delivered to stack. Stats added for wifi
parse error and vlan tagged stp pkt count.

Change-Id: I25af5ab403ee7a46b4abe2f60328314d61587b80
CRs-fixed: 2375575
2019-04-02 15:51:44 -07:00
Amir Patel
468bded892 qcacmn: Add RDK statistics changes for Hawkeye
Add RDK statistics changes to collect below stats
a. Tx rate statistics
b. Tx sojourn statistics
c. Rx rate statistics

CRs-Fixed: 2416141
Change-Id: I0c8127cd387b7665a76847f4125977bbb8c5a57a
2019-03-21 23:04:43 -07:00
Varsha Mishra
3e9d647162 qcacmn: Fixing display of Vow Stats
Adding more fields to vow stats display function.

Change-Id: Ic5227e994e55c0ebc99351051d5b409ba0c3f627
2019-03-15 23:15:02 -07:00
Venkateswara Swamy Bandaru
cf1a001281 qcacmn: Add cdp support for DCS reenable timer
Add cdp support to configure DCS re-enable timer.

Change-Id: I35fdf2fd582468e6f09cbad35c927115b4177694
CRs-Fixed: 2415368
2019-03-15 09:15:13 -07:00
Vignesh U
b7f7d8e55e qcacmn: Provide proper age value for Assoc STA Link Metrics
Use the time stamp taken during the updating of RSSI value to
calculate the time elapsed when the IOCTL call happens. Return
that value as delta age in ms.

Change-Id: I96d36a7a132b7a327d9d5a5ba3a318a82889ebd5
CRs-Fixed: 2394910
2019-03-13 19:41:39 -07:00
Varsha Mishra
a331e6e55f qcacmn: Implement delay VOW stats for hawkeye
Delay counters per TID have been implemented for following types:
1. Linux stack to hw enqueue delay
2. HW enqueue delay to tx completion delay
3. TX interframe delay
4. RX interframe delay
5. RX frame delay from ring reap to networking stack

Change-Id: I836596cbd878a43955c18b4981cb5b7b43d4df5e
2019-03-12 06:10:05 -07:00
Varsha Mishra
18281794c8 qcacmn: Implement VOW stats for hawkeye
VOW stats is an extension of regular stats to capture
all drops per TID. Delay counters per TID are also
included.

Change-Id: If6087f37b32cf9ae4bb405190a358ad3c9750dd2
2019-03-06 18:20:42 -08:00
Amir Patel
256dcbe737 qcacmn: Add CDP support for RDK peer statistics framework
Add CDP APIs for:
a. To get/set rdk stats context into soc
b. To set rdk stats flag into soc
c. To flush rdk stats

Change-Id: I74e35f5fa244d6d38f46a4f64ebbad8a630589bd
2019-03-02 17:45:45 -08:00
Venkata Sharath Chandra Manchala
69a0ed394a qcacmn: Add counters for wdi messages
Add counters to account for wdi messages from firmware.

Change-Id: I1c12d42ac4d385d2ed27f6eff84dd2fcfd540ab1
CRs-Fixed: 2365971
2019-03-01 23:39:17 -08:00
Amir Patel
78824b1d4e qcacmn: Add changes for RDK statistics
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
2019-02-27 03:13:56 -08:00
Abhiram Jogadenu
975303cc41 qcacmn: Add wmi support for CFR capture command
Add wmi support for CFR capture command.

CRs-Fixed: 2372061
Change-Id: Icaeb30ccf619058383314317864be65380a551fd
2019-02-22 02:50:14 -08:00
nobelj
7966633c14 qcacmn: OFDMA counter get increased when num_msdu 0
Sometimes we receive num_msdu as 0 with ru_tones and ru_start
which cause OFDMA counter to get increament

Change-Id: Ib099a2143799551266e94bc9b8d281237092a46e
2019-02-20 12:56:39 -08:00
Rhythm Patwa
ce4c4a6f1e qcacmn: Add wmi_pdev param for WMI_PDEV_PARAM_EQUAL_RU_ALLOCATION_ENABLE
Add the WMI PDEV param 'wmi_pdev_param_equal_ru_allocation_enable' to
add command support.

Change-Id: If9dde1277ea70687f7a62815b1f97fd1f60acaf0
CRs-fixed: 2247588
2019-02-13 09:27:42 -08:00
Rhythm Patwa
14b2e1c89b qcacmn: Add command support for UL PPDU duration
Add the WMI PDEV param 'wmi_pdev_param_ul_ppdu_duration' to
add command support to modify the UL PPDU duration.

Change-Id: If2f8ef02d4f992d91fa745599d5c08b1dfccceca
CRs-fixed: 2393139
2019-02-13 09:27:39 -08:00
Jeffin Mammen
a6c50bd74e qcacmn: Send RSSI of the last ack to SON module
Send the RSSI of the last ack received to SON module.

Change-Id: I08d362676b4831beac36356fac332c379853ad99
CRs-Fixed: 2393401
2019-02-13 06:43:43 -08:00
nobelj
4e9d51f914 qcacmn: Populate MU-MIMO user pos and mu group id
populate TX OFDMA and TX MU MIMO information from
user rate tlv and display the same in fc_peer_stats.

Change-Id: If1dab15bbdf391fba00a701abd6024c420d1d8f7
2019-01-24 09:59:06 -08:00
Rhythm Patwa
33fd91b43f qcacmn: Add command support for enable/disable Spatial Reuse
Add command support to enable/disbale 'Spatial Reuse Value15
Allowed' parameter in the Spatial Reuse IE.

Change-Id: I755a15da7758704f2e833ddc61805d45654f0957
CRs-fixed:2345770
2019-01-16 19:35:36 -08:00
Pamidipati, Vijay
eb0e456d68 qcacmn: Add missing NULL check in DP rx path
Add a missing NULL check for peer object in rx_da_learn API
Also add missing elements in pdev_stats_cmn_tlv structure.

CRs-Fixed: 2357352
Change-Id: Ie54fd0a6a45f00d60420c391098f22b0097de3ac
2018-12-21 10:05:35 -08:00
Shaakir Mohamed
25737a45e3 qcacmn: Add APIs to enable/disable BW Reduction
Add functions to enable/disable BW-Agile DFS Reduction

Change-Id: I1cc355f06a2027b229ca2001671ddb69c7cff4e6
CRs-Fixed: 2302983
2018-12-06 17:51:18 -08:00
Amir Patel
3ccfa6a645 qcacmn: Add accumulated last_tx_rate in cdp_tx_stats
Add accumulated last_tx_rate stat in cdp_tx_stats

Change-Id: I3d939b0f058e838e426c5fd77d576deb008288b6
2018-11-22 02:29:56 -08:00
Kumar Kathirvel
8c4a2a0a34 qcacmn: Added a new param to get the band-info
Radio band which is classified and it's operating in 5G_HIGH_BAND
or 5G_LOW_BAND or 5G_FULL_BAND freq range or NON_5G_BAND,
ie It's 2G BAND

Change-Id: I9d140960c4b1fdab41621a1b277c140323d86e59
CRs-Fixed: 2339508
2018-11-16 10:15:02 +05:30
Amir Patel
3c60631d7c qcacmn: Add support for last_per
Calculate last_per based on unicast packets and success packets
in last one second

Change-Id: I8b469e5d9c1e40498b3267bf7bdf3149159bdc31
CRs-Fixed: 2343479
2018-11-15 03:38:29 -08:00
Vignesh Mohan
a7acb00fcb qcacmn: Add cfg to enable/disable NOL subchannel marking
Add entry in cfg enumlist for radio to enable or
disable NOL subchannel marking.

Change-Id: Ia989e1fa99303eecd1ed85fd957405d90acc418a
CRs-Fixed: 2334258
2018-11-13 15:43:13 -08:00
Rhythm Patwa
8ff2fb7fa8 qcacmn: Add WMI support for configuring UL parameters
Add wmi vdev param support for UL parameters.

Change-Id: I3f742daf5691b0867c42b447c26efa640478800f
CRs-fixed: 2226303
2018-11-09 08:19:53 -08:00
narayan
fdf921110e qcacmn: Adding wmi param as part of peer_extd_stats
Adding two members including tx sgi_count in
host peer_extd_stats structure which is received from
the fw and populated to upper layer along with adding two
members to cdp_rx_stats.

Change-Id: Id45b2d0042d01771ac74a906d72c369c3dc31394
CRs-Fixed: 2147922
2018-11-06 22:40:05 -08:00
Uraj Sasan
ff4f2d20fb qcacmn: Add Support for msdu retry stats
Requirement to provide various msdu retry stats to host:-
1. successfully transmitted msdus
2. Retried msdus
3. msdus retried for more than once
4. failed msdus

Change-Id: I4cd7dfceae16b4223df605fa174299858a8651c8
2018-10-30 03:43:20 -07:00
Pranita Solanke
0588114986 qcacmn: Maintain SG/TSO desc_cnt at pdev stats
Maintain SG/TSO desc_cnt at pdev stats instead of ingress
stats to support legacy stats and change the fw_rem counter
to cdp_pkt_info to have packets and bytes information
for legacy platforms as part of convergence effort.

Change-Id: Ib908e8d1c1d78d191418d3884f41f981ba002b54
2018-10-23 04:19:38 -07:00
Tallapragada Kalyan
5deeef2fec qcacmn: Add support for MEC stats and null queue stats
Add support for MEC stats and null queue stats

Change-Id: Ie523d8e5cbca6660cd5477d152360db448d75708
2018-10-05 15:46:46 -07:00
Anish Nataraj
b049be7356 qcacmn: Add Enumeration for ioctl for video delay counters
Add enumeration for video delay counters

Change-Id: Idddbc365027ad1aa4bbaadee090960df1d8af3b2
2018-10-03 02:44:50 -07:00
Venkateswara Swamy Bandaru
41ebb3396b qcacmn: Fix kernel panic issue in mesh tx path
Add check for headroom before pushing the head for sufficient headroom
to prevent kernel panic in skb push function.

Change-Id: Iafc963f68b35564c7f291e9d91d933b3e31d7daa
CRs-Fixed: 2315569
2018-09-21 02:06:43 -07:00
Pranita Solanke
afcd0f1289 qcacmn: Add Video/all TID Counters framework for both tx/rx
Add struct in cdp required to display VoW stats
for hawkeye and akronite

Change-Id: Ibd3a3b5e5933841cc28c9ce1b36d69615234720a
2018-08-31 04:01:24 -07:00
Pranita Solanke
f840754fbf qcacmn: Add support for last tx rate for multicast
Apstats display last tx rate for unicast as well as for multicast
hence we are adding support for last tx rate for multicast

Change-Id: I94cdcbb9c156ecaa4b7a5407a0f0c00dfa9786e9
2018-08-30 01:59:26 -07:00
Debasis Das
72521f8c0a qcacmn: Support channel utilization stats
Provide support for following channel utilization stats:
self_bss_util,obss_util,ap_rx_util,free_medium,
ap_tx_util,obss_rx_util,non_wifi_util

Change-Id: Ib1358988ae0b5794e70ba4348a78646e9d2a6cba
CRs-Fixed: 2298865
2018-08-28 13:09:48 -07:00
chenguo
4d877b8ea5 qcacmn: Delete duplicated rate info code in statistics printing
Using common function to replace the duplicated rate info code in
statistics of data path for TX, RX and peer info printing.

Change-Id: I80d296001b95d7a5ff11d7ce538e16f86e7e67e8
CRs-Fixed: 2291395
2018-08-22 14:54:53 -07:00
y
db24745af8 qcacmn: PPDU changes for DP Componentization
PPDU rate related change moved to data path layer

Change-Id: Id362da61336fb439e394437636af53c0c2c10988
2018-08-10 18:11:36 -07:00
Ruchi, Agrawal
c3e68bc67d qcacmn: desc na change
Part of base changes, move due to dependency on
other changes.

Change-Id: I7d640d2976c4c2c2c156a5223683dc4b28559577
CRs-Fixed: 2283286
2018-07-27 14:25:16 -07:00
Amir Patel
0291157bef qcacmn: Add new members for DP componentization
To consolidate the stats spread over across UMAC, OL_IF
layer and process at respective datapaths depending
on platforms.

Change-Id: I87d02c767a309e7aeef88a124567259debc1bba5
CRs-Fixed: 2283286
2018-07-27 14:25:11 -07:00
Pavankumar Nandeshwar
720e1983ff qcacmn: Add a per-radio command to fetch radio activity factor
This change Adds a per-radio command to calculate and fetch
radio activity factor from the driver.

Change-Id: I209a4d93889925b63969d36877127e2a72de25fe
CRs-Fixed: 2266783
2018-07-27 14:25:09 -07:00
Priyadarshnee S
973bc0affa qcacmn: Add support for twice antenna gain param
Existing antenna gain command does not take odd antenna gain value that is
gains are not supported in steps of 0.5db. antenna_gain_half_db pdev
param provides this support. Added WMI and CDP changes to configure/read
this data.
CRs-Fixed: 2024854
Change-Id: I47da9eed74a1a0180cefb4c3f47bc4340da1bdfd
2018-07-26 03:22:01 -07:00
Vinay Adella
0f72e11a1f qcacmn: Add Params for Continuous Background Scan(CBS)
OL_ATH_PARAM_CBS - Command to enable/disable CBS
OL_ATH_PARAM_DCS_SIM - Command to simulate DCS interferences
OL_ATH_PARAM_CBS_DWELL_SPLIT_TIME - Command to configure
Dwell Split time
OL_ATH_PARAM_CBS_DWELL_REST_TIME - Command to configure
Dwell Rest time
OL_ATH_PARAM_CBS_WAIT_TIME - Command to configure CBS wait time.
OL_ATH_PARAM_CBS_CSA - Command to enable channel switch with CBS.

Change-Id: If1c45c7caa53da7f05e56f23c74cf1b982ea8f48
CRs-Fixed: 2134748
2018-07-19 04:29:28 -07:00
Subrat Mishra
ab28071e57 qcacmn: Add OL param for estimated airtime calculation
Introduce OL param to configure estimated airtime metrics.
Periodicity, airtime, ppdu duration and block ACK window.

Change-Id: Id3d538928f9140fabfaaa6f042fcff6b9df4bef0
CRs-Fixed: 2261469
2018-07-06 04:45:21 -07:00
Sathish Kumar
07734b957b qcacmn: Add OL param for DBR ring status dump
Direct Buffer Rx module has an API to print the status of the rings
per module per pdev. Introduce OL param to support this through
CLI.

Change-Id: Iebbd2c314e72dc0753cdcb581f17d93d3c71a5db
CR-Fixed: 2263968
2018-07-06 01:46:08 -07:00