rc80211-pid: export tuning parameters through debugfs

This adds all the tunable parameters used by rc80211_pid to debugfs for easy
testing and tuning.

Signed-off-by: Mattias Nissler <mattias.nissler@gmx.de>
Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Mattias Nissler
2007-12-20 13:27:26 +01:00
committed by David S. Miller
parent 12446c67fe
commit 1946b74ce0
2 changed files with 110 additions and 25 deletions

View File

@@ -119,6 +119,20 @@ struct rc_pid_events_file_info {
unsigned int next_entry;
};
struct rc_pid_debugfs_entries {
struct dentry *dir;
struct dentry *target;
struct dentry *sampling_period;
struct dentry *coeff_p;
struct dentry *coeff_i;
struct dentry *coeff_d;
struct dentry *smoothing_shift;
struct dentry *sharpen_factor;
struct dentry *sharpen_duration;
struct dentry *norm_offset;
struct dentry *fast_start;
};
void rate_control_pid_event_tx_status(struct rc_pid_event_buffer *buf,
struct ieee80211_tx_status *stat);
@@ -222,8 +236,8 @@ struct rc_pid_info {
/* Exponential averaging shift. */
unsigned int smoothing_shift;
/* Sharpening shift and duration. */
unsigned int sharpen_shift;
/* Sharpening factor and duration. */
unsigned int sharpen_factor;
unsigned int sharpen_duration;
/* Normalization offset. */
@@ -237,6 +251,11 @@ struct rc_pid_info {
/* Index of the last used rate. */
int oldrate;
#ifdef CONFIG_MAC80211_DEBUGFS
/* Debugfs entries created for the parameters above. */
struct rc_pid_debugfs_entries dentries;
#endif
};
#endif /* RC80211_PID_H */