aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorBen Greear <greearb@candelatech.com>2012-04-23 15:50:31 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-05-08 21:53:51 -0400
commite352114fd62f6d568ca0cb18f589cb8df710cf02 (patch)
treeaadf36af471d9ccfd50561acf8bb052f1bace468 /include/net
parentb1ab79255c539ebe740baa89f8a44ab139381e1c (diff)
mac80211: Framework to get wifi-driver stats via ethtool.
This adds hooks to call into the driver to get additional stats for the ethtool API. Signed-off-by: Ben Greear <greearb@candelatech.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/mac80211.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index da3658177997..4d6e6c6818d0 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -2223,6 +2223,14 @@ enum ieee80211_rate_control_changed {
2223 * The @tids parameter is a bitmap and tells the driver which TIDs the 2223 * The @tids parameter is a bitmap and tells the driver which TIDs the
2224 * frames will be on; it will at most have two bits set. 2224 * frames will be on; it will at most have two bits set.
2225 * This callback must be atomic. 2225 * This callback must be atomic.
2226 *
2227 * @get_et_sset_count: Ethtool API to get string-set count.
2228 *
2229 * @get_et_stats: Ethtool API to get a set of u64 stats.
2230 *
2231 * @get_et_strings: Ethtool API to get a set of strings to describe stats
2232 * and perhaps other supported types of ethtool data-sets.
2233 *
2226 */ 2234 */
2227struct ieee80211_ops { 2235struct ieee80211_ops {
2228 void (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb); 2236 void (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb);
@@ -2353,6 +2361,15 @@ struct ieee80211_ops {
2353 u16 tids, int num_frames, 2361 u16 tids, int num_frames,
2354 enum ieee80211_frame_release_type reason, 2362 enum ieee80211_frame_release_type reason,
2355 bool more_data); 2363 bool more_data);
2364
2365 int (*get_et_sset_count)(struct ieee80211_hw *hw,
2366 struct ieee80211_vif *vif, int sset);
2367 void (*get_et_stats)(struct ieee80211_hw *hw,
2368 struct ieee80211_vif *vif,
2369 struct ethtool_stats *stats, u64 *data);
2370 void (*get_et_strings)(struct ieee80211_hw *hw,
2371 struct ieee80211_vif *vif,
2372 u32 sset, u8 *data);
2356}; 2373};
2357 2374
2358/** 2375/**