1 //------------------------------------------------------------------------------
2 // <copyright file="wlan_utils.c" company="Atheros">
3 // Copyright (c) 2004-2010 Atheros Corporation. All rights reserved.
6 // Permission to use, copy, modify, and/or distribute this software for any
7 // purpose with or without fee is hereby granted, provided that the above
8 // copyright notice and this permission notice appear in all copies.
10 // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 // WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 // MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 // ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 // WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
19 //------------------------------------------------------------------------------
20 //==============================================================================
21 // This module implements frequently used wlan utilies
23 // Author(s): ="Atheros"
24 //==============================================================================
31 * converts ieee channel number to frequency
33 u16
wlan_ieee2freq(int chan
)
38 if (chan
< 14) { /* 0-13 */
39 return (2407 + (chan
*5));
41 if (chan
< 27) { /* 15-26 */
42 return (2512 + ((chan
-15)*20));
44 return (5000 + (chan
*5));
48 * Converts MHz frequency to IEEE channel number.
50 u32
wlan_freq2ieee(u16 freq
)
55 return (freq
- 2407) / 5;
57 return 15 + ((freq
- 2512) / 20);
58 return (freq
- 5000) / 5;