#ifndef __REG_DOMAIN_H #define __REG_DOMAIN_H typedef enum { PW_LMT_REGU_NULL = 0, PW_LMT_REGU_FCC = 1, PW_LMT_REGU_ETSI = 2, PW_LMT_REGU_MKK = 3, PW_LMT_REGU_EXT = 4, }PW_LMT_REGULATION_TYPE; typedef enum { PW_LMT_RS_NULL =0, PW_LMT_RS_CCK =1, PW_LMT_RS_OFDM =2, PW_LMT_RS_HT =3, PW_LMT_RS_VHT =4, PW_LMT_RS_HE =5, }PW_LMT_RATESECTION_TYPE; typedef enum { PW_LMT_PH_NULL =0, PW_LMT_PH_1T =1, PW_LMT_PH_2T =2, PW_LMT_PH_3T =3, PW_LMT_PH_4T =4, }PW_LMT_RFPATH_TYPE; typedef enum { PW_LMT_BAND_NULL =0, PW_LMT_BAND_2_4G =1, PW_LMT_BAND_5G =2, }PW_LMT_BAND_TYPE; typedef enum _ODM_PW_LMT_BW_TYPE{ PW_LMT_BW_NULL =0, PW_LMT_BW_20M =1, PW_LMT_BW_40M =2, }PW_LMT_BW_TYPE; typedef enum { /* CHANNEL PLAN */ COUNTRY_WORLD1, // 0x20 COUNTRY_ETSI1, // 0x21 COUNTRY_FCC1, // 0x22 COUNTRY_MKK1, // 0x23 COUNTRY_ETSI2, // 0x24 COUNTRY_FCC2, // 0x2A COUNTRY_WORLD2, // 0x47 COUNTRY_MKK2, // 0x58 COUNTRY_GLOBAL, // 0x41 /* SPECIAL */ COUNTRY_WORLD, // WORLD1 COUNTRY_EU, // ETSI1 /* JAPANESE */ COUNTRY_JP, // MKK1 11 /* FCC , 19 countries*/ COUNTRY_AS, // FCC2 12 COUNTRY_BM, COUNTRY_CA, COUNTRY_DM, COUNTRY_DO, COUNTRY_FM, COUNTRY_GD, COUNTRY_GT, COUNTRY_GU, COUNTRY_HT, COUNTRY_MH, COUNTRY_MP, COUNTRY_NI, COUNTRY_PA, COUNTRY_PR, COUNTRY_PW, COUNTRY_TW, COUNTRY_US, COUNTRY_VI, /* others, ETSI */ COUNTRY_AD, // ETSI1 COUNTRY_AE, COUNTRY_AF, COUNTRY_AI, COUNTRY_AL, COUNTRY_AM, COUNTRY_AN, COUNTRY_AR, COUNTRY_AT, COUNTRY_AU, COUNTRY_AW, COUNTRY_AZ, COUNTRY_BA, COUNTRY_BB, COUNTRY_BD, COUNTRY_BE, COUNTRY_BF, COUNTRY_BG, COUNTRY_BH, COUNTRY_BL, COUNTRY_BN, COUNTRY_BO, COUNTRY_BR, COUNTRY_BS, COUNTRY_BT, COUNTRY_BY, COUNTRY_BZ, COUNTRY_CF, COUNTRY_CH, COUNTRY_CI, COUNTRY_CL, COUNTRY_CN, COUNTRY_CO, COUNTRY_CR, COUNTRY_CX, COUNTRY_CY, COUNTRY_CZ, COUNTRY_DE, COUNTRY_DK, COUNTRY_DZ, COUNTRY_EC, COUNTRY_EE, COUNTRY_EG, COUNTRY_ES, COUNTRY_ET, COUNTRY_FI, COUNTRY_FR, COUNTRY_GB, COUNTRY_GE, COUNTRY_GF, COUNTRY_GH, COUNTRY_GL, COUNTRY_GP, COUNTRY_GR, COUNTRY_GY, COUNTRY_HK, COUNTRY_HN, COUNTRY_HR, COUNTRY_HU, COUNTRY_ID, COUNTRY_IE, COUNTRY_IL, COUNTRY_IN, COUNTRY_IQ, COUNTRY_IR, COUNTRY_IS, COUNTRY_IT, COUNTRY_JM, COUNTRY_JO, COUNTRY_KE, COUNTRY_KH, COUNTRY_KN, COUNTRY_KP, COUNTRY_KR, COUNTRY_KW, COUNTRY_KY, COUNTRY_KZ, COUNTRY_LA, COUNTRY_LB, COUNTRY_LC, COUNTRY_LI, COUNTRY_LK, COUNTRY_LR, COUNTRY_LS, COUNTRY_LT, COUNTRY_LU, COUNTRY_LV, COUNTRY_MA, COUNTRY_MC, COUNTRY_MD, COUNTRY_ME, COUNTRY_MF, COUNTRY_MK, COUNTRY_MN, COUNTRY_MO, COUNTRY_MQ, COUNTRY_MR, COUNTRY_MT, COUNTRY_MU, COUNTRY_MV, COUNTRY_MW, COUNTRY_MX, COUNTRY_MY, COUNTRY_NG, COUNTRY_NL, COUNTRY_NO, COUNTRY_NP, COUNTRY_NZ, COUNTRY_OM, COUNTRY_PE, COUNTRY_PF, COUNTRY_PG, COUNTRY_PH, COUNTRY_PK, COUNTRY_PL, COUNTRY_PM, COUNTRY_PT, COUNTRY_PY, COUNTRY_QA, COUNTRY_RS, COUNTRY_RU, COUNTRY_RW, COUNTRY_SA, COUNTRY_SE, COUNTRY_SG, COUNTRY_SI, COUNTRY_SK, COUNTRY_SN, COUNTRY_SR, COUNTRY_SV, COUNTRY_SY, COUNTRY_TC, COUNTRY_TD, COUNTRY_TG, COUNTRY_TH, COUNTRY_TN, COUNTRY_TR, COUNTRY_TT, COUNTRY_TZ, COUNTRY_UA, COUNTRY_UG, COUNTRY_UY, COUNTRY_UZ, COUNTRY_VC, COUNTRY_VE, COUNTRY_VN, COUNTRY_VU, COUNTRY_WF, COUNTRY_WS, COUNTRY_YE, COUNTRY_YT, COUNTRY_ZA, COUNTRY_ZW, COUNTRY_MAX } country_code_t; typedef struct { char countrycode[3]; country_code_t country_code; PW_LMT_REGULATION_TYPE regulation; } Countryregulations; extern Countryregulations country_regulation_table[]; extern uint8_t txpwr_lmt_tbl[]; uint32 bk_get_txpwr_lmt_tbl_size(); uint32 bk_get_txpwr_lmt_tbl_entry_size(); uint32 bk_get_txpwr_lmt_tbl_entry_power(uint32 chan_idx,uint32 regulation); uint32 bk_get_country_regulation_table_size(); int pwr_tbl_set_chan_pwr(uint8_t channel, uint16_t pwr_11b,uint16_t pwr_11g, uint16_t pwr_ht20, uint16_t pwr_ht40); #endif // __REG_DOMAIN_H