2 * Copyright (C) 2008 Felix Fietkau <nbd@openwrt.org>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
9 #ifndef __RC_MINSTREL_H
10 #define __RC_MINSTREL_H
12 struct minstrel_rate
{
16 unsigned int perfect_tx_time
;
17 unsigned int ack_time
;
20 unsigned int retry_count
;
21 unsigned int retry_count_cts
;
22 unsigned int retry_count_rtscts
;
23 unsigned int adjusted_retry_count
;
30 /* parts per thousand */
34 /* per-rate throughput */
42 struct minstrel_sta_info
{
43 unsigned long stats_update
;
44 unsigned int sp_ack_dur
;
45 unsigned int rate_avg
;
47 unsigned int lowest_rix
;
49 unsigned int max_tp_rate
;
50 unsigned int max_tp_rate2
;
51 unsigned int max_prob_rate
;
52 unsigned int packet_count
;
53 unsigned int sample_count
;
56 unsigned int sample_idx
;
57 unsigned int sample_column
;
60 struct minstrel_rate
*r
;
66 #ifdef CONFIG_MAC80211_DEBUGFS
67 struct dentry
*dbg_stats
;
71 struct minstrel_priv
{
72 struct ieee80211_hw
*hw
;
76 unsigned int max_retry
;
77 unsigned int ewma_level
;
78 unsigned int segment_size
;
79 unsigned int update_interval
;
80 unsigned int lookaround_rate
;
81 unsigned int lookaround_rate_mrr
;
84 void minstrel_add_sta_debugfs(void *priv
, void *priv_sta
, struct dentry
*dir
);
85 void minstrel_remove_sta_debugfs(void *priv
, void *priv_sta
);