RIL/telephony phone features not working on imx8mq-evk Android-Pie

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

RIL/telephony phone features not working on imx8mq-evk Android-Pie

5,131 Views
muhammadawais
Contributor II

 I am trying to attach a USB modem with " NXP i.MX 8MQuad Evaluation Kit (EVK)" . I have added/updated my rild service in init.rc and my rild service is able to communicate with the modem at ttyACM0 port and receive AT commands responses.
To enable phone features I have done following configurations in AOSP .

in file  [ANDROID_SOURCE]/device/fsl/imx8m/ProductConfigCommon.mk

PRODUCT_PROPERTY_OVERRIDES += \  ro.radio.noril=no     (changes from yes to no)

in file [ANDROID_SOURCE]/device/fsl/imx8m/evk_8mq/overlay/frameworks/base/core/res/res/values/config.xml

<!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
<!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
<!== [0,1,5,7,9] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI, TYPE_BLUETOOTH and TYPE_ETHERNET -->
<integer-array translatable="false" name="config_tether_upstream_types">
<item>0</item>
<item>1</item>
<item>5</item>
<item>9</item>
</integer-array>

<!-- Flag indicating whether we should enable the automatic brightness in Settings.
config_hardware_automatic_brightness_available is not set, so we will use software implementation -->
<bool name="config_automatic_brightness_available">true</bool>

<!-- An Array of "[ConnectivityManager connectionType],
[# simultaneous connection types]" -->
<string-array translatable="false" name="radioAttributes">
<item>"1,1"</item>
<item>"0,1"</item>
<item>"7,1"</item>
<item>"9,1"</item>
</string-array>


<string-array translatable="false" name="networkAttributes">
<item>"wifi,1,1,1,-1,true"</item>
<item>"mobile,0,0,0,-1,true"</item>
<item>"mobile_mms,2,0,2,60000,true"</item>
<item>"mobile_supl,3,0,2,60000,true"</item>
<item>"mobile_dun,4,0,2,60000,true"</item>
<item>"mobile_hipri,5,0,3,60000,true"</item>
<item>"mobile_fota,10,0,2,60000,true"</item>
<item>"mobile_ims,11,0,2,60000,true"</item>
<item>"mobile_cbs,12,0,2,60000,true"</item>
<item>"wifi_p2p,13,1,0,-1,true"</item>
<item>"mobile_ia,14,0,2,-1,true"</item>
<item>"mobile_emergency,15,0,2,-1,true"</item>
</string-array>

<!-- This device is not "voice capable"; it's data-only. -->
<bool name="config_voice_capable">true</bool>

changed voice capability to true.

 My rild service is running fine but there is no API from RIL of android side and my phone feature is not working. On UI its says No Sim Card.

some maybe useful radio logs are following

01-01 00:00:21.057 I/RILR    ( 3154): RIL_Init,init finish:1
01-01 00:00:21.057 D/RILD    ( 3154): RIL_Init rilInit completed
01-01 00:00:21.057 I/RILC    ( 3154): SIM_COUNT: 1
01-01 00:00:21.057 E/RILC    ( 3154): RIL_register: RIL version 12
01-01 00:00:21.057 I/RILC    ( 3154): s_registerCalled flag set, 1
01-01 00:00:21.057 D/RILC    ( 3154): registerService: starting android::hardware::radio::V1_1::IRadio slot1
01-01 00:00:21.060 I/RILC    ( 3154): RILHIDL called registerService
01-01 00:00:21.060 D/RILD    ( 3154): RIL_Init RIL_register completed
01-01 00:00:21.060 D/RILD    ( 3154): RIL_register_socket completed
01-01 00:00:21.326 I/RILR    ( 3154): RIL_onUnsolicitedResponse() - UNSOL_RESPONSE_RADIO_STATE_CHANGED
01-01 00:00:21.326 I/RILR    ( 3154): RIL_onUnsolicitedResponse() - pData is NULL! id=1000
01-01 00:00:21.326 I/RILR    ( 3154): Calling gs_pRilEnv->OnUnsolicitedResponse()... id=1000
01-01 00:00:21.327 E/RILC    ( 3154): radioStateChangedInd: radioService[0]->mRadioIndication == NULL
01-01 00:00:21.380 D/TelephonyManager( 3085): No /proc/cmdline exception=java.io.FileNotFoundException: /proc/cmdline (Permission denied)
01-01 00:00:21.380 D/TelephonyManager( 3085): /proc/cmdline=
08-02 11:38:25.328 D/TelephonyManager( 3086): No /proc/cmdline exception=java.io.FileNotFoundException: /proc/cmdline (Permission denied)
08-02 11:38:25.328 D/TelephonyManager( 3086): /proc/cmdline=
08-02 11:38:47.516 E/TelephonyManager( 3270): IMSI error: Subscriber Info is null
08-02 11:38:49.735 D/TelephonyRegistry( 3270): listen oscl: hasNotifySubscriptionInfoChangedOccurred==false no callback
08-02 11:38:49.768 D/TelephonyRegistry( 3270): listen oscl: hasNotifySubscriptionInfoChangedOccurred==false no callback
08-02 11:38:49.806 D/TelephonyRegistry( 3270): systemRunning register for intents
08-02 11:38:50.050 D/TelephonyRegistry( 3270): listen oscl: hasNotifySubscriptionInfoChangedOccurred==false no callback
08-02 11:38:50.798 W/CarrierConfigManager( 3270): Error getting config for subId -1 ICarrierConfigLoader is null
08-02 11:38:50.805 D/TelephonyRegistry( 3270): notifyCellLocationForSubscriber: subId=0 cellLocation=Bundle[{cid=-1, lac=-1, psc=-1}]
08-02 11:38:51.041 W/CarrierConfigManager( 3997): Error getting config for subId -1 ICarrierConfigLoader is null
08-02 11:38:51.069 D/TelephonyRegistry( 3270): listen oscl: hasNotifySubscriptionInfoChangedOccurred==false no callback
08-02 11:38:51.080 D/TDC     ( 4178): updateOrInsert: inserting: Modem { uuid=modem, state=0, rilModel=0, rat={}, maxActiveVoiceCall=1, maxActiveDataCall=1, maxStandby=1 }
08-02 11:38:51.081 D/TDC     ( 4178): updateOrInsert: inserting: Sim { uuid=sim, modemUuid=modem, state=0 }
08-02 11:38:51.082 D/CdmaSSM ( 4178): subscriptionSource from settings: 0
08-02 11:38:51.082 I/PhoneFactory( 4178): Cdma Subscription set to 0
08-02 11:38:51.082 I/PhoneFactory( 4178): ImsResolver: defaultImsPackage:
08-02 11:38:51.083 I/PhoneFactory( 4178): Network Mode set to 9
08-02 11:38:51.083 D/RILJ    ( 4178): RIL: init preferredNetworkType=9 cdmaSubscription=0)
08-02 11:38:51.086 E/RILJ    ( 4178): RadioProxy getService/setResponseFunctions: java.util.NoSuchElementException [SUB0]
08-02 11:38:51.086 E/RILJ    ( 4178): getRadioProxy: mRadioProxy == null [SUB0]
08-02 11:38:51.088 E/RILJ    ( 4178): RadioProxy getService/setResponseFunctions: java.util.NoSuchElementException [SUB0]
08-02 11:38:51.088 E/RILJ    ( 4178): getRadioProxy: mRadioProxy == null [SUB0]
08-02 11:38:51.089 E/RILJ    ( 4178): OemHookProxy getService/setResponseFunctions: java.util.NoSuchElementException [SUB0]
08-02 11:38:51.089 I/PhoneFactory( 4178): Creating SubscriptionController
08-02 11:38:51.091 D/SubscriptionController( 4178): [SubscriptionController] init by Context
08-02 11:38:51.094 D/UiccController( 4178): Creating UiccController
08-02 11:38:51.094 D/UiccController( 4178): config_num_physical_slots = 1
08-02 11:38:51.097 D/TelephonyTester( 4178): register for intent action=com.android.internal.telephony.action_detached
08-02 11:38:51.097 D/TelephonyTester( 4178): register for intent action=com.android.internal.telephony.action_attached
08-02 11:38:51.097 D/TelephonyTester( 4178): register for intent action=com.android.internal.telephony.TestServiceState
08-02 11:38:51.100 D/Phone   ( 4178): mDoesRilSendMultipleCallRing=true
08-02 11:38:51.100 D/Phone   ( 4178): mCallRingDelay=3000
08-02 11:38:51.105 E/RILJ    ( 4178): RadioProxy getService/setResponseFunctions: java.util.NoSuchElementException [SUB0]
08-02 11:38:51.105 E/RILJ    ( 4178): getRadioProxy: mRadioProxy == null [SUB0]
08-02 11:38:51.107 D/SmsDispatchersController( 4178): SmsDispatchersController created
08-02 11:38:51.108 I/ImsManager( 4178): Creating ImsService
08-02 11:38:51.108 W/MmTelFeatureConnection( 4178): create: binder is null! Slot Id: 0

Please help me on this. Am I missing some framework configuration or packages? Thanks

Labels (1)
0 Kudos
Reply
5 Replies

1,466 Views
BhavinJoisar
Contributor I

Hello,

any updates on this issue?

I am facing the same on Android 11 as well.

0 Kudos
Reply

4,212 Views
ching-julo
Contributor II

maybe you need to add radio for RIL:

add these code to device/fsl/imx8m/evk_8mq/manifest.xml :

<hal format="hidl">
<name>android.hardware.radio</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IRadio</name>
<instance>slot1</instance>
</interface>
<interface>
<name>ISap</name>
<instance>slot1</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.radio.deprecated</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IOemHook</name>
<instance>slot1</instance>
</interface>
</hal>

4,028 Views
prasannakulkarni
Contributor IV

Yes, This Helped Me. RIL was stopping in the beginning only without these permissions. After adding these lines. RIL progressed and got NW registered.

0 Kudos
Reply

4,211 Views
gianmaria_i
Contributor I

Hello Muhammad,

did you solved? got same problem.

thanks,

gianmaria

0 Kudos
Reply

4,211 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Muhammad Awais,

I would recommend that you look for mode information on the Android Developer forums regarding the RIL service on the AOSP.

Regards,

0 Kudos
Reply