Remove updateTunerResources AIDL API from TunerService
Tuner Service would update the resources independently
Test: android.media.tv.tuner.cts
Bug: 178124017
Change-Id: I15add963726e3cf042fe86af8d8e398f013723bb
diff --git a/services/tuner/TunerService.cpp b/services/tuner/TunerService.cpp
index b80fd85..9624e27 100644
--- a/services/tuner/TunerService.cpp
+++ b/services/tuner/TunerService.cpp
@@ -49,7 +49,12 @@
namespace android {
-TunerService::TunerService() {}
+TunerService::TunerService() {
+ ::ndk::SpAIBinder binder(AServiceManager_waitForService("tv_tuner_resource_mgr"));
+ mTunerResourceManager = ITunerResourceManager::fromBinder(binder);
+ updateTunerResources();
+}
+
TunerService::~TunerService() {}
binder_status_t TunerService::instantiate() {
@@ -282,19 +287,15 @@
return Status::ok();
}
-Status TunerService::updateTunerResources() {
- if (!hasITuner()) {
- return Status::fromServiceSpecificError(static_cast<int32_t>(Result::UNAVAILABLE));
+void TunerService::updateTunerResources() {
+ if (!hasITuner() || mTunerResourceManager == NULL) {
+ ALOGE("Failed to updateTunerResources");
+ return;
}
- // Connect with Tuner Resource Manager.
- ::ndk::SpAIBinder binder(AServiceManager_getService("tv_tuner_resource_mgr"));
- mTunerResourceManager = ITunerResourceManager::fromBinder(binder);
-
updateFrontendResources();
updateLnbResources();
// TODO: update Demux, Descrambler.
- return Status::ok();
}
Status TunerService::getTunerHalVersion(int* _aidl_return) {
diff --git a/services/tuner/TunerService.h b/services/tuner/TunerService.h
index cc65b39..0570681 100644
--- a/services/tuner/TunerService.h
+++ b/services/tuner/TunerService.h
@@ -113,7 +113,6 @@
Status getDemuxCaps(TunerDemuxCapabilities* _aidl_return) override;
Status openDescrambler(int32_t descramblerHandle,
std::shared_ptr<ITunerDescrambler>* _aidl_return) override;
- Status updateTunerResources() override;
Status getTunerHalVersion(int* _aidl_return) override;
// TODO: create a map between resource id and handles.
@@ -131,6 +130,7 @@
private:
bool hasITuner();
bool hasITuner_1_1();
+ void updateTunerResources();
void updateFrontendResources();
void updateLnbResources();
diff --git a/services/tuner/aidl/android/media/tv/tuner/ITunerService.aidl b/services/tuner/aidl/android/media/tv/tuner/ITunerService.aidl
index f1651b9..755b152 100644
--- a/services/tuner/aidl/android/media/tv/tuner/ITunerService.aidl
+++ b/services/tuner/aidl/android/media/tv/tuner/ITunerService.aidl
@@ -97,12 +97,6 @@
ITunerDescrambler openDescrambler(in int descramblerHandle);
/**
- * Update Tuner Resources in TunerResourceManager.
- */
- // TODO: b/178124017 update TRM in TunerService independently.
- void updateTunerResources();
-
- /**
* Get an integer that carries the Tuner HIDL version. The high 16 bits are the
* major version number while the low 16 bits are the minor version. Default
* value is unknown version 0.