aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mwifiex/decl.h
diff options
context:
space:
mode:
authorXinming Hu <huxm@marvell.com>2014-12-23 19:14:07 +0530
committerKalle Valo <kvalo@codeaurora.org>2015-01-06 20:54:11 +0200
commitcbf6e05527a7654ac1c4f4787dfd7a182fcc0c73 (patch)
treeb4c5415b1a99372cd00395b3c09e38262f39e18c /drivers/net/wireless/mwifiex/decl.h
parentmwifiex: add bcn_rcv_cnt and bcn_miss_cnt in getlog debugfs (diff)
downloadlinux-dev-cbf6e05527a7654ac1c4f4787dfd7a182fcc0c73.tar.xz
linux-dev-cbf6e05527a7654ac1c4f4787dfd7a182fcc0c73.zip
mwifiex: add rx histogram statistics support
This patch add a new debugfs item histogram used for reporting rx data packet statitics(rx rate, snr, noise floor, signal strenth) to userspace. Signed-off-by: Xinming Hu <huxm@marvell.com> Signed-off-by: Cathy Luo <cluo@marvell.com> Signed-off-by: Avinash Patil <patila@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/mwifiex/decl.h')
-rw-r--r--drivers/net/wireless/mwifiex/decl.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/net/wireless/mwifiex/decl.h b/drivers/net/wireless/mwifiex/decl.h
index 21b5130c264e..cdca8ed7b3b1 100644
--- a/drivers/net/wireless/mwifiex/decl.h
+++ b/drivers/net/wireless/mwifiex/decl.h
@@ -93,6 +93,14 @@
#define MWIFIEX_TDLS_MAX_FAIL_COUNT 4
#define MWIFIEX_AUTO_TDLS_IDLE_TIME 10
+/* 54M rates, index from 0 to 11 */
+#define MWIFIEX_RATE_INDEX_MCS0 12
+/* 12-27=MCS0-15(BW20) */
+#define MWIFIEX_BW20_MCS_NUM 15
+
+/* Rate index for OFDM 0 */
+#define MWIFIEX_RATE_INDEX_OFDM0 4
+
enum mwifiex_bss_type {
MWIFIEX_BSS_TYPE_STA = 0,
MWIFIEX_BSS_TYPE_UAP = 1,
@@ -205,4 +213,20 @@ struct mwifiex_chan_stats {
u16 cca_scan_dur;
u16 cca_busy_dur;
} __packed;
+
+#define MWIFIEX_HIST_MAX_SAMPLES 1048576
+#define MWIFIEX_MAX_RX_RATES 44
+#define MWIFIEX_MAX_AC_RX_RATES 74
+#define MWIFIEX_MAX_SNR 256
+#define MWIFIEX_MAX_NOISE_FLR 256
+#define MWIFIEX_MAX_SIG_STRENGTH 256
+
+struct mwifiex_histogram_data {
+ atomic_t rx_rate[MWIFIEX_MAX_AC_RX_RATES];
+ atomic_t snr[MWIFIEX_MAX_SNR];
+ atomic_t noise_flr[MWIFIEX_MAX_NOISE_FLR];
+ atomic_t sig_str[MWIFIEX_MAX_SIG_STRENGTH];
+ atomic_t num_samples;
+};
+
#endif /* !_MWIFIEX_DECL_H_ */