Merge "Upgrade the version of IRadioNetwork to V2"

This commit is contained in:
Hunsuk Choi
2022-09-21 18:43:28 +00:00
committed by Android (Google) Code Review
10 changed files with 90 additions and 5 deletions

View File

@@ -485,7 +485,7 @@
</hal>
<hal format="aidl" optional="true">
<name>android.hardware.radio.network</name>
<version>1</version>
<version>2</version>
<interface>
<name>IRadioNetwork</name>
<instance>slot1</instance>

View File

@@ -132,7 +132,7 @@ aidl_interface {
host_supported: true,
srcs: ["android/hardware/radio/network/*.aidl"],
stability: "vintf",
imports: ["android.hardware.radio"],
imports: ["android.hardware.radio-V1"],
backend: {
cpp: {
enabled: true,

View File

@@ -39,7 +39,7 @@ cc_library {
"android.hardware.radio.data-V1-ndk",
"android.hardware.radio.messaging-V1-ndk",
"android.hardware.radio.modem-V1-ndk",
"android.hardware.radio.network-V1-ndk",
"android.hardware.radio.network-V2-ndk",
"android.hardware.radio.sim-V1-ndk",
"android.hardware.radio.voice-V1-ndk",
"android.hardware.radio@1.0",

View File

@@ -90,6 +90,16 @@ class RadioNetwork : public RadioCompatBase,
::aidl::android::hardware::radio::network::UsageSetting usageSetting) override;
::ndk::ScopedAStatus getUsageSetting(int32_t serial) override;
::ndk::ScopedAStatus setEmergencyMode(
int32_t serial,
const ::aidl::android::hardware::radio::network::EmergencyMode emergencyMode) override;
::ndk::ScopedAStatus triggerEmergencyNetworkScan(
int32_t serial,
const ::aidl::android::hardware::radio::network::EmergencyNetworkScanTrigger&
scanTrigger) override;
::ndk::ScopedAStatus cancelEmergencyNetworkScan(int32_t serial) override;
::ndk::ScopedAStatus exitEmergencyMode(int32_t serial) override;
protected:
std::shared_ptr<::aidl::android::hardware::radio::network::IRadioNetworkResponse> respond();

View File

@@ -311,4 +311,33 @@ ScopedAStatus RadioNetwork::getUsageSetting(int32_t serial) {
return ok();
}
ScopedAStatus RadioNetwork::setEmergencyMode(int32_t serial, aidl::EmergencyMode) {
LOG_CALL << serial;
LOG(ERROR) << " setEmergencyMode is unsupported by HIDL HALs";
respond()->setEmergencyModeResponse(notSupported(serial), {});
return ok();
}
ScopedAStatus RadioNetwork::triggerEmergencyNetworkScan(int32_t serial,
const aidl::EmergencyNetworkScanTrigger&) {
LOG_CALL << serial;
LOG(ERROR) << " triggerEmergencyNetworkScan is unsupported by HIDL HALs";
respond()->triggerEmergencyNetworkScanResponse(notSupported(serial));
return ok();
}
ScopedAStatus RadioNetwork::cancelEmergencyNetworkScan(int32_t serial) {
LOG_CALL << serial;
LOG(ERROR) << " cancelEmergencyNetworkScan is unsupported by HIDL HALs";
respond()->cancelEmergencyNetworkScanResponse(notSupported(serial));
return ok();
}
ScopedAStatus RadioNetwork::exitEmergencyMode(int32_t serial) {
LOG_CALL << serial;
LOG(ERROR) << " exitEmergencyMode is unsupported by HIDL HALs";
respond()->exitEmergencyModeResponse(notSupported(serial));
return ok();
}
} // namespace android::hardware::radio::compat

View File

@@ -42,7 +42,7 @@ cc_binary {
"android.hardware.radio.data-V1-ndk",
"android.hardware.radio.messaging-V1-ndk",
"android.hardware.radio.modem-V1-ndk",
"android.hardware.radio.network-V1-ndk",
"android.hardware.radio.network-V2-ndk",
"android.hardware.radio.sim-V1-ndk",
"android.hardware.radio.voice-V1-ndk",
"android.hardware.radio@1.0",

View File

@@ -68,7 +68,7 @@ cc_test {
"android.hardware.radio.data-V1-ndk",
"android.hardware.radio.messaging-V1-ndk",
"android.hardware.radio.modem-V1-ndk",
"android.hardware.radio.network-V1-ndk",
"android.hardware.radio.network-V2-ndk",
"android.hardware.radio.sim-V1-ndk",
"android.hardware.radio.voice-V1-ndk",
],

View File

@@ -92,3 +92,8 @@ ndk::ScopedAStatus RadioNetworkIndication::voiceRadioTechChanged(RadioIndication
RadioTechnology /*rat*/) {
return ndk::ScopedAStatus::ok();
}
ndk::ScopedAStatus RadioNetworkIndication::emergencyNetworkScanResult(
RadioIndicationType /*type*/, const EmergencyRegResult& /*result*/) {
return ndk::ScopedAStatus::ok();
}

View File

@@ -266,3 +266,30 @@ ndk::ScopedAStatus RadioNetworkResponse::supplyNetworkDepersonalizationResponse(
parent_network.notify(info.serial);
return ndk::ScopedAStatus::ok();
}
ndk::ScopedAStatus RadioNetworkResponse::setEmergencyModeResponse(
const RadioResponseInfo& info, const EmergencyRegResult& /*regState*/) {
rspInfo = info;
parent_network.notify(info.serial);
return ndk::ScopedAStatus::ok();
}
ndk::ScopedAStatus RadioNetworkResponse::triggerEmergencyNetworkScanResponse(
const RadioResponseInfo& info) {
rspInfo = info;
parent_network.notify(info.serial);
return ndk::ScopedAStatus::ok();
}
ndk::ScopedAStatus RadioNetworkResponse::exitEmergencyModeResponse(const RadioResponseInfo& info) {
rspInfo = info;
parent_network.notify(info.serial);
return ndk::ScopedAStatus::ok();
}
ndk::ScopedAStatus RadioNetworkResponse::cancelEmergencyNetworkScanResponse(
const RadioResponseInfo& info) {
rspInfo = info;
parent_network.notify(info.serial);
return ndk::ScopedAStatus::ok();
}

View File

@@ -147,6 +147,17 @@ class RadioNetworkResponse : public BnRadioNetworkResponse {
virtual ndk::ScopedAStatus supplyNetworkDepersonalizationResponse(
const RadioResponseInfo& info, int32_t remainingRetries) override;
virtual ndk::ScopedAStatus setEmergencyModeResponse(
const RadioResponseInfo& info, const EmergencyRegResult& regState) override;
virtual ndk::ScopedAStatus triggerEmergencyNetworkScanResponse(
const RadioResponseInfo& info) override;
virtual ndk::ScopedAStatus exitEmergencyModeResponse(const RadioResponseInfo& info) override;
virtual ndk::ScopedAStatus cancelEmergencyNetworkScanResponse(
const RadioResponseInfo& info) override;
};
/* Callback class for radio network indication */
@@ -201,6 +212,9 @@ class RadioNetworkIndication : public BnRadioNetworkIndication {
virtual ndk::ScopedAStatus voiceRadioTechChanged(RadioIndicationType type,
RadioTechnology rat) override;
virtual ndk::ScopedAStatus emergencyNetworkScanResult(
RadioIndicationType type, const EmergencyRegResult& result) override;
};
// The main test class for Radio AIDL Network.