diff options
author | Jeff Garzik <jeff@garzik.org> | 2007-05-09 18:54:49 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-05-09 18:54:49 -0400 |
commit | 2c4f365ad2361c93c097e958b2b0a7a112750228 (patch) | |
tree | 83c046142a6e057f005b97b4b7356cd4ff7a9783 /net | |
parent | 3cb7396b7b26585b1ab7c1a8ca554ec103da5d37 (diff) | |
parent | 47c93d2faf9d7e94393852823480ea61c868caee (diff) |
Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream
Diffstat (limited to 'net')
-rw-r--r-- | net/ieee80211/ieee80211_geo.c | 16 | ||||
-rw-r--r-- | net/ieee80211/ieee80211_wx.c | 8 |
2 files changed, 21 insertions, 3 deletions
diff --git a/net/ieee80211/ieee80211_geo.c b/net/ieee80211/ieee80211_geo.c index 305a09de85a5..960ad13f5e9f 100644 --- a/net/ieee80211/ieee80211_geo.c +++ b/net/ieee80211/ieee80211_geo.c | |||
@@ -94,6 +94,21 @@ int ieee80211_channel_to_index(struct ieee80211_device *ieee, u8 channel) | |||
94 | return -1; | 94 | return -1; |
95 | } | 95 | } |
96 | 96 | ||
97 | u32 ieee80211_channel_to_freq(struct ieee80211_device * ieee, u8 channel) | ||
98 | { | ||
99 | const struct ieee80211_channel * ch; | ||
100 | |||
101 | /* Driver needs to initialize the geography map before using | ||
102 | * these helper functions */ | ||
103 | if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0) | ||
104 | return 0; | ||
105 | |||
106 | ch = ieee80211_get_channel(ieee, channel); | ||
107 | if (!ch->channel) | ||
108 | return 0; | ||
109 | return ch->freq; | ||
110 | } | ||
111 | |||
97 | u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq) | 112 | u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq) |
98 | { | 113 | { |
99 | int i; | 114 | int i; |
@@ -174,6 +189,7 @@ EXPORT_SYMBOL(ieee80211_get_channel); | |||
174 | EXPORT_SYMBOL(ieee80211_get_channel_flags); | 189 | EXPORT_SYMBOL(ieee80211_get_channel_flags); |
175 | EXPORT_SYMBOL(ieee80211_is_valid_channel); | 190 | EXPORT_SYMBOL(ieee80211_is_valid_channel); |
176 | EXPORT_SYMBOL(ieee80211_freq_to_channel); | 191 | EXPORT_SYMBOL(ieee80211_freq_to_channel); |
192 | EXPORT_SYMBOL(ieee80211_channel_to_freq); | ||
177 | EXPORT_SYMBOL(ieee80211_channel_to_index); | 193 | EXPORT_SYMBOL(ieee80211_channel_to_index); |
178 | EXPORT_SYMBOL(ieee80211_set_geo); | 194 | EXPORT_SYMBOL(ieee80211_set_geo); |
179 | EXPORT_SYMBOL(ieee80211_get_geo); | 195 | EXPORT_SYMBOL(ieee80211_get_geo); |
diff --git a/net/ieee80211/ieee80211_wx.c b/net/ieee80211/ieee80211_wx.c index cee5e13bc427..523a137d49dd 100644 --- a/net/ieee80211/ieee80211_wx.c +++ b/net/ieee80211/ieee80211_wx.c | |||
@@ -89,15 +89,17 @@ static char *ieee80211_translate_scan(struct ieee80211_device *ieee, | |||
89 | start = iwe_stream_add_event(start, stop, &iwe, IW_EV_UINT_LEN); | 89 | start = iwe_stream_add_event(start, stop, &iwe, IW_EV_UINT_LEN); |
90 | } | 90 | } |
91 | 91 | ||
92 | /* Add frequency/channel */ | 92 | /* Add channel and frequency */ |
93 | iwe.cmd = SIOCGIWFREQ; | 93 | iwe.cmd = SIOCGIWFREQ; |
94 | /* iwe.u.freq.m = ieee80211_frequency(network->channel, network->mode); | ||
95 | iwe.u.freq.e = 3; */ | ||
96 | iwe.u.freq.m = network->channel; | 94 | iwe.u.freq.m = network->channel; |
97 | iwe.u.freq.e = 0; | 95 | iwe.u.freq.e = 0; |
98 | iwe.u.freq.i = 0; | 96 | iwe.u.freq.i = 0; |
99 | start = iwe_stream_add_event(start, stop, &iwe, IW_EV_FREQ_LEN); | 97 | start = iwe_stream_add_event(start, stop, &iwe, IW_EV_FREQ_LEN); |
100 | 98 | ||
99 | iwe.u.freq.m = ieee80211_channel_to_freq(ieee, network->channel); | ||
100 | iwe.u.freq.e = 6; | ||
101 | start = iwe_stream_add_event(start, stop, &iwe, IW_EV_FREQ_LEN); | ||
102 | |||
101 | /* Add encryption capability */ | 103 | /* Add encryption capability */ |
102 | iwe.cmd = SIOCGIWENCODE; | 104 | iwe.cmd = SIOCGIWENCODE; |
103 | if (network->capability & WLAN_CAPABILITY_PRIVACY) | 105 | if (network->capability & WLAN_CAPABILITY_PRIVACY) |