Jouni Malinen a écrit :
On Tue, 2010-04-27 at 15:08 -0700, Benoit Papillault wrote:
+static int ath9k_get_survey(struct ieee80211_hw *hw, int idx,
+ struct survey_info *survey)
+ struct ieee80211_conf *conf = &hw->conf;
+
+ if (idx != 0)
+ return -ENOENT;
+
+ survey->channel = conf->channel;
Are there any plans on providing this information from all channels? I
have assumed that the survey command was supposed to be used for
surveying all channels (e.g., to get information for auto-channel
selection) and returning something for the current channel is quite
limited subset of that. In other words, I would like to be able to run a
scan of all channels and then use NL80211_CMD_GET_SURVEY to fetch
additional per-channel information like noise (and also channel usage
statistics in case of ath9k) from the scanned channels.
- Jouni
Hi Jouni,
I dig into the source code to understand the use of "idx" and having the
value for all scanned channels sounds a good plan. However :
- when doing a normal scan (iw dev wlan0 scan), the noise floor
calibration is started in a special mode, so I don't know if the results
is accurate enought.
- the first calibration takes some times .... more than the scan itself.
So, you cannot get a valid value before switching to the next channel.
Anyway, how idx is supposed to be used? From 0 ... up to the callback
returning -ENOENT ?
Do we need to keep a table with noise for each channel and return those
where we have a value, in which case idx cannot be used as an index into
this table ?
Regards,
Benoit
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html