staging: ath6kl: Convert A_UINT32 to u32
[linux-2.6/kvm.git] / drivers / staging / ath6kl / wlan / src / wlan_utils.c
blobfd05e39f41185370c5dab7acca191d9f06208f84
1 //------------------------------------------------------------------------------
2 // <copyright file="wlan_utils.c" company="Atheros">
3 // Copyright (c) 2004-2010 Atheros Corporation. All rights reserved.
4 //
5 //
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.
9 //
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 //==============================================================================
25 #include <a_config.h>
26 #include <athdefs.h>
27 #include <a_types.h>
28 #include <a_osapi.h>
31 * converts ieee channel number to frequency
33 u16 wlan_ieee2freq(int chan)
35 if (chan == 14) {
36 return 2484;
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)
52 if (freq == 2484)
53 return 14;
54 if (freq < 2484)
55 return (freq - 2407) / 5;
56 if (freq < 5000)
57 return 15 + ((freq - 2512) / 20);
58 return (freq - 5000) / 5;