diff options
author | Ben Greear <greearb@candelatech.com> | 2012-04-23 15:50:31 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-05-08 21:53:51 -0400 |
commit | e352114fd62f6d568ca0cb18f589cb8df710cf02 (patch) | |
tree | aadf36af471d9ccfd50561acf8bb052f1bace468 /include/net | |
parent | b1ab79255c539ebe740baa89f8a44ab139381e1c (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.h | 17 |
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 | */ |
2227 | struct ieee80211_ops { | 2235 | struct 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 | /** |