133 lines
3.2 KiB
C
133 lines
3.2 KiB
C
/******************************************************************************
|
|
*
|
|
* Copyright(c) 2020 Realtek Corporation.
|
|
*
|
|
* 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.
|
|
*
|
|
*****************************************************************************/
|
|
#ifndef _PHL_CHNLPLAN_H_
|
|
#define _PHL_CHNLPLAN_H_
|
|
|
|
#define REGULATION_CHPLAN_VERSION 58
|
|
|
|
enum REGULATION {
|
|
REGULATION_WW = 0,
|
|
REGULATION_ETSI = 1,
|
|
REGULATION_FCC = 2,
|
|
REGULATION_MKK = 3,
|
|
REGULATION_KCC = 4,
|
|
REGULATION_NCC = 5,
|
|
REGULATION_ACMA = 6,
|
|
REGULATION_NA = 7,
|
|
REGULATION_IC = 8,
|
|
REGULATION_CHILE = 9,
|
|
REGULATION_MEX = 10,
|
|
REGULATION_MAX = 11,
|
|
};
|
|
|
|
struct chdef_2ghz {
|
|
/* ch_def index */
|
|
u8 idx;
|
|
|
|
/* support channel list
|
|
* support_ch[0]: bit(0~7) stands for ch(1~8)
|
|
* support_ch[1]: bit(0~5) stands for ch (9~14)
|
|
*/
|
|
u8 support_ch[2];
|
|
|
|
/* passive ch list
|
|
* passive[0]: bit(0~7) stands for ch(1~8)
|
|
* passive[1]: bit(0~5) stands for ch (9~14)
|
|
*/
|
|
u8 passive[2];
|
|
};
|
|
|
|
struct chdef_5ghz {
|
|
/* ch_def index */
|
|
u8 idx;
|
|
|
|
/*
|
|
* band1 support channel list, passive and dfs
|
|
* bit0 stands for ch36
|
|
* bit1 stands for ch40
|
|
* bit2 stands for ch44
|
|
* bit3 stands for ch48
|
|
*/
|
|
u8 support_ch_b1;
|
|
u8 passive_b1;
|
|
u8 dfs_b1;
|
|
|
|
/*
|
|
* band2 support channel list, passive and dfs
|
|
* bit0 stands for ch52
|
|
* bit1 stands for ch56
|
|
* bit2 stands for ch60
|
|
* bit3 stands for ch64
|
|
*/
|
|
u8 support_ch_b2;
|
|
u8 passive_b2;
|
|
u8 dfs_b2;
|
|
|
|
/*
|
|
* band3 support channel list, passive and dfs
|
|
* byte[0]:
|
|
* bit0 stands for ch100
|
|
* bit1 stands for ch104
|
|
* bit2 stands for ch108
|
|
* bit3 stands for ch112
|
|
* bit4 stands for ch116
|
|
* bit5 stands for ch120
|
|
* bit6 stands for ch124
|
|
* bit7 stands for ch128
|
|
* byte[1]:
|
|
* bit0 stands for ch132
|
|
* bit1 stands for ch136
|
|
* bit2 stands for ch140
|
|
* bit3 stands for ch144
|
|
*/
|
|
u8 support_ch_b3[2];
|
|
u8 passive_b3[2];
|
|
u8 dfs_b3[2];
|
|
|
|
/*
|
|
* band4 support channel list, passive and dfs
|
|
* bit0 stands for ch149
|
|
* bit1 stands for ch153
|
|
* bit2 stands for ch157
|
|
* bit3 stands for ch161
|
|
* bit4 stands for ch165
|
|
* bit5 stands for ch169
|
|
* bit6 stands for ch173
|
|
* bit7 stands for ch177
|
|
*/
|
|
u8 support_ch_b4;
|
|
u8 passive_b4;
|
|
u8 dfs_b4;
|
|
};
|
|
|
|
struct freq_plan {
|
|
u8 regulation;
|
|
u8 ch_idx;
|
|
};
|
|
|
|
struct regulatory_domain_mapping {
|
|
u8 domain_code;
|
|
struct freq_plan freq_2g;
|
|
struct freq_plan freq_5g;
|
|
};
|
|
|
|
#define MAX_CHDEF_2GHZ 7
|
|
#define MAX_CHDEF_5GHZ 54
|
|
#define MAX_RD_MAP_NUM 108
|
|
|
|
|
|
|
|
#endif /* _PHL_CHNLPLAN_H_ */
|