Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7f51a9ad authored by Tomasz Wasilczyk's avatar Tomasz Wasilczyk
Browse files

Implement RadioSim for AIDL-HIDL Telephony HAL translator

Bug: 203699028
Test: Boot and grep logcat against radiocompat
Change-Id: I82d27049858e578522b83811a787b259e67d00a4
parent 9ddc87f6
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -38,6 +38,7 @@ cc_library {
        "android.hardware.radio.config@1.2",
        "android.hardware.radio.config@1.3",
        "android.hardware.radio.messaging-V1-ndk",
        "android.hardware.radio.sim-V1-ndk",
        "android.hardware.radio@1.0",
        "android.hardware.radio@1.1",
        "android.hardware.radio@1.2",
@@ -63,6 +64,10 @@ cc_library {
        "messaging/RadioMessaging.cpp",
        "messaging/RadioResponse-messaging.cpp",
        "messaging/structs.cpp",
        "sim/RadioIndication-sim.cpp",
        "sim/RadioResponse-sim.cpp",
        "sim/RadioSim.cpp",
        "sim/structs.cpp",
    ],
    export_include_dirs: ["include"],
}
+0 −52
Original line number Diff line number Diff line
@@ -54,38 +54,15 @@ Return<void> RadioIndication::suppSvcNotify(V1_0::RadioIndicationType type,
    return {};
}

Return<void> RadioIndication::stkSessionEnd(V1_0::RadioIndicationType type) {
    return {};
}

Return<void> RadioIndication::stkProactiveCommand(V1_0::RadioIndicationType type,
                                                  const hidl_string& cmd) {
    return {};
}

Return<void> RadioIndication::stkEventNotify(V1_0::RadioIndicationType type,
                                             const hidl_string& cmd) {
    return {};
}

Return<void> RadioIndication::stkCallSetup(V1_0::RadioIndicationType type, int64_t timeout) {
    return {};
}

Return<void> RadioIndication::simRefresh(V1_0::RadioIndicationType type,
                                         const V1_0::SimRefreshResult& refreshResult) {
    return {};
}

Return<void> RadioIndication::callRing(V1_0::RadioIndicationType type, bool isGsm,
                                       const V1_0::CdmaSignalInfoRecord& record) {
    return {};
}

Return<void> RadioIndication::simStatusChanged(V1_0::RadioIndicationType type) {
    return {};
}

Return<void> RadioIndication::restrictedStateChanged(V1_0::RadioIndicationType type,
                                                     V1_0::PhoneRestrictedState state) {
    return {};
@@ -118,11 +95,6 @@ Return<void> RadioIndication::resendIncallMute(V1_0::RadioIndicationType type) {
    return {};
}

Return<void> RadioIndication::cdmaSubscriptionSourceChanged(
        V1_0::RadioIndicationType type, V1_0::CdmaSubscriptionSource cdmaSource) {
    return {};
}

Return<void> RadioIndication::cdmaPrlChanged(V1_0::RadioIndicationType type, int32_t version) {
    return {};
}
@@ -149,11 +121,6 @@ Return<void> RadioIndication::imsNetworkStateChanged(V1_0::RadioIndicationType t
    return {};
}

Return<void> RadioIndication::subscriptionStatusChanged(V1_0::RadioIndicationType type,
                                                        bool activate) {
    return {};
}

Return<void> RadioIndication::srvccStateNotify(V1_0::RadioIndicationType type,
                                               V1_0::SrvccState state) {
    return {};
@@ -194,10 +161,6 @@ Return<void> RadioIndication::modemReset(V1_0::RadioIndicationType type,
    return {};
}

Return<void> RadioIndication::carrierInfoForImsiEncryption(V1_0::RadioIndicationType info) {
    return {};
}

Return<void> RadioIndication::networkScanResult(V1_0::RadioIndicationType type,
                                                const V1_1::NetworkScanResult& result) {
    return {};
@@ -263,11 +226,6 @@ Return<void> RadioIndication::currentSignalStrength_1_4(
    return {};
}

Return<void> RadioIndication::uiccApplicationsEnablementChanged(V1_0::RadioIndicationType type,
                                                                bool enabled) {
    return {};
}

Return<void> RadioIndication::registrationFailed(  //
        V1_0::RadioIndicationType type, const V1_5::CellIdentity& cellIdentity,
        const hidl_string& chosenPlmn, hidl_bitfield<V1_5::Domain> domain, int32_t causeCode,
@@ -331,14 +289,4 @@ Return<void> RadioIndication::currentPhysicalChannelConfigs_1_6(
    return {};
}

Return<void> RadioIndication::simPhonebookChanged(V1_0::RadioIndicationType type) {
    return {};
}

Return<void> RadioIndication::simPhonebookRecordsReceived(
        V1_0::RadioIndicationType type, V1_6::PbReceivedStatus status,
        const hidl_vec<V1_6::PhonebookRecordInfo>& records) {
    return {};
}

}  // namespace android::hardware::radio::compat
+2 −202
Original line number Diff line number Diff line
@@ -27,42 +27,9 @@ namespace android::hardware::radio::compat {

Return<void> RadioResponse::acknowledgeRequest(int32_t serial) {
    LOG_CALL << serial;
    // TODO(b/203699028): send to correct requestor or confirm if spam is not a problem
    if (mMessagingCb) mMessagingCb->acknowledgeRequest(serial);
    return {};
}

Return<void> RadioResponse::getIccCardStatusResponse(const V1_0::RadioResponseInfo& info,
                                                     const V1_0::CardStatus& cardStatus) {
    return {};
}

Return<void> RadioResponse::supplyIccPinForAppResponse(const V1_0::RadioResponseInfo& info,
                                                       int32_t remainingRetries) {
    return {};
}

Return<void> RadioResponse::supplyIccPukForAppResponse(const V1_0::RadioResponseInfo& info,
                                                       int32_t remainingRetries) {
    return {};
}

Return<void> RadioResponse::supplyIccPin2ForAppResponse(const V1_0::RadioResponseInfo& info,
                                                        int32_t remainingRetries) {
    return {};
}

Return<void> RadioResponse::supplyIccPuk2ForAppResponse(const V1_0::RadioResponseInfo& info,
                                                        int32_t remainingRetries) {
    return {};
}

Return<void> RadioResponse::changeIccPinForAppResponse(const V1_0::RadioResponseInfo& info,
                                                       int32_t remainingRetries) {
    return {};
}

Return<void> RadioResponse::changeIccPin2ForAppResponse(const V1_0::RadioResponseInfo& info,
                                                        int32_t remainingRetries) {
    if (mSimCb) mSimCb->acknowledgeRequest(serial);
    return {};
}

@@ -80,11 +47,6 @@ Return<void> RadioResponse::dialResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::getIMSIForAppResponse(const V1_0::RadioResponseInfo& info,
                                                  const hidl_string& imsi) {
    return {};
}

Return<void> RadioResponse::hangupConnectionResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -150,11 +112,6 @@ Return<void> RadioResponse::setupDataCallResponse(const V1_0::RadioResponseInfo&
    return {};
}

Return<void> RadioResponse::iccIOForAppResponse(const V1_0::RadioResponseInfo& info,
                                                const V1_0::IccIoResult& iccIo) {
    return {};
}

Return<void> RadioResponse::getClirResponse(const V1_0::RadioResponseInfo& info, int32_t n,
                                            int32_t m) {
    return {};
@@ -190,16 +147,6 @@ Return<void> RadioResponse::deactivateDataCallResponse(const V1_0::RadioResponse
    return {};
}

Return<void> RadioResponse::getFacilityLockForAppResponse(const V1_0::RadioResponseInfo& info,
                                                          int32_t response) {
    return {};
}

Return<void> RadioResponse::setFacilityLockForAppResponse(const V1_0::RadioResponseInfo& info,
                                                          int32_t retry) {
    return {};
}

Return<void> RadioResponse::setBarringPasswordResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -273,15 +220,6 @@ Return<void> RadioResponse::getAvailableBandModesResponse(
    return {};
}

Return<void> RadioResponse::sendEnvelopeResponse(const V1_0::RadioResponseInfo& info,
                                                 const hidl_string& commandResponse) {
    return {};
}

Return<void> RadioResponse::sendTerminalResponseToSimResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::handleStkCallSetupRequestFromSimResponse(
        const V1_0::RadioResponseInfo& info) {
    return {};
@@ -309,10 +247,6 @@ Return<void> RadioResponse::setLocationUpdatesResponse(const V1_0::RadioResponse
    return {};
}

Return<void> RadioResponse::setCdmaSubscriptionSourceResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::setCdmaRoamingPreferenceResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -348,12 +282,6 @@ Return<void> RadioResponse::sendBurstDtmfResponse(const V1_0::RadioResponseInfo&
    return {};
}

Return<void> RadioResponse::getCDMASubscriptionResponse(
        const V1_0::RadioResponseInfo& info, const hidl_string& mdn, const hidl_string& hSid,
        const hidl_string& hNid, const hidl_string& min, const hidl_string& prl) {
    return {};
}

Return<void> RadioResponse::getDeviceIdentityResponse(  //
        const V1_0::RadioResponseInfo& info, const hidl_string& imei, const hidl_string& imeisv,
        const hidl_string& esn, const hidl_string& meid) {
@@ -364,25 +292,6 @@ Return<void> RadioResponse::exitEmergencyCallbackModeResponse(const V1_0::RadioR
    return {};
}

Return<void> RadioResponse::reportStkServiceIsRunningResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::getCdmaSubscriptionSourceResponse(const V1_0::RadioResponseInfo& info,
                                                              V1_0::CdmaSubscriptionSource source) {
    return {};
}

Return<void> RadioResponse::requestIsimAuthenticationResponse(const V1_0::RadioResponseInfo& info,
                                                              const hidl_string& response) {
    return {};
}

Return<void> RadioResponse::sendEnvelopeWithStatusResponse(const V1_0::RadioResponseInfo& info,
                                                           const V1_0::IccIoResult& iccIo) {
    return {};
}

Return<void> RadioResponse::getVoiceRadioTechnologyResponse(const V1_0::RadioResponseInfo& info,
                                                            V1_0::RadioTechnology rat) {
    return {};
@@ -406,25 +315,6 @@ Return<void> RadioResponse::getImsRegistrationStateResponse( //
    return {};
}

Return<void> RadioResponse::iccTransmitApduBasicChannelResponse(const V1_0::RadioResponseInfo& info,
                                                                const V1_0::IccIoResult& result) {
    return {};
}

Return<void> RadioResponse::iccOpenLogicalChannelResponse(  //
        const V1_0::RadioResponseInfo& info, int32_t chanId, const hidl_vec<int8_t>& selectResp) {
    return {};
}

Return<void> RadioResponse::iccCloseLogicalChannelResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::iccTransmitApduLogicalChannelResponse(
        const V1_0::RadioResponseInfo& info, const V1_0::IccIoResult& result) {
    return {};
}

Return<void> RadioResponse::nvReadItemResponse(const V1_0::RadioResponseInfo& info,
                                               const hidl_string& result) {
    return {};
@@ -442,10 +332,6 @@ Return<void> RadioResponse::nvResetConfigResponse(const V1_0::RadioResponseInfo&
    return {};
}

Return<void> RadioResponse::setUiccSubscriptionResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::setDataAllowedResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -455,11 +341,6 @@ Return<void> RadioResponse::getHardwareConfigResponse(
    return {};
}

Return<void> RadioResponse::requestIccSimAuthenticationResponse(const V1_0::RadioResponseInfo& info,
                                                                const V1_0::IccIoResult& result) {
    return {};
}

Return<void> RadioResponse::setDataProfileResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -498,16 +379,6 @@ Return<void> RadioResponse::getModemActivityInfoResponse(
    return {};
}

Return<void> RadioResponse::setAllowedCarriersResponse(const V1_0::RadioResponseInfo& info,
                                                       int32_t numAllowed) {
    return {};
}

Return<void> RadioResponse::getAllowedCarriersResponse(  //
        const V1_0::RadioResponseInfo& info, bool allAllowed, const V1_0::CarrierRestrictions& cr) {
    return {};
}

Return<void> RadioResponse::sendDeviceStateResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -516,19 +387,6 @@ Return<void> RadioResponse::setIndicationFilterResponse(const V1_0::RadioRespons
    return {};
}

Return<void> RadioResponse::setSimCardPowerResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::setCarrierInfoForImsiEncryptionResponse(
        const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::setSimCardPowerResponse_1_1(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::startNetworkScanResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -551,11 +409,6 @@ Return<void> RadioResponse::getCellInfoListResponse_1_2(const V1_0::RadioRespons
    return {};
}

Return<void> RadioResponse::getIccCardStatusResponse_1_2(const V1_0::RadioResponseInfo& info,
                                                         const V1_2::CardStatus& cardStatus) {
    return {};
}

Return<void> RadioResponse::setSignalStrengthReportingCriteriaResponse(
        const V1_0::RadioResponseInfo& info) {
    return {};
@@ -618,11 +471,6 @@ Return<void> RadioResponse::getDataRegistrationStateResponse_1_4(
    return {};
}

Return<void> RadioResponse::getIccCardStatusResponse_1_4(const V1_0::RadioResponseInfo& info,
                                                         const V1_4::CardStatus& cardStatus) {
    return {};
}

Return<void> RadioResponse::getPreferredNetworkTypeBitmapResponse(
        const V1_0::RadioResponseInfo& info,
        hidl_bitfield<V1_4::RadioAccessFamily> networkTypeBitmap) {
@@ -645,16 +493,6 @@ Return<void> RadioResponse::setupDataCallResponse_1_4(const V1_0::RadioResponseI
    return {};
}

Return<void> RadioResponse::setAllowedCarriersResponse_1_4(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::getAllowedCarriersResponse_1_4(
        const V1_0::RadioResponseInfo& info, const V1_4::CarrierRestrictionsWithPriority& carriers,
        V1_4::SimLockMultiSimPolicy multiSimPolicy) {
    return {};
}

Return<void> RadioResponse::getSignalStrengthResponse_1_4(
        const V1_0::RadioResponseInfo& info, const V1_4::SignalStrength& signalStrength) {
    return {};
@@ -670,15 +508,6 @@ Return<void> RadioResponse::setLinkCapacityReportingCriteriaResponse_1_5(
    return {};
}

Return<void> RadioResponse::enableUiccApplicationsResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::areUiccApplicationsEnabledResponse(const V1_0::RadioResponseInfo& info,
                                                               bool enabled) {
    return {};
}

Return<void> RadioResponse::setSystemSelectionChannelsResponse_1_5(
        const V1_0::RadioResponseInfo& info) {
    return {};
@@ -741,17 +570,6 @@ Return<void> RadioResponse::setNetworkSelectionModeManualResponse_1_5(
    return {};
}

Return<void> RadioResponse::supplySimDepersonalizationResponse(const V1_0::RadioResponseInfo& info,
                                                               V1_5::PersoSubstate persoType,
                                                               int32_t remainingRetries) {
    return {};
}

Return<void> RadioResponse::getIccCardStatusResponse_1_5(const V1_0::RadioResponseInfo& info,
                                                         const V1_5::CardStatus& cardStatus) {
    return {};
}

Return<void> RadioResponse::setRadioPowerResponse_1_6(const V1_6::RadioResponseInfo& info) {
    return {};
}
@@ -767,10 +585,6 @@ Return<void> RadioResponse::getDataCallListResponse_1_6(
    return {};
}

Return<void> RadioResponse::setSimCardPowerResponse_1_6(const V1_6::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::setNrDualConnectivityStateResponse(
        const V1_6::RadioResponseInfo& info) {
    return {};
@@ -849,18 +663,4 @@ Return<void> RadioResponse::getSlicingConfigResponse(const V1_6::RadioResponseIn
    return {};
}

Return<void> RadioResponse::getSimPhonebookRecordsResponse(const V1_6::RadioResponseInfo& info) {
    return {};
}

Return<void> RadioResponse::getSimPhonebookCapacityResponse(
        const V1_6::RadioResponseInfo& info, const V1_6::PhonebookCapacity& capacity) {
    return {};
}

Return<void> RadioResponse::updateSimPhonebookRecordsResponse(const V1_6::RadioResponseInfo& info,
                                                              int32_t updatedRecordIndex) {
    return {};
}

}  // namespace android::hardware::radio::compat
+12 −0
Original line number Diff line number Diff line
@@ -28,6 +28,18 @@ V1_6::RadioResponseInfo notSupported(int32_t serial) {
    };
}

std::string toAidl(const hidl_string& str) {
    return str;
}

hidl_string toHidl(const std::string& str) {
    return str;
}

uint8_t toAidl(int8_t v) {
    return v;
}

aidl::RadioIndicationType toAidl(V1_0::RadioIndicationType type) {
    return aidl::RadioIndicationType(type);
}
+4 −0
Original line number Diff line number Diff line
@@ -23,6 +23,10 @@ namespace android::hardware::radio::compat {

V1_6::RadioResponseInfo notSupported(int32_t serial);

std::string toAidl(const hidl_string& str);
hidl_string toHidl(const std::string& str);
uint8_t toAidl(int8_t v);

aidl::android::hardware::radio::RadioIndicationType toAidl(V1_0::RadioIndicationType type);
aidl::android::hardware::radio::RadioResponseType toAidl(V1_0::RadioResponseType type);
aidl::android::hardware::radio::RadioError toAidl(V1_0::RadioError type);
Loading