Is libreference-ril.so from default platform package reliable and can
be used to provide phone functions in Android? Or one has to develop
vendor library?

I added GSM modem to the board via tty device but seems default RIL
library is not capable to provide phone operation. The following is
taken from radio log (by typing command: adb logcat –b radio)

I/RIL     ( 1834): Opening tty device /dev/ttyS0
I/PHONE   ( 1944): Network Mode set to 0
I/PHONE   ( 1944): Cdma Subscription set to 1
D/PHONE   ( 1944): mDoesRilSendMultipleCallRing=true
D/PHONE   ( 1944): mCallRingDelay=3000
I/RILC    ( 1834): libril: new connection
I/RILC    ( 1834): RIL Daemon version: android reference-ril 1.0
I/RILJ    ( 1944): Connected to 'rild' socket
D/RILJ    ( 1944): [UNSL]< UNSOL_RESPONSE_RADIO_STATE_CHANGED
RADIO_UNAVAILABLE
W/GSM     ( 1944): Can't open /system/etc/voicemail-conf.xml
W/GSM     ( 1944): Can't open /system/etc/spn-conf.xml
D/GSM     ( 1944): [DSAC DEB] registerForPsRestrictedEnabled
D/GSM     ( 1944): [DSAC DEB] registerForPsRestrictedDisabled
D/GSM     ( 1944): [PdpConnection] DataConnection.clearSettings()
D/RILJ    ( 1944): [0000]> RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
D/RIL     ( 1834): onRequest: <unknown request>
D/RILJ    ( 1944): [0000]< RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
error: com.android.internal.telephony.CommandException:
RADIO_NOT_AVAILABLE
D/STK     ( 1944): StkService: StkService: is running
D/STK     ( 1944): StkService: NEW sInstance


As one can see from these two lines

D/RIL     ( 1834): onRequest: <unknown request>
D/RILJ    ( 1944): [0000]< RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING
error:

libreference-ril.so doesn't recognize
RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING message.

In the source file of the library hardware/ril/reference-ril/reference-
ril.c in the method onRequest() :

    if (sState == RADIO_STATE_UNAVAILABLE
        && request != RIL_REQUEST_GET_SIM_STATUS
    ) {
        RIL_onRequestComplete(t, RIL_E_RADIO_NOT_AVAILABLE, NULL, 0);
        return;
    }

Initial value of sState is RADIO_STATE_UNAVAILABLE therefore the only
message which can be processed by the RIL as the very first message
must be RIL_REQUEST_GET_SIM_STATUS.

But in fact RILJ (com.android.phone) application sends ro RILD first
message of type RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING and throws
exception getting error code RIL_E_RADIO_NOT_AVAILABLE.

Anybody knows where can be found reliable library?

-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to