/**************************************************************************** Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED. This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT be copied by any method or incorporated into another program without the express written consent of Aerospace C.Power. This Information or any portion thereof remains the property of Aerospace C.Power. The Information contained herein is believed to be accurate and Aerospace C.Power assumes no responsibility or liability for its use in any way and conveys no license or title under any patent or copyright and makes no representation or warranty that this Information is free from patent or copyright infringement. ***************************************************************************/ #include "iot_config.h" #include "plc_rf_scan_tbl.h" #include "plc_beacon.h" #include "phy_rf_chn.h" #if (HPLC_RF_SUPPORT) /* rf scan table recommended by State Grid protocol, 40 channels in total */ const mac_rf_scan_op_chn_t rf_scan_tbl_nsg[RF_SCAN_TBL_NSG_CNT] = { /* option channel_id dwell time ms */ {PHY_RF_BAND_NSG_OPTION_DFT, PHY_RF_BAND_NSG_CH_DFT, MAC_RF_SCAN_FIRST_DWELL_TIME, MAC_RF_SCAN_FIRST_DWELL_TIME}, {PHY_RF_OPTION2_500K, 8, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 24, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 32, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 36, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 40, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 44, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 48, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 56, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 64, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 41, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 61, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 81, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 91, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 97, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 101, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 107, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 121, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 141, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 161, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 4, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 20, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 28, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 38, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 42, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 46, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 50, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 52, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 54, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 69, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 30, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 50, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 70, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 86, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 112, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 117, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 128, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 135, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 147, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION3_200K, 180, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, }; /* supplement of State Grid rf scan table, 59 channels in total */ const mac_rf_scan_op_chn_t rf_scan_tbl_nsg_ext[RF_SCAN_TBL_NSG_EXT_CNT] = { /* option channel_id dwell time ms */ {PHY_RF_OPTION2_500K, 1, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 2, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 3, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 5, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 6, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 7, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 9, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 10, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 11, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 12, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 13, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 14, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 15, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 17, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 18, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 19, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 21, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 22, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 23, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 25, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 26, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 27, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 29, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 30, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 31, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 33, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 34, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 35, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 37, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 39, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 41, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 43, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 45, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 47, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 49, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 51, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 53, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 55, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 57, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 58, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 59, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 60, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 61, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 62, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 63, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 65, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 66, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 67, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 68, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 70, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 71, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 72, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 73, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 74, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 75, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 76, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 77, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 78, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 79, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, }; /* overseas recommended rf scan table, 16 channels in total */ const mac_rf_scan_op_chn_t rf_scan_tbl_overseas[RF_SCAN_TBL_OVERSEAS_CNT] = { /* option channel_id dwell time ms */ {PHY_RF_BAND_OVERSEAS_OPTION_DFT, PHY_RF_BAND_OVERSEAS_CH_DFT, MAC_RF_SCAN_FIRST_DWELL_TIME, MAC_RF_SCAN_FIRST_DWELL_TIME}, {PHY_RF_OPTION2_500K, 3, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 7, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 11, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 15, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 19, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 27, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 31, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 35, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 39, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 43, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 55, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 59, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 63, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 67, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 75, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, }; /* overseas extended rf scan table, 60 channels in total */ const mac_rf_scan_op_chn_t rf_scan_tbl_overseas_ext[RF_SCAN_TBL_OVERSEAS_EXT_CNT] = { /* option channel_id dwell time ms */ {PHY_RF_OPTION2_500K, 1, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 2, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 4, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 5, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 6, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 8, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 9, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 10, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 12, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 13, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 14, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 16, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 17, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 18, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 20, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 21, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 22, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 23, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 24, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 25, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 26, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 28, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 29, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 30, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 32, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 33, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 34, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 36, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 37, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 38, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 40, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 41, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 42, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 44, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 45, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 46, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 47, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 48, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 49, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 50, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 52, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 53, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 54, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 56, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 57, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 58, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 60, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 61, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 62, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 64, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 65, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 66, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 68, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 69, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 70, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 71, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 72, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 73, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 74, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, {PHY_RF_OPTION2_500K, 76, MAC_RF_SCAN_MIN_TIME, MAC_RF_SCAN_DWELL_TIME}, }; uint8_t plc_get_rf_recommend_tbl(const mac_rf_scan_op_chn_t **rf_tbl) { uint8_t rf_cnt; if (phy_rf_get_band_sel() == PHY_RF_BAND_OVERSEAS) { rf_cnt = RF_SCAN_TBL_OVERSEAS_CNT; *rf_tbl = rf_scan_tbl_overseas; } else { rf_cnt = RF_SCAN_TBL_NSG_CNT; *rf_tbl = rf_scan_tbl_nsg; } return rf_cnt; } uint8_t plc_get_rf_ext_tbl(const mac_rf_scan_op_chn_t **rf_tbl) { uint8_t rf_cnt; if (phy_rf_get_band_sel() == PHY_RF_BAND_OVERSEAS) { rf_cnt = RF_SCAN_TBL_OVERSEAS_EXT_CNT; *rf_tbl = rf_scan_tbl_overseas_ext; } else { rf_cnt = RF_SCAN_TBL_NSG_EXT_CNT; *rf_tbl = rf_scan_tbl_nsg_ext; } return rf_cnt; } #endif /* HPLC_RF_SUPPORT */