1.单软多硬
即,一个版本的modem配置多个频段的3G/2G。通过检测特定GPIO的电平状态,形成排序,从而选择多个频段信号。
开关:
moly/custom/modem/ul1_rf/CUSTOM_MT6580RF_UMTS_FDD$ vim ul1d_custom_rf.h
#define RF_SETTING_BY_NVRAM KAL_FALSE
备注:KAL_FALSE 单软多硬才能正常工作
决 定 RF 硬 件 设 置 :
moly/custom/modem/ul1_rf/CUSTOM_MT6580RF_UMTS_FDD$ vim wcustomdata.c
UMTSBand
ul1CustomBand[UL1CUSTOM_TOTAL_SET_NUMS][UL1CUSTOM_MAX_RF_SUPPORT_BAND_NUM] =
{
/* The first set, Set 0 */
{
UMTSBand1, // Sub-index 0 in a set
UMTSBand8, // Sub-index 1 in a set
UMTSBandNone, // Sub-index 2 in a set
UMTSBandNone, // Sub-index 3 in a set
UMTSBandNone // Sub-index 4 in a set
},/* The Second set, Set 1
{
UMTSBand1, // Sub-index 0 in a set
UMTSBand2, // Sub-index 1 in a set
UMTSBandNone, // Sub-index 2 in a set
UMTSBandNone, // Sub-index 3 in a set
UMTSBandNone // Sub-index 4 in a set
}, End of Second Set */
};
GPIO 检测脚配置:
三个检测脚、这个配置闲空就行了、高低电平是有硬件决定的。
判断逻辑:
moly/custom/modem/ul1_rf/CUSTOM_MT6580RF_UMTS_FDD$ vim wcustomdata.h
#define UL1CUSTOM_GPIO_ENABLE (1) // 设 UL1CUSTOM_GPIO_ENABLE 为 1,1=使能,0=不使能
#define UL1CUSTOM_GPIO_NUM_OF_DETECT_PINS_IN_USE (3) //使用几根 gpio 管脚检测,目前是三根,
#define UL1CUSTOM_FIRST_INDEX (UL1CUSTOM_GPIO_DETECTION_ID)
#define UL1CUSTOM_GPIO_SET_NUMS (2) //定于 GPIO 检测可辨别的数组数目