// 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);
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;
}
{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},
{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},
{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},
#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
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) {
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);
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) {
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,
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) {
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);
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) {
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);
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);
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);
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);
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);
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);
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);
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,