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

Commit 6e084181 authored by Tomasz Wasilczyk's avatar Tomasz Wasilczyk
Browse files

Implement RadioVoice for AIDL-HIDL Telephony HAL translator

Bug: 203699028
Test: Boot and grep logcat against radiocompat
Change-Id: Ie2dce95ba1a468c10d92a74bfdca03d2a8d744b0
parent 70ac7bfb
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ cc_library {
        "android.hardware.radio.messaging-V1-ndk",
        "android.hardware.radio.network-V1-ndk",
        "android.hardware.radio.sim-V1-ndk",
        "android.hardware.radio.voice-V1-ndk",
        "android.hardware.radio@1.0",
        "android.hardware.radio@1.1",
        "android.hardware.radio@1.2",
@@ -79,6 +80,10 @@ cc_library {
        "sim/RadioResponse-sim.cpp",
        "sim/RadioSim.cpp",
        "sim/structs.cpp",
        "voice/RadioIndication-voice.cpp",
        "voice/RadioResponse-voice.cpp",
        "voice/RadioVoice.cpp",
        "voice/structs.cpp",
    ],
    export_include_dirs: ["include"],
}
+0 −64
Original line number Diff line number Diff line
@@ -26,59 +26,10 @@ Return<void> RadioIndication::radioStateChanged(V1_0::RadioIndicationType type,
    return {};
}

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

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

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

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

Return<void> RadioIndication::cdmaCallWaiting(V1_0::RadioIndicationType type,
                                              const V1_0::CdmaCallWaiting& callWaitingRecord) {
    return {};
}

Return<void> RadioIndication::cdmaOtaProvisionStatus(V1_0::RadioIndicationType type,
                                                     V1_0::CdmaOtaProvisionStatus status) {
    return {};
}

Return<void> RadioIndication::cdmaInfoRec(V1_0::RadioIndicationType type,
                                          const V1_0::CdmaInformationRecords& records) {
    return {};
}

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

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

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

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

Return<void> RadioIndication::srvccStateNotify(V1_0::RadioIndicationType type,
                                               V1_0::SrvccState state) {
    return {};
}

Return<void> RadioIndication::hardwareConfigChanged(V1_0::RadioIndicationType type,
                                                    const hidl_vec<V1_0::HardwareConfig>& configs) {
    return {};
@@ -89,24 +40,9 @@ Return<void> RadioIndication::radioCapabilityIndication(V1_0::RadioIndicationTyp
    return {};
}

Return<void> RadioIndication::onSupplementaryServiceIndication(V1_0::RadioIndicationType type,
                                                               const V1_0::StkCcUnsolSsResult& ss) {
    return {};
}

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

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

Return<void> RadioIndication::currentEmergencyNumberList(
        V1_0::RadioIndicationType type, const hidl_vec<V1_4::EmergencyNumber>& emergencyNumbers) {
    return {};
}

}  // namespace android::hardware::radio::compat
+1 −153
Original line number Diff line number Diff line
@@ -32,46 +32,7 @@ Return<void> RadioResponse::acknowledgeRequest(int32_t serial) {
    if (mMessagingCb) mMessagingCb->acknowledgeRequest(serial);
    if (mNetworkCb) mNetworkCb->acknowledgeRequest(serial);
    if (mSimCb) mSimCb->acknowledgeRequest(serial);
    return {};
}

Return<void> RadioResponse::getCurrentCallsResponse(const V1_0::RadioResponseInfo& info,
                                                    const hidl_vec<V1_0::Call>& calls) {
    return {};
}

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

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

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

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

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

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

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

Return<void> RadioResponse::getLastCallFailCauseResponse(
        const V1_0::RadioResponseInfo& info, const V1_0::LastCallFailCauseInfo& failCauseinfo) {
    if (mVoiceCb) mVoiceCb->acknowledgeRequest(serial);
    return {};
}

@@ -79,116 +40,17 @@ Return<void> RadioResponse::setRadioPowerResponse(const V1_0::RadioResponseInfo&
    return {};
}

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

Return<void> RadioResponse::getClirResponse(const V1_0::RadioResponseInfo& info, int32_t n,
                                            int32_t m) {
    return {};
}

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

Return<void> RadioResponse::getCallForwardStatusResponse(
        const V1_0::RadioResponseInfo& info, const hidl_vec<V1_0::CallForwardInfo>& callFwdInfos) {
    return {};
}

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

Return<void> RadioResponse::getCallWaitingResponse(const V1_0::RadioResponseInfo& info, bool enable,
                                                   int32_t serviceClass) {
    return {};
}

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

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

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

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

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

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

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

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

Return<void> RadioResponse::getClipResponse(const V1_0::RadioResponseInfo& info,
                                            V1_0::ClipStatus status) {
    return {};
}

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

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

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

Return<void> RadioResponse::getTTYModeResponse(const V1_0::RadioResponseInfo& info,
                                               V1_0::TtyMode mode) {
    return {};
}

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

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

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

Return<void> RadioResponse::sendBurstDtmfResponse(const V1_0::RadioResponseInfo& info) {
    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) {
    return {};
}

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

Return<void> RadioResponse::nvReadItemResponse(const V1_0::RadioResponseInfo& info,
                                               const hidl_string& result) {
    return {};
@@ -234,11 +96,6 @@ Return<void> RadioResponse::sendDeviceStateResponse(const V1_0::RadioResponseInf
    return {};
}

Return<void> RadioResponse::getCurrentCallsResponse_1_2(const V1_0::RadioResponseInfo& info,
                                                        const hidl_vec<V1_2::Call>& calls) {
    return {};
}

Return<void> RadioResponse::enableModemResponse(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -248,10 +105,6 @@ Return<void> RadioResponse::getModemStackStatusResponse(const V1_0::RadioRespons
    return {};
}

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

Return<void> RadioResponse::setRadioPowerResponse_1_5(const V1_0::RadioResponseInfo& info) {
    return {};
}
@@ -260,9 +113,4 @@ Return<void> RadioResponse::setRadioPowerResponse_1_6(const V1_6::RadioResponseI
    return {};
}

Return<void> RadioResponse::getCurrentCallsResponse_1_6(const V1_6::RadioResponseInfo& info,
                                                        const hidl_vec<V1_6::Call>& calls) {
    return {};
}

}  // namespace android::hardware::radio::compat
+4 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@
#include <aidl/android/hardware/radio/messaging/IRadioMessagingIndication.h>
#include <aidl/android/hardware/radio/network/IRadioNetworkIndication.h>
#include <aidl/android/hardware/radio/sim/IRadioSimIndication.h>
#include <aidl/android/hardware/radio/voice/IRadioVoiceIndication.h>
#include <android/hardware/radio/1.6/IRadioIndication.h>

namespace android::hardware::radio::compat {
@@ -29,6 +30,7 @@ class RadioIndication : public V1_6::IRadioIndication {
            mMessagingCb;
    std::shared_ptr<::aidl::android::hardware::radio::network::IRadioNetworkIndication> mNetworkCb;
    std::shared_ptr<::aidl::android::hardware::radio::sim::IRadioSimIndication> mSimCb;
    std::shared_ptr<::aidl::android::hardware::radio::voice::IRadioVoiceIndication> mVoiceCb;

    // IRadioIndication @ 1.0
    Return<void> radioStateChanged(V1_0::RadioIndicationType type,
@@ -186,6 +188,8 @@ class RadioIndication : public V1_6::IRadioIndication {
            std::shared_ptr<::aidl::android::hardware::radio::network::IRadioNetworkIndication> ni);
    void setResponseFunction(
            std::shared_ptr<::aidl::android::hardware::radio::sim::IRadioSimIndication> simCb);
    void setResponseFunction(
            std::shared_ptr<::aidl::android::hardware::radio::voice::IRadioVoiceIndication> voicCb);
};

}  // namespace android::hardware::radio::compat
+4 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@
#include <aidl/android/hardware/radio/messaging/IRadioMessagingResponse.h>
#include <aidl/android/hardware/radio/network/IRadioNetworkResponse.h>
#include <aidl/android/hardware/radio/sim/IRadioSimResponse.h>
#include <aidl/android/hardware/radio/voice/IRadioVoiceResponse.h>
#include <android/hardware/radio/1.6/IRadioResponse.h>

namespace android::hardware::radio::compat {
@@ -29,6 +30,7 @@ class RadioResponse : public V1_6::IRadioResponse {
            mMessagingCb;
    std::shared_ptr<::aidl::android::hardware::radio::network::IRadioNetworkResponse> mNetworkCb;
    std::shared_ptr<::aidl::android::hardware::radio::sim::IRadioSimResponse> mSimCb;
    std::shared_ptr<::aidl::android::hardware::radio::voice::IRadioVoiceResponse> mVoiceCb;

    // IRadioResponse @ 1.0
    Return<void> getIccCardStatusResponse(const V1_0::RadioResponseInfo& info,
@@ -414,6 +416,8 @@ class RadioResponse : public V1_6::IRadioResponse {
            std::shared_ptr<::aidl::android::hardware::radio::network::IRadioNetworkResponse> nwCb);
    void setResponseFunction(
            std::shared_ptr<::aidl::android::hardware::radio::sim::IRadioSimResponse> simCb);
    void setResponseFunction(
            std::shared_ptr<::aidl::android::hardware::radio::voice::IRadioVoiceResponse> voiceCb);
};

}  // namespace android::hardware::radio::compat
Loading