mac80211: add debugfs file for last rx rate
authorSaravana <saravanad@posedge.com>
Thu, 29 Nov 2012 14:24:19 +0000 (19:54 +0530)
committerJohannes Berg <johannes.berg@intel.com>
Thu, 29 Nov 2012 14:33:06 +0000 (15:33 +0100)
Add a debugfs file showing the rate at which
the last packet is received.

Signed-off-by: Saravana <saravanad@posedge.com>
[fix whitespace]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/debugfs_sta.c

index b6fd9f6ed80ca5bb36034112a4987cdb02e58913..49a1c70bbd706232cc66b688391dbaf7a908b6d6 100644 (file)
@@ -337,6 +337,23 @@ static ssize_t sta_current_tx_rate_read(struct file *file, char __user *userbuf,
 }
 STA_OPS(current_tx_rate);
 
+static ssize_t sta_last_rx_rate_read(struct file *file, char __user *userbuf,
+                                    size_t count, loff_t *ppos)
+{
+       struct sta_info *sta = file->private_data;
+       struct rate_info rinfo;
+       u16 rate;
+
+       sta_set_rate_info_rx(sta, &rinfo);
+
+       rate = cfg80211_calculate_bitrate(&rinfo);
+
+       return mac80211_format_buffer(userbuf, count, ppos,
+                                     "%d.%d MBit/s\n",
+                                     rate/10, rate%10);
+}
+STA_OPS(last_rx_rate);
+
 #define DEBUGFS_ADD(name) \
        debugfs_create_file(#name, 0400, \
                sta->debugfs.dir, sta, &sta_ ##name## _ops);
@@ -387,6 +404,7 @@ void ieee80211_sta_debugfs_add(struct sta_info *sta)
        DEBUGFS_ADD(ht_capa);
        DEBUGFS_ADD(last_ack_signal);
        DEBUGFS_ADD(current_tx_rate);
+       DEBUGFS_ADD(last_rx_rate);
 
        DEBUGFS_ADD_COUNTER(rx_packets, rx_packets);
        DEBUGFS_ADD_COUNTER(tx_packets, tx_packets);