Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 215295
b: refs/heads/master
c: 8610c29
h: refs/heads/master
i:
  215293: 7d22690
  215291: 7f88cb6
  215287: 237b9e3
  215279: 0814f91
  215263: e7a9e76
  215231: 5bded59
  215167: 0d8c891
  215039: 452be46
v: v3
  • Loading branch information
Felix Fietkau authored and John W. Linville committed Oct 11, 2010
1 parent 51f2f6f commit 55b3d53
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 15943a72c7d2031c9150917ca9161a9f891d455a
refs/heads/master: 8610c29a2c9f273886b1c31ae4d92c69d4326262
15 changes: 15 additions & 0 deletions trunk/include/linux/nl80211.h
Original file line number Diff line number Diff line change
Expand Up @@ -1413,6 +1413,16 @@ enum nl80211_reg_rule_flags {
* @NL80211_SURVEY_INFO_FREQUENCY: center frequency of channel
* @NL80211_SURVEY_INFO_NOISE: noise level of channel (u8, dBm)
* @NL80211_SURVEY_INFO_IN_USE: channel is currently being used
* @NL80211_SURVEY_INFO_CHANNEL_TIME: amount of time (in ms) that the radio
* spent on this channel
* @NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY: amount of the time the primary
* channel was sensed busy (either due to activity or energy detect)
* @NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY: amount of time the extension
* channel was sensed busy
* @NL80211_SURVEY_INFO_CHANNEL_TIME_RX: amount of time the radio spent
* receiving data
* @NL80211_SURVEY_INFO_CHANNEL_TIME_TX: amount of time the radio spent
* transmitting data
* @NL80211_SURVEY_INFO_MAX: highest survey info attribute number
* currently defined
* @__NL80211_SURVEY_INFO_AFTER_LAST: internal use
Expand All @@ -1422,6 +1432,11 @@ enum nl80211_survey_info {
NL80211_SURVEY_INFO_FREQUENCY,
NL80211_SURVEY_INFO_NOISE,
NL80211_SURVEY_INFO_IN_USE,
NL80211_SURVEY_INFO_CHANNEL_TIME,
NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY,
NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY,
NL80211_SURVEY_INFO_CHANNEL_TIME_RX,
NL80211_SURVEY_INFO_CHANNEL_TIME_TX,

/* keep last */
__NL80211_SURVEY_INFO_AFTER_LAST,
Expand Down
20 changes: 20 additions & 0 deletions trunk/include/net/cfg80211.h
Original file line number Diff line number Diff line change
Expand Up @@ -294,13 +294,23 @@ struct key_params {
*
* @SURVEY_INFO_NOISE_DBM: noise (in dBm) was filled in
* @SURVEY_INFO_IN_USE: channel is currently being used
* @SURVEY_INFO_CHANNEL_TIME: channel active time (in ms) was filled in
* @SURVEY_INFO_CHANNEL_TIME_BUSY: channel busy time was filled in
* @SURVEY_INFO_CHANNEL_TIME_EXT_BUSY: extension channel busy time was filled in
* @SURVEY_INFO_CHANNEL_TIME_RX: channel receive time was filled in
* @SURVEY_INFO_CHANNEL_TIME_TX: channel transmit time was filled in
*
* Used by the driver to indicate which info in &struct survey_info
* it has filled in during the get_survey().
*/
enum survey_info_flags {
SURVEY_INFO_NOISE_DBM = 1<<0,
SURVEY_INFO_IN_USE = 1<<1,
SURVEY_INFO_CHANNEL_TIME = 1<<2,
SURVEY_INFO_CHANNEL_TIME_BUSY = 1<<3,
SURVEY_INFO_CHANNEL_TIME_EXT_BUSY = 1<<4,
SURVEY_INFO_CHANNEL_TIME_RX = 1<<5,
SURVEY_INFO_CHANNEL_TIME_TX = 1<<6,
};

/**
Expand All @@ -310,6 +320,11 @@ enum survey_info_flags {
* @filled: bitflag of flags from &enum survey_info_flags
* @noise: channel noise in dBm. This and all following fields are
* optional
* @channel_time: amount of time in ms the radio spent on the channel
* @channel_time_busy: amount of time the primary channel was sensed busy
* @channel_time_ext_busy: amount of time the extension channel was sensed busy
* @channel_time_rx: amount of time the radio spent receiving data
* @channel_time_tx: amount of time the radio spent transmitting data
*
* Used by dump_survey() to report back per-channel survey information.
*
Expand All @@ -318,6 +333,11 @@ enum survey_info_flags {
*/
struct survey_info {
struct ieee80211_channel *channel;
u64 channel_time;
u64 channel_time_busy;
u64 channel_time_ext_busy;
u64 channel_time_rx;
u64 channel_time_tx;
u32 filled;
s8 noise;
};
Expand Down
15 changes: 15 additions & 0 deletions trunk/net/wireless/nl80211.c
Original file line number Diff line number Diff line change
Expand Up @@ -3153,6 +3153,21 @@ static int nl80211_send_survey(struct sk_buff *msg, u32 pid, u32 seq,
survey->noise);
if (survey->filled & SURVEY_INFO_IN_USE)
NLA_PUT_FLAG(msg, NL80211_SURVEY_INFO_IN_USE);
if (survey->filled & SURVEY_INFO_CHANNEL_TIME)
NLA_PUT_U64(msg, NL80211_SURVEY_INFO_CHANNEL_TIME,
survey->channel_time);
if (survey->filled & SURVEY_INFO_CHANNEL_TIME_BUSY)
NLA_PUT_U64(msg, NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY,
survey->channel_time_busy);
if (survey->filled & SURVEY_INFO_CHANNEL_TIME_EXT_BUSY)
NLA_PUT_U64(msg, NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY,
survey->channel_time_ext_busy);
if (survey->filled & SURVEY_INFO_CHANNEL_TIME_RX)
NLA_PUT_U64(msg, NL80211_SURVEY_INFO_CHANNEL_TIME_RX,
survey->channel_time_rx);
if (survey->filled & SURVEY_INFO_CHANNEL_TIME_TX)
NLA_PUT_U64(msg, NL80211_SURVEY_INFO_CHANNEL_TIME_TX,
survey->channel_time_tx);

nla_nest_end(msg, infoattr);

Expand Down

0 comments on commit 55b3d53

Please sign in to comment.