networkIssue

SFR:
1、Software #5892
【客户反馈】[SFR][ONEIDA][Bearer 4G] Info Trans Flag is set to 1 in PDN Connectivity Request
Description
ESM info trans flag should be set to 0.
Steps to reproduce :

  • Switch on the UE. UE performs a cell search procedure.
  • Check the UE initiates an Attach procedure with “Combined EPS/IMSI Attach” cause on LTE side.
  • Check that info_trans_flag in PDN connectivity request is set to 0
    [FAQ14633]
    将ESM information transfert flag置为0,即NW会assign相应的PCO与APN给UE,无需参考UE自身设定好的APN与PCO。
    [SOLUTION]
    要将ESM information transfer flag设置为0,只需要向modem下apn=""的Initial Apn即可,可以按照如下方式实现
    在alps/mediatek/frameworks/base/telephony/etc/apns-conf.xml文件中加上如下这样的APN(mnc,mcc需要填写对应运营商的)。
 <apn carrier="XX IA"
       mcc="XXX"
       mnc="XX"
       apn=""
       type="ia"
 >

当手机在启动时或者apn Change的时候,会去下Initial Apn,系统会优先使用apn type="ia"的apn置为initial apn
注:ia类型的apn并不会在apnSettings界面显示

2、客户之前的需求是:VoLTE,VoWIFI,3G高清通话,都要在通话界面显示HD图标。,现在的客户需求:对方是2G状态,通话编码为 NB AMR,不应显示HD图标。
现在的HD 图标的显示跟网络状态没有关系, 而是根据audio那边拿到的语音编码方式来决定,语音编码方式还是:AMR-WB 和 EVRC-WB 显示HD 图标

3、在拨打volte未显示HD图标
12-09 15:08:59.847673 4245 4245 D Dialer : CallList.onUpdateCall - [DialerCall_0, ACTIVE, [Capabilities: sup_hld mut m_rcrd], [Properties: HD m_volte], children:[], parent:null, conferenceable:[], videoState:Audio Only, mSessionModificationState:0, CameraDir:-1]
Properties 有HD的属性
HD icon的显示本身不依赖于是否是volte call,是根据他Details.PROPERTY_HIGH_DEF_AUDIO 这个属性判断的。
这个属性是底层根据音频数据计算出来的。可能volte call没有此属性,也可能不是volte call有此属性。
如果你想修改成volte call就显示,可以做如下修改。

/packages/apps/Dialer/java/com/android/incallui/CallCardPresenter.java
private void updatePrimaryCallState() {
        boolean isHdAudioCall =
            isPrimaryCallActive() && mPrimary.hasProperty(Details.PROPERTY_HIGH_DEF_AUDIO);

=> 修改成

boolean isHdAudioCall =
isPrimaryCallActive() && mPrimary.hasProperty(mediatek.telecom.MtkCall.MtkDetails.MTK_PROPERTY_VOLTE);

  1. wofi的property是:
    android.telecom.Call.Details.PROPERTY_WIFI
    2.ContactGridManager.java类和CallCardPresenter.java之间是怎么联系的让HD图标显示的?
    ContactGridManager中
private void updateBottomRow() {
317      BottomRow.Info info = BottomRow.getInfo(context, primaryCallState, primaryInfo);

这个info是从primaryCallState中获取的,可以看BottomRow中boolean isHdIconVisible = state.isHdAudioCall && !isForwardIconVisible;

primaryCallState 是在call有state change的时候从CallCardPresenter的updatePrimaryCallState调用 getUi().setCallState,
就会调用到InCallFragment的setCallState,进而调用到contactGridManager.setCallState

2871:
3、IMSI与MSISDN的区别
IMSI是SIM卡的ID,MSISDN是用户的ID。意思就是,当用户去营业厅换SIM卡的时候,IMSI就变了,而MSISDN不变。

4、EVS是一项专门为VoLTE(Voice over LTE,基于IMS的语音业务)设计的技术。这种技术可实现全高清音质通话,使电话声音保真度达到与当今其他数字媒体服务一样的水平。
EVS是volte call的codec, 2/3G不支持,目前mtk支持EVS 是从91平台的MP 3后默认支持,您给的这个应该是93平台,默认支持. 可以在工程模式中打开。

#ifdef __EVS_SUPPORT__            
            nvram_ims_profile_ptr->ua_config.evs_support                    = 1;
            nvram_ims_profile_ptr->ua_config.UA_call_codec_order1           = 17; //EVS 
            nvram_ims_profile_ptr->ua_config.UA_call_codec_order2           = 2;
            nvram_ims_profile_ptr->ua_config.UA_call_codec_order3           = 1;
#endif

默认值:
UA_call_codec_order1: 2
UA_call_codec_order2: 1
UA_call_codec_order3: 0
(参数值:1 - NB、 2 - WB、 0 表示none 无意义的值)
(优先级UA_call_codec_order1 > UA_call_codec_order2 > UA_call_codec_order3)
EVS两个相关参数:
①.##3646633##—>telephony—>IMS—>call—>evs_support -->开关evs
②.##3646633##—>telephony—>IMS—>call—>evs_mode_switch -->設成0會使用primary mode, 設成1會使用AMRWB IO mode
EE:
5、Calls Barring issues
进入Call barring就会出现错误
从ap log 来看,是有跟网络进行数据交互的

1-20 10:30:21.939119   671   803 D Simservs: setCacheResponseInfo: responseInfo=mResponseCode=200, mResponseMsg=, mUrc info=
11-20 10:30:21.939222   671   803 D CallBarringService: handleGetCB: ocbRuleSet=0xa9ad2000, icbRuleSet=0xa9ad22c0, GET BAOC, action=Query, serviceClass=None, number=, time*****ds=-1, timeSlot=
11-20 10:30:21.939309   671   803 D CFCBServiceBase: getInfoList() GET BAOC, action=Query, serviceClass=None, number=, time*****ds=-1, timeSlot=
11-20 10:30:21.939394   671   803 D CFCBServiceBase: getInfo() ruleList=0xa9a94740, GET BAOC, action=Query, serviceClass=VOICE , number=, time*****ds=-1, timeSlot=
11-20 10:30:21.939456   671   803 D UtConfig: getOpBool: 23430, IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=false
11-20 10:30:21.939555   671   803 I UtConfig: get: IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=false
11-20 10:30:21.939622   671   803 D CFCBServiceBase: getInfo() ruleList=0xa9a94740, GET BAOC, action=Query, serviceClass=VIDEO , number=, time*****ds=-1, timeSlot=
11-20 10:30:21.939706   671   803 D UtConfig: getOpBool: 23430, IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=false
11-20 10:30:21.939755   671   803 I UtConfig: get: IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=false
11-20 10:30:21.939801   671   803 D UtConfig: getOpBool: 23430, IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=false
11-20 10:30:21.939826   671   803 I UtConfig: get: IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=false
11-20 10:30:21.939858   671   803 D ServiceController: processsRequest: r=mResponseCode=844, mResponseMsg=, mUrc info=

从上面的log 可以看到,server 回了response 200,但是匹配不到手机端query 的rule,所以返回 844。
keywords:responseInfo,mResponseCode,IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE,mResponseCode
修改方案:IDX_BOOL_SUPPORT_ADDING_UNPROVISIONED_RULE=true在CustomUtConfig.cpp (apps\module\utinterface\custom\src)这个文件,此文件是在modem端的app文件夹中,app需要单独编译,编译命令是./build.sh clean,build,pack all GEN93_USER

volte mtklog call barring international SIM 1
可以查询一下radio_log_2__2019_1204_101953

12-04 10:18:53.052436   690   792 D XmlUtil : getAttribute: node=constraint-failure, attr=phrase, value=Failed to meet an application constraint: Message: "Element not found on Operator side". Service: "outgoing-communication-barring". Condition: "international"
12-04 10:18:53.052661   690   792 D XcapNodeElement: saveContent: response: 409, Failed to meet an application constraint: Message: "Element not found on Operator side". Service: "outgoing-communication-barring". Condition: "international"

keywords:outgoing-communication-barring,international

修改方案:贵司需要咨询运营商,看下当前的网络支持怎样的方式,可能是手机端的请求方式有问题导致server 返回 409,但是手机端目前也不知道应该怎么修改,需要咨询运营商或者能够提供正确设置的log 来进行推测

6、connect to VoWiFi so long time

1)检查是否有配置支持VoLTE、ViLTE和VoWifi (config volte, ViLTE and VoWifi for operator)
2)
(1) device/mediatek/common/overlay/telephony/frameworks/base/core/res/res/values-mcc234-mnc30/config.xml
在这个文件下配置说明平台是否支持运营商的vowifi和volte
keywords:在AP main log中搜索"ImsConfigManager",可以看到23430这家operator的支持VoLTE和VoWifi(WFC is VoWifi),不支持ViLTE (search “ImsConfigManager” in AP main log, as below log, 23430 config as config_device_volte_available on, config_device_vt_available off, config_device_wfc_ims_available on.)

./APLog_2019_1120_143732__3/main_log.boot:11-20 14:37:17.671884  1026  1026 D ImsConfigManager: DYNAMIC_IMS_SWITCH_TRIGGER phoneId:0, simState:LOADED
./APLog_2019_1120_143732__3/main_log.boot:11-20 14:37:17.672196  1026  1026 D ImsConfigManager: get MtkImsConfigImpl of phone 0
./APLog_2019_1120_143732__3/main_log.boot:11-20 14:37:17.872550  1026  1026 D ImsConfigManager: SIM loaded on phone 0 with mcc: 234 mnc: 30
./APLog_2019_1120_143732__3/main_log.boot:11-20 14:37:17.896291  1026  1026 D ImsConfigManager: check iccid:8944303292056431745
./APLog_2019_1120_143732__3/main_log.boot:11-20 14:37:17.980455  1026  1026 D ImsConfigManager: Set res capability: volte = 1, vilte = 0, wfc = 1
./APLog_2019_1120_143732__3/main_log.boot:11-20 14:37:18.156606  1026  1026 D ImsConfigManager: DYNAMIC_IMS_SWITCH_COMPLETE phoneId:0, simState:LOADED

以上log只有在开机或是热插拔卡等SIM卡信息都读上来之后才会打印。(these log only print when receive SIM state change with SIM loaded state.)
PS: VoWifi = WFC
(2)/vendor/mediatek/proprietary/packages/apps/CarrierConfig/assets/carrier_config_40492.xml
这个是指该运营商是否可用vowifi和volte,如果贵司版本有使用MtkCarrierConfigManager.java,就可以忽略这部分available config key的配置
keywords:在AP radio log中搜索"isCarrierConfigSupport",可以看到carrier_xxx_available_bool的支持状态 (search “ImsConfigManager” in AP radio log, it will indicate VoLTE, ViLTE(vt) and VoWifi(wfc) config status)

   //VoLTE config as true
      06-05 16:03:34.868076 1780 1920 D MtkImsManager: Volte, isResourceSupport:true, isCarrierConfigSupport:true, isGbaValidSupport:true, isFeatureEnableByPlatformExt:true
      //ViLTE config as true
      06-05 16:03:34.892714 1806 1806 D MtkImsManager: Vt, isResourceSupport:true, isCarrierConfigSupport:true, isGbaValidSupport:true, isFeatureEnableByPlatformExt:true
      //VoWifi config as false
      06-05 16:03:34.896064 1780 1920 D MtkImsManager: Wfc, isResourceSupport:false, isCarrierConfigSupport:false, isGbaValidSupport:true, isFeatureEnableByPlatformExt:true
  1. 确认开关状态
    如果config配置正确,仍然没有注册,还需要确认对应设置里面的开关有没有打开。(user load需要打开telephony log 才能看到相关的log)
    11:可以在carrier_config配置中查看开关状态
    22:log中查看:
    keywords:isResourceSupport
    在radio_log.boot和radio_log_2__2019_1120_144406中都可以搜到:
./APLog_2019_1120_143732__3/radio_log.boot:01-03 00:00:27.022890  1026  1195 D MtkImsManager: Wfc, isResourceSupport:true, isCarrierConfigSupport:true, isGbaValidSupport:true, isFeatureEnableByPlatformExt:true
./APLog_2019_1120_143732__3/radio_log_2__2019_1120_144406:11-20 14:38:06.058563  2044  2044 D MtkImsManager: Wfc, isResourceSupport:true, isCarrierConfigSupport:true, isGbaValidSupport:true, isFeatureEnableByPlatformExt:true

Wfc, isResourceSupport:true 代表config_device_wfc_ims_available已经配置为true

keywords:updateWfcFeatureAndProvisionedValues updateVolteFeatureValue
在radio_log.boot和radio_log_2__2019_1120_144406中都可以搜到

 ./APLog_2019_1120_143732__3/radio_log_2__2019_1120_144406:11-20 14:37:32.157433  1033  1033 D MtkImsManager: updateWfcFeatureAndProvisionedValues: available = true, enabled = true, mode = 2, roaming = false
./APLog_2019_1120_143732__3/radio_log.boot:01-03 00:00:27.033912  1026  1195 D MtkImsManager: updateWfcFeatureAndProvisionedValues: available = true, enabled = true, mode = 2, roaming = false

enabled = true代表WFC开关是打开的。如果要注册VoWifi,available + enabled都应该是true。
4)如何查看AP设置是否为调制解调器启用了ims?
对于93平台,在MTK radio log中搜索"AT+EIMSCFG", 这个AT后面跟着6个value值volteEnable, vilteEnable, vowifiEnable, viwifiEnable, smsEnable, imsEnable
such as

06-01 06:18:43.997299 943 1000 I AT : [0] AT> AT+EIMSCFG=1,0,1,0,1,1 (RIL_CMD_READER_3, tid:512083367152)indicate:volte on, vilte off, vowifi on, viwifi off, sms on, ims enabled
Details:AT+EIMSCFG=1(volte on),0(vilte off),1(vowifi on),0(viwifi off),1(sms on),1(ims enabled)

一系列的检查完毕后,剩下的就是网络问题。
Lte to Wifi
keywords:EPDNHANDOVER(radio_log/main_log) retry_tmr_value (如何可以打开MD log)
fail:

Type	Index	Time	Local Time	Module	Message	Comment	Time Differences
SYS	6933	55421975	12:36:20:645	NIL	[AT_RX p36,ch4]AT+EWIFIEN="wlan0",1,0		
SYS	8404	55450189	12:36:22:293	NIL	[AT_RX p36,ch4]AT+EWIFIASC="wlan0",1,"4f6e65696461","d2:4e:50:6f:44:ef"		
SYS	8859	55450435	12:36:22:293	NIL	[AT_RX p36,ch4]AT+EWIFIADDR="wlan0","192.168.43.249",""		
PS	9255	55450663	12:36:22:293	IWLAN - D2RM	MSG_ID_D2RM_IWLAN_WANS_RPL_UPDATE_IND		
PS	9283	55450669	12:36:22:293	D2RM	[d2rm_rpl_update_ind:3127][INFO]PDN cid<1>policy<2> is not on 1stRPL_POLICY_RAN<2> check if H.O		
PS	9313	55450674	12:36:22:293	D2RM - WO	MSG_ID_D2RM_WO_ACT_DATA_CALL_REQ		
SYS	9490	55450817	12:36:22:293	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2		
PS	22387	55553059	12:36:29:028	WO - D2RM	MSG_ID_D2RM_WO_ACT_DATA_CALL_CNF		
PS	22401	55553062	12:36:29:028	D2RM	[d2rm_pdn_hol2w_wifi_cnf:1092][INFO] store retry_tmr_value = 10000		
SYS	22632	55553256	12:36:29:028	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, -1, 1, 2		
PS	28770	55717768	12:36:39:575	IWLAN - D2RM	MSG_ID_D2RM_IWLAN_WANS_RPL_UPDATE_IND		
PS	28772	55717769	12:36:39:575	D2RM	[d2rm_rpl_update_ind:3127][INFO]PDN cid<1>policy<2> is not on 1stRPL_POLICY_RAN<2> check if H.O		
PS	28799	55717773	12:36:39:575	D2RM - WO	MSG_ID_D2RM_WO_ACT_DATA_CALL_REQ		
SYS	29186	55717970	12:36:39:575	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2		
PS	33862	55813870	12:36:45:720	WO	[split_cmds:789]cmd:[+wohol:0,"ims",1,1082,24,30](27)		
PS	33864	55813870	12:36:45:720	WO - D2RM	MSG_ID_D2RM_WO_ACT_DATA_CALL_CNF		
PS	33878	55813873	12:36:45:720	D2RM	[d2rm_pdn_hol2w_wifi_cnf:1092][INFO] store retry_tmr_value = 30000		
SYS	34109	55814113	12:36:45:720	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, -1, 1, 2		
PS	52208	56287725	12:37:16:053	IWLAN - D2RM	MSG_ID_D2RM_IWLAN_WANS_RPL_UPDATE_IND		
PS	52211	56287725	12:37:16:053	D2RM	[d2rm_rpl_update_ind:3127][INFO]PDN cid<1>policy<2> is not on 1stRPL_POLICY_RAN<2> check if H.O		
PS	52238	56287730	12:37:16:053	D2RM - WO	MSG_ID_D2RM_WO_ACT_DATA_CALL_REQ		
SYS	52478	56287902	12:37:16:053	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2		
PS	59641	56372211	12:37:21:457	WO	[split_cmds:789]cmd:[+wohol:0,"ims",1,1082,24,60](27)		
PS	59643	56372211	12:37:21:457	WO - D2RM	MSG_ID_D2RM_WO_ACT_DATA_CALL_CNF		
PS	59657	56372214	12:37:21:457	D2RM	[d2rm_pdn_hol2w_wifi_cnf:1092][INFO] store retry_tmr_value = 60000		
SYS	59888	56372386	12:37:21:457	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, -1, 1, 2		
SYS	100972	57318349	12:38:22:006	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2		
PS	105304	57402658	12:38:27:403	D2RM	[d2rm_pdn_hol2w_wifi_cnf:1092][INFO] store retry_tmr_value = 120000		
SYS	105537	57402834	12:38:27:403	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, -1, 1, 2		
SYS	196550	59278402	12:40:27:449	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2		
PS	200130	59357761	12:40:32:532	D2RM	[d2rm_pdn_hol2w_wifi_cnf:1092][INFO] store retry_tmr_value = 300000		
SYS	200361	59357987	12:40:32:532	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, -1, 1, 2	失败	
SYS	401703	64047891	12:45:32:693	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2		
PS	405412	64132685	12:45:38:124	D2RM	[d2rm_pdn_hol2w_wifi_cnf:1092][INFO] store retry_tmr_value = 300000		
SYS	405641	64132881	12:45:38:124	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, -1, 1, 2	失败	
SYS	575746	68828410	12:50:38:649	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 0, 1, 2	 	
SYS	578765	68888247	12:50:42:428	NIL	[AT_URC p33,ch1]+EPDNHANDOVER: 0, 1, 1, 2  成功

main_log:

12-04 12:36:23.004042   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:36:29.556595   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, -1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)
main_log_1__2019_1204_125232:12-04 12:36:40.098882   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:36:46.251444   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, -1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)
main_log_1__2019_1204_125232:12-04 12:37:16.574894   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:37:21.980869   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, -1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)
main_log_1__2019_1204_125232:12-04 12:38:22.528674   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:38:27.929557   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, -1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)
main_log_1__2019_1204_125232:12-04 12:40:27.971290   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:40:33.059399   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, -1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)
main_log_1__2019_1204_125232:12-04 12:45:33.216631   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:45:38.652682   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, -1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)
main_log_1__2019_1204_125232:12-04 12:50:39.171730   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 0, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5606)
main_log_1__2019_1204_125232:12-04 12:50:42.997135   577   590 D VoLTE IMSM: send +EPDNHANDOVER: 0, 1, 1, 2 (module/mdagent/volte_imsm_93/src/imsm_handler.c:5620)

main_log:

57  2263 I /vendor/bin/charon: 06[ENC] <pdn_0_9|9> [generate_message() 1737] generating IKE_AUTH request 1 [ IDi N(INIT_CONTACT) CERTREQ IDr CPRQ(ADDR6 DNS6 PCSCF6) SA TSi TSr N(EAP_ONLY) ]
./mtklog vowifi connexion less than 1min SIM 2/mobilelog/APLog_2019_1204_124012__1/main_log_1__2019_1204_124150:12-04 12:41:26.891415  2257  2266 I /vendor/bin/charon: 09[ENC] <pdn_0_9|9> [parse_body() 2654] parsed IKE_AUTH response 1 [ IDr EAP/REQ/AKA ]
MD log:
12-04 12:40:35.245574  2257  2267 I /vendor/bin/charon: 10[ENC] <pdn_0_1|1> [generate_message() 1737] generating IKE_AUTH request 2 [ EAP/RES/AKA ]
12-04 12:40:36.608807  2257  2268 I /vendor/bin/charon: 11[ENC] <pdn_0_1|1> [parse_body() 2654] parsed IKE_AUTH response 2 [ EAP/FAIL N(AUTH_FAILED) ]
12-04 12:40:36.609910  2257  2268 I /vendor/bin/charon: 11[IKE] <pdn_0_1|1> [parse_message() 1515] receive error notify: AUTHENTICATION_FAILED
12-04 12:40:36.610859  2257  2268 I /vendor/bin/charon: 11[IKE] <pdn_0_1|1> [process_i() 1100] received AUTHENTICATION_FAILED notify error
....
....
12-04 12:41:26.971961  2257  2266 I /vendor/bin/charon: 09[ENC] <pdn_0_9|9> [generate_message() 1737] generating IKE_AUTH request 2 [ EAP/RES/AKA ]
12-04 12:41:28.980470  2257  2268 I /vendor/bin/charon: 11[IKE] <pdn_0_9|9> [retransmit()  520] retransmit 1 of request with message ID 2
12-04 12:41:29.348572  2257  2270 I /vendor/bin/charon: 13[ENC] <pdn_0_9|9> [parse_body() 2654] parsed IKE_AUTH response 2 [ EAP/SUCC ]
12-04 12:41:29.349839  2257  2270 I /vendor/bin/charon: 13[IKE] <pdn_0_9|9> [process_client()  643] EAP method EAP_AKA succeeded, MSK established

Handover只支持WiFi to LTE和LTE to WiFi的两种情况。
解决方案:从log来看handover都有失败,只是pass的那台retry几次后网络就鉴权成功了,但是fail那台由于retry timer会慢慢变长,第七次才成功,pass的三次就成功,UE带出去的auth2 request都时一样的,NW先返回鉴权失败过一会再成功,怀疑和当地网络问题,因为在handover时在wifi 上建ims pdn失败,但是重试后会有概率成功,所以比对比机慢,不过对比机的log中只看到一次handover.
【MTK】UE——IPsec tunnel——EPDG——PMIPV6 or GTP tunnel——PDN-GW——CN,现在fail在建ipsec tunnel的地方,做ike_auth2时网络有时候会回复失败有时候会成功,这个与网络信号好坏无关,应该是与网络的处理有关

7.DUT don’t support important Features / Featuregroupindicators are set wrong in DUT

Expected:

  1. FGI bits 1 - 32 are set according to the UE feature implementation. This could be either 0 or 1.
  2. The FGI bit pattern shall be documented for further testing and information exchange.

Actual:
FGI Bits are set as 11111111 11001111 11111110 10111010
Expected Bits for rel11 devices are as
x1111111 11xx1111 1111x11x 1x1111xx
Bit 30 is set to ‘0’.
从这个客户提供的QC2764_FGI_Bit-issue.txt 文件中可以看出,30为是不被支持的

featureGroupIndicators: ffcffeba [bit length 32, 1111 1111  1100 1111  1111 1110  1011 1010 decimal value 4291821242]
                                                   ..........省略
                                                    ..1. .... = Indicator 27: EUTRA RRC_CONNECTED to UTRA CELL_DCH CS handover - Supported
                                                    ...1 .... = Indicator 28: TTI bundling - Supported
                                                    .... 1... = Indicator 29: Semi-Persistent Scheduling - Supported
                                                    .... .0.. = Indicator 30: Handover between FDD and TDD - Not supported
                                                    .... ..1. = Indicator 31: Mechanisms defined for cells broadcasting multi band information - Supported
                                                    .... ...0 = Indicator 32: Undefined - Not supported

如果只更改bit 30可以用下面两行替代,贵司可以抓取开机log查看UEcapability对应bit位是否生效(FAQ17819)
需要enable FGI bit请参考以下方法sbp_nvram_errc_config.c修改此文件中的

nvram_custom_config_errc_para()
kal_bool nvram_custom_config_errc_para(sbp_reconfig_custom_param_struct *param_ptr)
{
...
else if (sbp_id == 8) // for TMO-US  ----->在对应Vodafone的SBP id下修改
pEutra_cap_csfb->feature_group_ind_fdd |= (ERRC_FGI_30) //只修改对应值的30位
pEutra_cap_csfb->feature_group_ind_tdd |= (ERRC_FGI_30)
}

需要enable FGI bit 的所有值,可以参考下面方法:
pEutra_cap_csfb->feature_group_ind_fdd = 0x2F8FF6BC; // set FGI(具体值按照贵司需要的值replace)
pEutra_cap_csfb->feature_group_ind_tdd = 0x2F8FF6BC;

需要enable某个bit位是不能修改此文件的custom_eas_config.c,因为这个文件是用来customize which FGI is to
be off in which PLMN(cannot configure which FGI need to
open, since we have set all supported FGI as base, we just allow customer to
close)
查看FGI bits有以下两种方法:
通过ELT去解析空口消息UECapabilityInformation
通过Meta Tool去读取FGI Bits

Conference Call分为两种:
Three-Party Call
Call Waiting
两者是以第二通Call做区分的:
如果第二通Call是MO,也就是主动发起的Call,那么这种情况就是Three-Party Call。
如果第二通Call是MT,也就是接通一通来电,这种情况就属于Call Waiting。
对于Three-Party Call来说,在第二通call接通后,通话界面上只允许做Merge操作,而不允许做Swap操作(Spec规定),也不可以单独断掉任何一方。Merge之后,通话三方彼此可以听到任意一方的通话内容。如果按界面上的END,会挂掉所有电话。
注意:如果第二通call接通后,不做Merge的话,第一通call是无法切为Active,一直为Hold状态,因为这种情况下没有Swap功能。
对于Call Waiting,当接通来电后,只可以进行swap,也就是active call和hold call状态互相切换,而不可以做Merge操作,同样也不可以单独断掉任何一方。当按界面上的END,同样会挂掉所有电话

modem文件:customer_cm_retry_count.c
retry次数:MAX_CM_RETRY_COUNT
retry时间间隔:CM_RETRY_TIMER
要减少retry此时,直接改 MAX_CM_RETRY_COUNT为0或者1就好了

<think>好的,我现在需要帮助用户了解关于config_device_volte_available这个Android配置项的用途和使用方法。根据用户提供的引用资料,我需要先整理这些信息,然后结合系统级指令来生成合适的回答。 首先,查看引用[1],其中提到config_device_volte_available属于device config key,用于指定设备是否支持运营商的VoLTE功能。而carrier_volte_available_bool是available config key,决定运营商是否启用VoLTE。这两个配置项需要同时为true,isVolteEnabledByPlatform()才会返回true。这说明了这两个配置的关系和各自的作用。 接下来,引用[3]指出VoLTE和ViLTE的默认开关状态,以及如何通过运营商配置调整VoWIFI的默认值。这里的信息可以帮助解释默认行为,但用户主要关注的是config_device_volte_available,所以可能需要强调设备层面的配置。 引用[5]提到VoWifi的配置可能需要通过补丁申请,但用户的问题是关于VoLTE的,所以这部分可能不直接相关,但可以作为补充说明设备配置可能需要特定流程。 用户的问题中还提到了具体的配置项写法:bool translatable="false" name="config_device_volte_available" true。需要确认这个配置项在代码中的位置和设置方式,可能是在设备的overlay配置文件中,例如在vendor目录下的XML文件里进行设置。 此外,要确保回答符合系统级指令的要求,比如使用正确的LaTeX格式,生成相关问题,结构清晰等。需要检查是否所有数学表达式都正确使用$...$,独立公式是否用$$...$$,并且语法正确。 然后,考虑用户可能的实际需求,比如如何启用或禁用该配置,或者调试相关问题。因此,回答中需要包括配置项的用途、与其他配置的关系、设置方法以及示例代码片段。 最后,生成相关问题时要围绕该配置项可能涉及的方面,比如与其他配置的关系、调试方法、默认值的影响等。 现在需要整合这些信息,确保回答结构清晰,引用正确,并生成相关问题。同时,要使用中文,并遵守所有格式要求。</think>### 关于 `config_device_volte_available` 的用途与使用方法 #### 1. **配置项定义与作用** - **用途**:`config_device_volte_available` 是 Android 设备层级的配置项(**Device Config Key**),用于声明设备硬件和平台是否支持运营商的 VoLTE(Voice over LTE)功能[^1]。 - **逻辑关系**:它与运营商层级的 `carrier_volte_available_bool`(Available Config Key)共同决定 VoLTE 是否可用。**只有当两者均为 `true` 时**,系统函数 `isVolteEnabledByPlatform()` 才会返回 `true`,表明设备与运营商均支持 VoLTE[^1]。 #### 2. **配置项语法与设置** - **典型代码片段**: ```xml <!-- 在设备 Overlay 配置文件中(如 vendor/xxx/configs/xxx.xml) --> <bool name="config_device_volte_available" translatable="false">true</bool> ``` - `translatable="false"` 表示该配置无需国际化翻译。 - 值设为 `true` 表示设备支持 VoLTE。 #### 3. **与其他配置的关联** - **运营商配置**:若 `config_device_volte_available` 为 `true`,但运营商配置 `carrier_volte_available_bool` 为 `false`,则 VoLTE 仍不可用[^1]。 - **默认行为**:VoLTE 开关默认开启(参考 `carrier_default_volte_enabled_bool`)[^3],但实际生效需设备与运营商配置同时满足条件。 #### 4. **应用场景示例** - **设备适配**:若某设备硬件不支持 VoLTE,需将 `config_device_volte_available` 设为 `false`。 - **调试与兼容性**:通过修改此配置,可测试 VoLTE 在不同设备与运营商组合下的行为。 --- ###
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值