diff options
| -rw-r--r-- | include/net/ieee80211.h | 2 | ||||
| -rw-r--r-- | net/ieee80211/ieee80211_geo.c | 16 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/net/ieee80211.h b/include/net/ieee80211.h index d56b2923d61a..bbd85cd61ed5 100644 --- a/include/net/ieee80211.h +++ b/include/net/ieee80211.h | |||
| @@ -1291,6 +1291,8 @@ extern u8 ieee80211_get_channel_flags(struct ieee80211_device *ieee, | |||
| 1291 | extern const struct ieee80211_channel *ieee80211_get_channel(struct | 1291 | extern const struct ieee80211_channel *ieee80211_get_channel(struct |
| 1292 | ieee80211_device | 1292 | ieee80211_device |
| 1293 | *ieee, u8 channel); | 1293 | *ieee, u8 channel); |
| 1294 | extern u32 ieee80211_channel_to_freq(struct ieee80211_device * ieee, | ||
| 1295 | u8 channel); | ||
| 1294 | 1296 | ||
| 1295 | /* ieee80211_wx.c */ | 1297 | /* ieee80211_wx.c */ |
| 1296 | extern int ieee80211_wx_get_scan(struct ieee80211_device *ieee, | 1298 | extern int ieee80211_wx_get_scan(struct ieee80211_device *ieee, |
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); |
