12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- /******************************************************************************
- *
- * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of version 2 of the GNU General Public License as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
- *
- *
- ******************************************************************************/
- #define _RTW_RF_C_
- #include <drv_types.h>
- struct ch_freq {
- u32 channel;
- u32 frequency;
- };
- struct ch_freq ch_freq_map[] = {
- {1, 2412},{2, 2417},{3, 2422},{4, 2427},{5, 2432},
- {6, 2437},{7, 2442},{8, 2447},{9, 2452},{10, 2457},
- {11, 2462},{12, 2467},{13, 2472},{14, 2484},
- /* UNII */
- {36, 5180},{40, 5200},{44, 5220},{48, 5240},{52, 5260},
- {56, 5280},{60, 5300},{64, 5320},{149, 5745},{153, 5765},
- {157, 5785},{161, 5805},{165, 5825},{167, 5835},{169, 5845},
- {171, 5855},{173, 5865},
- /* HiperLAN2 */
- {100, 5500},{104, 5520},{108, 5540},{112, 5560},{116, 5580},
- {120, 5600},{124, 5620},{128, 5640},{132, 5660},{136, 5680},
- {140, 5700},
- /* Japan MMAC */
- {34, 5170},{38, 5190},{42, 5210},{46, 5230},
- /* Japan */
- {184, 4920},{188, 4940},{192, 4960},{196, 4980},
- {208, 5040},/* Japan, means J08 */
- {212, 5060},/* Japan, means J12 */
- {216, 5080},/* Japan, means J16 */
- };
- int ch_freq_map_num = (sizeof(ch_freq_map) / sizeof(struct ch_freq));
- u32 rtw_ch2freq(u32 channel)
- {
- u8 i;
- u32 freq = 0;
- for (i = 0; i < ch_freq_map_num; i++)
- {
- if (channel == ch_freq_map[i].channel)
- {
- freq = ch_freq_map[i].frequency;
- break;
- }
- }
- if (i == ch_freq_map_num)
- freq = 2412;
- return freq;
- }
- u32 rtw_freq2ch(u32 freq)
- {
- u8 i;
- u32 ch = 0;
- for (i = 0; i < ch_freq_map_num; i++)
- {
- if (freq == ch_freq_map[i].frequency)
- {
- ch = ch_freq_map[i].channel;
- break;
- }
- }
- if (i == ch_freq_map_num)
- ch = 1;
- return ch;
- }
|