OSDN Git Service

Revert "Revert "Service side HAL changes for RIL solicited responses.""
authorAmit Mahajan <amitmahajan@google.com>
Fri, 10 Feb 2017 01:35:55 +0000 (01:35 +0000)
committerAmit Mahajan <amitmahajan@google.com>
Fri, 10 Feb 2017 01:36:31 +0000 (01:36 +0000)
This reverts commit efda5dbb8d871be95278bca2b50f6cd7d3fae440.

Bug: 32020264
Change-Id: I8bbbf650770b5da13085ed85a760af6b45d6d3db

libril/ril.cpp
libril/ril_commands.h
libril/ril_service.cpp
libril/ril_service.h

index 8acfa56..1ffff46 100644 (file)
@@ -4509,15 +4509,10 @@ RIL_onRequestAck(RIL_Token t) {
         // to hidl supported apis. They are left out as they use common functions used by
         // unsolicited commands present in other CL
         int cmdId = pRI->pCI->requestNumber;
-        if(cmdId != RIL_REQUEST_SIGNAL_STRENGTH && cmdId != RIL_REQUEST_SETUP_DATA_CALL
-                && cmdId != RIL_REQUEST_DATA_CALL_LIST && cmdId != RIL_REQUEST_OEM_HOOK_RAW
-                && cmdId != RIL_REQUEST_GET_CELL_INFO_LIST
+        if(cmdId != RIL_REQUEST_SETUP_DATA_CALL
+                && cmdId != RIL_REQUEST_OEM_HOOK_RAW
                 && cmdId != RIL_REQUEST_SET_INITIAL_ATTACH_APN
-                && cmdId != RIL_REQUEST_SET_DATA_PROFILE
-                && cmdId != RIL_REQUEST_GET_HARDWARE_CONFIG
-                && cmdId != RIL_REQUEST_GET_RADIO_CAPABILITY
-                && cmdId != RIL_REQUEST_SET_RADIO_CAPABILITY
-                && cmdId != RIL_REQUEST_PULL_LCEDATA) {
+                && cmdId != RIL_REQUEST_SET_DATA_PROFILE) {
             pthread_rwlock_t *radioServiceRwlockPtr = radio::getRadioServiceRwlock(
                     (int) socket_id);
             int rwlockRet = pthread_rwlock_rdlock(radioServiceRwlockPtr);
@@ -4591,15 +4586,10 @@ RIL_onRequestComplete(RIL_Token t, RIL_Errno e, void *response, size_t responsel
 
         bool hidlized = false;
         int cmdId = pRI->pCI->requestNumber;
-        if(cmdId != RIL_REQUEST_SIGNAL_STRENGTH && cmdId != RIL_REQUEST_SETUP_DATA_CALL
-                && cmdId != RIL_REQUEST_DATA_CALL_LIST && cmdId != RIL_REQUEST_OEM_HOOK_RAW
-                && cmdId != RIL_REQUEST_GET_CELL_INFO_LIST
+        if(cmdId != RIL_REQUEST_SETUP_DATA_CALL
+                && cmdId != RIL_REQUEST_OEM_HOOK_RAW
                 && cmdId != RIL_REQUEST_SET_INITIAL_ATTACH_APN
-                && cmdId != RIL_REQUEST_SET_DATA_PROFILE
-                && cmdId != RIL_REQUEST_GET_HARDWARE_CONFIG
-                && cmdId != RIL_REQUEST_GET_RADIO_CAPABILITY
-                && cmdId != RIL_REQUEST_SET_RADIO_CAPABILITY
-                && cmdId != RIL_REQUEST_PULL_LCEDATA) {
+                && cmdId != RIL_REQUEST_SET_DATA_PROFILE) {
             hidlized = true;
         }
 
index 69cc327..cd8035d 100644 (file)
@@ -33,7 +33,7 @@
     {RIL_REQUEST_CONFERENCE, dispatchVoid, radio::conferenceResponse},
     {RIL_REQUEST_UDUB, dispatchVoid, radio::rejectCallResponse},
     {RIL_REQUEST_LAST_CALL_FAIL_CAUSE, dispatchVoid, radio::getLastCallFailCauseResponse},
-    {RIL_REQUEST_SIGNAL_STRENGTH, dispatchVoid, responseRilSignalStrength},
+    {RIL_REQUEST_SIGNAL_STRENGTH, dispatchVoid, radio::getSignalStrengthResponse},
     {RIL_REQUEST_VOICE_REGISTRATION_STATE, dispatchVoid, radio::getVoiceRegistrationStateResponse},
     {RIL_REQUEST_DATA_REGISTRATION_STATE, dispatchVoid, radio::getDataRegistrationStateResponse},
     {RIL_REQUEST_OPERATOR, dispatchVoid, radio::getOperatorResponse},
@@ -71,7 +71,7 @@
     {RIL_REQUEST_GET_MUTE, dispatchVoid, radio::getMuteResponse},
     {RIL_REQUEST_QUERY_CLIP, dispatchVoid, radio::getClipResponse},
     {RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE, dispatchVoid, responseInts},
-    {RIL_REQUEST_DATA_CALL_LIST, dispatchVoid, responseDataCallList},
+    {RIL_REQUEST_DATA_CALL_LIST, dispatchVoid, radio::getDataCallListResponse},
     {RIL_REQUEST_RESET_RADIO, dispatchVoid, responseVoid},
     {RIL_REQUEST_OEM_HOOK_RAW, dispatchRaw, responseRaw},
     {RIL_REQUEST_OEM_HOOK_STRINGS, dispatchStrings, radio::sendOemRilRequestStringsResponse},
@@ -81,8 +81,8 @@
     {RIL_REQUEST_DELETE_SMS_ON_SIM, dispatchInts, radio::deleteSmsOnSimResponse},
     {RIL_REQUEST_SET_BAND_MODE, dispatchInts, radio::setBandModeResponse},
     {RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE, dispatchVoid, radio::getAvailableBandModesResponse},
-    {RIL_REQUEST_STK_GET_PROFILE, dispatchVoid, responseString},
-    {RIL_REQUEST_STK_SET_PROFILE, dispatchString, responseVoid},
+    {RIL_REQUEST_STK_GET_PROFILE, dispatchVoid, NULL},
+    {RIL_REQUEST_STK_SET_PROFILE, dispatchString, NULL},
     {RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND, dispatchString, radio::sendEnvelopeResponse},
     {RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE, dispatchString, radio::sendTerminalResponseToSimResponse},
     {RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM, dispatchInts, radio::handleStkCallSetupRequestFromSimResponse},
     {RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE, dispatchVoid, radio::getPreferredVoicePrivacyResponse},
     {RIL_REQUEST_CDMA_FLASH, dispatchString, radio::sendCDMAFeatureCodeResponse},
     {RIL_REQUEST_CDMA_BURST_DTMF, dispatchStrings, radio::sendBurstDtmfResponse},
-    {RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY, dispatchString, responseVoid},
+    {RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY, dispatchString, NULL},
     {RIL_REQUEST_CDMA_SEND_SMS, dispatchCdmaSms, radio::sendCdmaSmsResponse},
     {RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE, dispatchCdmaSmsAck, radio::acknowledgeLastIncomingCdmaSmsResponse},
     {RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG, dispatchVoid, radio::getGsmBroadcastConfigResponse},
     {RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU, dispatchStrings, radio::acknowledgeIncomingGsmSmsWithPduResponse},
     {RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS, dispatchString, radio::sendEnvelopeWithStatusResponse},
     {RIL_REQUEST_VOICE_RADIO_TECH, dispatchVoid, radio::getVoiceRadioTechnologyResponse},
-    {RIL_REQUEST_GET_CELL_INFO_LIST, dispatchVoid, responseCellInfoList},
+    {RIL_REQUEST_GET_CELL_INFO_LIST, dispatchVoid, radio::getCellInfoListResponse},
     {RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE, dispatchInts, radio::setCellInfoListRateResponse},
     {RIL_REQUEST_SET_INITIAL_ATTACH_APN, dispatchSetInitialAttachApn, responseVoid},
     {RIL_REQUEST_IMS_REGISTRATION_STATE, dispatchVoid, radio::getImsRegistrationStateResponse},
     {RIL_REQUEST_NV_RESET_CONFIG, dispatchInts, radio::nvResetConfigResponse},
     {RIL_REQUEST_SET_UICC_SUBSCRIPTION, dispatchUiccSubscripton, radio::setUiccSubscriptionResponse},
     {RIL_REQUEST_ALLOW_DATA, dispatchInts, radio::setDataAllowedResponse},
-    {RIL_REQUEST_GET_HARDWARE_CONFIG, dispatchVoid, responseHardwareConfig},
+    {RIL_REQUEST_GET_HARDWARE_CONFIG, dispatchVoid, radio::getHardwareConfigResponse},
     {RIL_REQUEST_SIM_AUTHENTICATION, dispatchSimAuthentication, radio::requestIccSimAuthenticationResponse},
     {RIL_REQUEST_GET_DC_RT_INFO, dispatchVoid, responseDcRtInfo},
     {RIL_REQUEST_SET_DC_RT_INFO_RATE, dispatchInts, responseVoid},
     {RIL_REQUEST_SET_DATA_PROFILE, dispatchDataProfile, responseVoid},
     {RIL_REQUEST_SHUTDOWN, dispatchVoid, radio::requestShutdownResponse},
-    {RIL_REQUEST_GET_RADIO_CAPABILITY, dispatchVoid, responseRadioCapability},
-    {RIL_REQUEST_SET_RADIO_CAPABILITY, dispatchRadioCapability, responseRadioCapability},
+    {RIL_REQUEST_GET_RADIO_CAPABILITY, dispatchVoid, radio::getRadioCapabilityResponse},
+    {RIL_REQUEST_SET_RADIO_CAPABILITY, dispatchRadioCapability, radio::setRadioCapabilityResponse},
     {RIL_REQUEST_START_LCE, dispatchInts, radio::startLceServiceResponse},
     {RIL_REQUEST_STOP_LCE, dispatchVoid, radio::stopLceServiceResponse},
-    {RIL_REQUEST_PULL_LCEDATA, dispatchVoid, responseLceData},
+    {RIL_REQUEST_PULL_LCEDATA, dispatchVoid, radio::pullLceDataResponse},
     {RIL_REQUEST_GET_ACTIVITY_INFO, dispatchVoid, radio::getModemActivityInfoResponse},
     {RIL_REQUEST_SET_CARRIER_RESTRICTIONS, dispatchCarrierRestrictions, radio::setAllowedCarriersResponse},
     {RIL_REQUEST_GET_CARRIER_RESTRICTIONS, dispatchVoid, radio::getAllowedCarriersResponse},
index d01beb0..36c1cb1 100644 (file)
@@ -66,6 +66,24 @@ static pthread_rwlock_t radioServiceRwlock4 = PTHREAD_RWLOCK_INITIALIZER;
 #endif
 #endif
 
+void convertRilHardwareConfigListToHal(void *response, size_t responseLen,
+        hidl_vec<HardwareConfig>& records);
+
+void convertRilRadioCapabilityToHal(void *response, size_t responseLen, RadioCapability& rc);
+
+void convertRilLceDataInfoToHal(void *response, size_t responseLen, LceDataInfo& lce);
+
+void convertRilSignalStrengthToHal(void *response, size_t responseLen,
+        SignalStrength& signalStrength);
+
+void convertRilDataCallToHal(RIL_Data_Call_Response_v11 *dcResponse,
+        SetupDataCallResult& dcResult);
+
+void convertRilDataCallListToHal(void *response, size_t responseLen,
+        hidl_vec<SetupDataCallResult>& dcResultList);
+
+void convertRilCellInfoListToHal(void *response, size_t responseLen, hidl_vec<CellInfo>& records);
+
 struct RadioImpl : public IRadio {
     int32_t mSlotId;
     // counter used for synchronization. It is incremented every time mRadioResponse or
@@ -2488,6 +2506,34 @@ int radio::getLastCallFailCauseResponse(android::Parcel &p, int slotId, int requ
     return 0;
 }
 
+int radio::getSignalStrengthResponse(android::Parcel &p, int slotId, int requestNumber,
+                                     int responseType, int serial, RIL_Errno e,
+                                     void *response, size_t responseLen) {
+    RLOGD("radio::getSignalStrengthResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        populateResponseInfo(responseInfo, serial, responseType, e);
+        SignalStrength signalStrength;
+        memset(&signalStrength, 0, sizeof(SignalStrength));
+        if (response == NULL || responseLen != sizeof(RIL_SignalStrength_v10)) {
+            RLOGE("radio::getSignalStrengthResponse: Invalid response");
+            if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+        } else {
+            convertRilSignalStrengthToHal(response, responseLen, signalStrength);
+        }
+
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->getSignalStrengthResponse(
+                responseInfo, signalStrength);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::getSignalStrengthResponse: radioService[%d]->mRadioResponse == NULL",
+                slotId);
+    }
+
+    return 0;
+}
+
 int radio::getVoiceRegistrationStateResponse(android::Parcel &p, int slotId, int requestNumber,
                                             int responseType, int serial, RIL_Errno e,
                                             void *response, size_t responseLen) {
@@ -2708,6 +2754,34 @@ int radio::sendSMSExpectMoreResponse(android::Parcel &p, int slotId, int request
     return 0;
 }
 
+int radio::setupDataCallResponse(android::Parcel &p, int slotId, int requestNumber,
+                                 int responseType, int serial, RIL_Errno e, void *response,
+                                 size_t responseLen) {
+    RLOGD("radio::setupDataCallResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        populateResponseInfo(responseInfo, serial, responseType, e);
+
+        SetupDataCallResult result;
+        if (response == NULL || responseLen != sizeof(RIL_Data_Call_Response_v11)) {
+            RLOGE("radio::setupDataCallResponse: Invalid response");
+            if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+            memset(&result, 0, sizeof(SetupDataCallResult));
+        } else {
+            convertRilDataCallToHal((RIL_Data_Call_Response_v11 *) response, result);
+        }
+
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->setupDataCallResponse(
+                responseInfo, result);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::setupDataCallResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
 IccIoResult responseIccIo(RadioResponseInfo& responseInfo, int serial, int responseType,
                            RIL_Errno e, void *response, size_t responseLen) {
     populateResponseInfo(responseInfo, serial, responseType, e);
@@ -3313,6 +3387,33 @@ int radio::getClipResponse(android::Parcel &p, int slotId, int requestNumber,
     return 0;
 }
 
+int radio::getDataCallListResponse(android::Parcel &p, int slotId, int requestNumber,
+                                   int responseType, int serial, RIL_Errno e,
+                                   void *response, size_t responseLen) {
+    RLOGD("radio::getDataCallListResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        populateResponseInfo(responseInfo, serial, responseType, e);
+
+        hidl_vec<SetupDataCallResult> ret;
+        if (response == NULL || responseLen % sizeof(RIL_Data_Call_Response_v11) != 0) {
+            RLOGE("radio::getDataCallListResponse: invalid response");
+            if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+        } else {
+            convertRilDataCallListToHal(response, responseLen, ret);
+        }
+
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->getDataCallListResponse(
+                responseInfo, ret);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::getDataCallListResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
 int radio::sendOemRilRequestStringsResponse(android::Parcel &p, int slotId, int requestNumber,
                                            int responseType, int serial, RIL_Errno e,
                                            void *response, size_t responseLen) {
@@ -4312,6 +4413,34 @@ int radio::getVoiceRadioTechnologyResponse(android::Parcel &p, int slotId, int r
     return 0;
 }
 
+int radio::getCellInfoListResponse(android::Parcel &p, int slotId,
+                                   int requestNumber, int responseType,
+                                   int serial, RIL_Errno e, void *response,
+                                   size_t responseLen) {
+    RLOGD("radio::getCellInfoListResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        populateResponseInfo(responseInfo, serial, responseType, e);
+
+        hidl_vec<CellInfo> ret;
+        if (response == NULL || responseLen % sizeof(RIL_CellInfo_v12) != 0) {
+            RLOGE("radio::getCellInfoListResponse: Invalid response");
+            if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+        } else {
+            convertRilCellInfoListToHal(response, responseLen, ret);
+        }
+
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->getCellInfoListResponse(
+                responseInfo, ret);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::getCellInfoListResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
 int radio::setCellInfoListRateResponse(android::Parcel &p, int slotId,
                                        int requestNumber, int responseType,
                                        int serial, RIL_Errno e, void *response,
@@ -4610,6 +4739,33 @@ int radio::setDataAllowedResponse(android::Parcel &p, int slotId, int requestNum
     return 0;
 }
 
+int radio::getHardwareConfigResponse(android::Parcel &p, int slotId, int requestNumber,
+                                     int responseType, int serial, RIL_Errno e,
+                                     void *response, size_t responseLen) {
+    RLOGD("radio::getHardwareConfigResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        populateResponseInfo(responseInfo, serial, responseType, e);
+
+        hidl_vec<HardwareConfig> result;
+        if (response == NULL || responseLen % sizeof(RIL_HardwareConfig) != 0) {
+            RLOGE("radio::hardwareConfigChangedInd: invalid response");
+            if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+        } else {
+            convertRilHardwareConfigListToHal(response, responseLen, result);
+        }
+
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->getHardwareConfigResponse(
+                responseInfo, result);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::getHardwareConfigResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
 int radio::requestIccSimAuthenticationResponse(android::Parcel &p, int slotId, int requestNumber,
                                                int responseType, int serial, RIL_Errno e,
                                                void *response, size_t responseLen) {
@@ -4668,6 +4824,59 @@ int radio::requestShutdownResponse(android::Parcel &p, int slotId, int requestNu
     return 0;
 }
 
+void responseRadioCapability(RadioResponseInfo& responseInfo, int serial,
+        int responseType, RIL_Errno e, void *response, size_t responseLen, RadioCapability& rc) {
+    populateResponseInfo(responseInfo, serial, responseType, e);
+
+    if (response == NULL || responseLen != sizeof(RadioCapability)) {
+        RLOGE("responseRadioCapability: Invalid response");
+        if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+        memset(&rc, 0, sizeof(RadioCapability));
+    } else {
+        convertRilRadioCapabilityToHal(response, responseLen, rc);
+    }
+}
+
+int radio::getRadioCapabilityResponse(android::Parcel &p, int slotId, int requestNumber,
+                                     int responseType, int serial, RIL_Errno e,
+                                     void *response, size_t responseLen) {
+    RLOGD("radio::getRadioCapabilityResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        RadioCapability result;
+        responseRadioCapability(responseInfo, serial, responseType, e, response, responseLen,
+                result);
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->getRadioCapabilityResponse(
+                responseInfo, result);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::getRadioCapabilityResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
+int radio::setRadioCapabilityResponse(android::Parcel &p, int slotId, int requestNumber,
+                                     int responseType, int serial, RIL_Errno e,
+                                     void *response, size_t responseLen) {
+    RLOGD("radio::setRadioCapabilityResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        RadioCapability result;
+        responseRadioCapability(responseInfo, serial, responseType, e, response, responseLen,
+                result);
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->setRadioCapabilityResponse(
+                responseInfo, result);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::setRadioCapabilityResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
 LceStatusInfo responseLceStatusInfo(RadioResponseInfo& responseInfo, int serial, int responseType,
                                     RIL_Errno e, void *response, size_t responseLen) {
     populateResponseInfo(responseInfo, serial, responseType, e);
@@ -4727,6 +4936,34 @@ int radio::stopLceServiceResponse(android::Parcel &p, int slotId, int requestNum
     return 0;
 }
 
+int radio::pullLceDataResponse(android::Parcel &p, int slotId, int requestNumber,
+                               int responseType, int serial, RIL_Errno e,
+                               void *response, size_t responseLen) {
+    RLOGD("radio::pullLceDataResponse: serial %d", serial);
+
+    if (radioService[slotId]->mRadioResponse != NULL) {
+        RadioResponseInfo responseInfo;
+        populateResponseInfo(responseInfo, serial, responseType, e);
+
+        LceDataInfo result;
+        if (response == NULL || responseLen != sizeof(RIL_LceDataInfo)) {
+            RLOGE("radio::pullLceDataResponse: Invalid response");
+            if (e == RIL_E_SUCCESS) responseInfo.error = RadioError::INVALID_RESPONSE;
+            memset(&result, 0, sizeof(RIL_LceDataInfo));
+        } else {
+            convertRilLceDataInfoToHal(response, responseLen, result);
+        }
+
+        Return<void> retStatus = radioService[slotId]->mRadioResponse->pullLceDataResponse(
+                responseInfo, result);
+        radioService[slotId]->checkReturnStatus(retStatus);
+    } else {
+        RLOGE("radio::pullLceDataResponse: radioService[%d]->mRadioResponse == NULL", slotId);
+    }
+
+    return 0;
+}
+
 int radio::getModemActivityInfoResponse(android::Parcel &p, int slotId, int requestNumber,
                                         int responseType, int serial, RIL_Errno e,
                                         void *response, size_t responseLen) {
index 487d789..923fb1f 100644 (file)
@@ -88,6 +88,10 @@ int getLastCallFailCauseResponse(android::Parcel &p, int slotId, int requestNumb
                                 int responseType, int serial, RIL_Errno e, void *response,
                                 size_t responselen);
 
+int getSignalStrengthResponse(android::Parcel &p, int slotId, int requestNumber,
+                              int responseType, int serial, RIL_Errno e,
+                              void *response, size_t responseLen);
+
 int getVoiceRegistrationStateResponse(android::Parcel &p, int slotId, int requestNumber,
                                      int responseType, int serial, RIL_Errno e, void *response,
                                      size_t responselen);
@@ -116,6 +120,10 @@ int sendSMSExpectMoreResponse(android::Parcel &p, int slotId, int requestNumber,
                              int responseType, int serial, RIL_Errno e, void *response,
                              size_t responselen);
 
+int setupDataCallResponse(android::Parcel &p, int slotId, int requestNumber,
+                          int responseType, int serial, RIL_Errno e, void *response,
+                          size_t responseLen);
+
 int iccIOForAppResponse(android::Parcel &p, int slotId, int requestNumber,
                        int responseType, int serial, RIL_Errno e, void *response,
                        size_t responselen);
@@ -218,6 +226,10 @@ int getClipResponse(android::Parcel &p, int slotId, int requestNumber,
                    int responseType, int serial, RIL_Errno e, void *response,
                    size_t responselen);
 
+int getDataCallListResponse(android::Parcel &p, int slotId, int requestNumber,
+                            int responseType, int serial, RIL_Errno e,
+                            void *response, size_t responseLen);
+
 int sendOemRilRequestStringsResponse(android::Parcel &p, int slotId, int requestNumber,
                                     int responseType, int serial, RIL_Errno e, void *response,
                                     size_t responselen);
@@ -402,6 +414,11 @@ int getVoiceRadioTechnologyResponse(android::Parcel &p, int slotId, int requestN
                                    int responseType, int serial, RIL_Errno e,
                                    void *response, size_t responselen);
 
+int getCellInfoListResponse(android::Parcel &p, int slotId,
+                            int requestNumber, int responseType,
+                            int serial, RIL_Errno e, void *response,
+                            size_t responseLen);
+
 int setCellInfoListRateResponse(android::Parcel &p, int slotId, int requestNumber,
                                int responseType, int serial, RIL_Errno e,
                                void *response, size_t responselen);
@@ -459,6 +476,10 @@ int setDataAllowedResponse(android::Parcel &p, int slotId, int requestNumber,
                           int responseType, int serial, RIL_Errno e,
                           void *response, size_t responselen);
 
+int getHardwareConfigResponse(android::Parcel &p, int slotId, int requestNumber,
+                              int responseType, int serial, RIL_Errno e,
+                              void *response, size_t responseLen);
+
 int requestIccSimAuthenticationResponse(android::Parcel &p, int slotId, int requestNumber,
                                        int responseType, int serial, RIL_Errno e,
                                        void *response, size_t responselen);
@@ -471,6 +492,14 @@ int requestShutdownResponse(android::Parcel &p, int slotId, int requestNumber,
                            int responseType, int serial, RIL_Errno e,
                            void *response, size_t responselen);
 
+int getRadioCapabilityResponse(android::Parcel &p, int slotId, int requestNumber,
+                               int responseType, int serial, RIL_Errno e,
+                               void *response, size_t responseLen);
+
+int setRadioCapabilityResponse(android::Parcel &p, int slotId, int requestNumber,
+                               int responseType, int serial, RIL_Errno e,
+                               void *response, size_t responseLen);
+
 int startLceServiceResponse(android::Parcel &p, int slotId, int requestNumber,
                            int responseType, int serial, RIL_Errno e,
                            void *response, size_t responselen);
@@ -479,6 +508,10 @@ int stopLceServiceResponse(android::Parcel &p, int slotId, int requestNumber,
                           int responseType, int serial, RIL_Errno e,
                           void *response, size_t responselen);
 
+int pullLceDataResponse(android::Parcel &p, int slotId, int requestNumber,
+                        int responseType, int serial, RIL_Errno e,
+                        void *response, size_t responseLen);
+
 int getModemActivityInfoResponse(android::Parcel &p, int slotId, int requestNumber,
                                 int responseType, int serial, RIL_Errno e,
                                 void *response, size_t responselen);
@@ -491,8 +524,8 @@ int getAllowedCarriersResponse(android::Parcel &p, int slotId, int requestNumber
                               int responseType, int serial, RIL_Errno e,
                               void *response, size_t responselen);
 
-
 void acknowledgeRequest(int slotId, int serial);
+
 void radioStateChangedInd(int slotId, int indicationType, RIL_RadioState radioState);
 
 int callStateChangedInd(android::Parcel &p, int slotId, int requestNumber, int indType, int token,